Adding implementation notes to some service interfaces

--HG--
branch : dev
This commit is contained in:
Louis DeJardin
2010-04-14 15:07:12 -07:00
parent 247e077d2c
commit 1c00ffb3b6
4 changed files with 30 additions and 3 deletions

View File

@@ -1,7 +1,14 @@
using Orchard.Environment.Topology.Models;
namespace Orchard.Environment.Topology {
/// <summary>
/// Service at the host level to transform the cachable topology into the loadable topology.
/// </summary>
public interface ICompositionStrategy {
/// <summary>
/// Using information from the IExtensionManager, transforms and populates all of the
/// topology model the shell builders will need to correctly initialize a tenant IoC container.
/// </summary>
ShellTopology Compose(ShellTopologyDescriptor descriptor);
}
}

View File

@@ -1,8 +1,23 @@
using Orchard.Environment.Topology.Models;
namespace Orchard.Environment.Topology {
/// <summary>
/// Single service instance registered at the host level. Provides storage
/// and recall of topology descriptor information. Default implementation uses
/// app_data, but configured replacements could use other per-host writable location.
/// </summary>
public interface ITopologyDescriptorCache {
/// <summary>
/// Recreate the named configuration information. Used at startup.
/// Returns null on cache-miss.
/// </summary>
ShellTopologyDescriptor Fetch(string name);
/// <summary>
/// Commit named configuration to reasonable persistent storage.
/// This storage is scoped to the current-server and current-webapp.
/// Loss of storage is expected.
/// </summary>
void Store(string name, ShellTopologyDescriptor descriptor);
}
}

View File

@@ -1,7 +1,15 @@
using Orchard.Environment.Topology.Models;
namespace Orchard.Environment.Topology {
/// <summary>
/// Service resolved out of the shell container. Primarily used by host.
/// </summary>
public interface ITopologyDescriptorProvider {
/// <summary>
/// Uses shell-specific database or other resources to return
/// the current "correct" configuration. The host will use this information
/// to reinitialize the shell.
/// </summary>
ShellTopologyDescriptor GetTopologyDescriptor();
}
}

View File

@@ -408,9 +408,6 @@
<None Include="app.config" />
<None Include="ContentManagement\Diagram.cd" />
</ItemGroup>
<ItemGroup>
<Folder Include="Environment\Models\" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.