Skip to content

Instantly share code, notes, and snippets.

@tunatoksoz
Created June 26, 2010 20:55
Show Gist options
  • Save tunatoksoz/454328 to your computer and use it in GitHub Desktop.
Save tunatoksoz/454328 to your computer and use it in GitHub Desktop.
/// <summary>
/// Interface for the individual factory configuration
/// </summary>
public interface IFactoryConfiguration
{
/// <summary>
/// Sets the alias for the <see cref="ISessionFactory"/>
/// </summary>
/// <param name="alias">Alias for the factory</param>
/// <returns></returns>
IFactoryConfiguration Alias(string alias);
/// <summary>
/// Sets the id for the <see cref="ISessionFactory"/>
/// </summary>
/// <param name="id">The id of the factory</param>
/// <returns></returns>
IFactoryConfiguration Id(string id);
/// <summary>
/// Persister specific configuration for the factory.
/// </summary>
/// <returns></returns>
IFactoryConfiguration UsingConfigurationPersister(string key);
/// <summary>
/// Configuration builder for the factory
/// </summary>
/// <returns></returns>
IFactoryConfiguration UsingConfigurationBuilder<TConfigurationBuilderConfiguration, TConfigurationBuilder>(string key,
Action<TConfigurationBuilderConfiguration>
configurationBuilderConfiguration)
where TConfigurationBuilderConfiguration : IConfigurationBuilderConfiguration<TConfigurationBuilder>, new()
where TConfigurationBuilder : IConfigurationBuilder;
/// <summary>
/// Configuration builder for the factory
/// </summary>
/// <returns></returns>
IFactoryConfiguration UsingConfigurationBuilder<TConfigurationBuilderConfiguration, TConfigurationBuilder>(
Action<TConfigurationBuilderConfiguration> configurationBuilderConfiguration)
where TConfigurationBuilderConfiguration : IConfigurationBuilderConfiguration<TConfigurationBuilder>, new()
where TConfigurationBuilder : IConfigurationBuilder;
/// <summary>
/// Builds the factory configuration for the facility
/// </summary>
/// <returns></returns>
IConfiguration Build();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment