Fix Elm extensions

This commit is contained in:
Kiran Challa 2015-03-25 15:59:30 -07:00
parent 235d06faba
commit 9cffbd171b
1 changed files with 11 additions and 12 deletions

View File

@ -10,26 +10,25 @@ namespace Microsoft.Framework.DependencyInjection
public static class ElmServiceCollectionExtensions public static class ElmServiceCollectionExtensions
{ {
/// <summary> /// <summary>
/// Registers an <see cref="ElmStore"/> and configures <see cref="ElmOptions"/>. /// Registers an <see cref="ElmStore"/> and configures default <see cref="ElmOptions"/>.
/// </summary> /// </summary>
public static IServiceCollection AddElm([NotNull] this IServiceCollection services) public static IServiceCollection AddElm([NotNull] this IServiceCollection services)
{ {
return services.AddElm(configureOptions: null); services.AddOptions();
services.AddSingleton<ElmStore>();
return services;
} }
/// <summary> /// <summary>
/// Registers an <see cref="ElmStore"/> and configures <see cref="ElmOptions"/>. /// Configures a set of <see cref="ElmOptions"/> for the application.
/// </summary> /// </summary>
public static IServiceCollection AddElm([NotNull] this IServiceCollection services, Action<ElmOptions> configureOptions) /// <param name="services">The services available in the application.</param>
/// <param name="configureOptions">The <see cref="ElmOptions"/> which need to be configured.</param>
public static void ConfigureElm(
[NotNull] this IServiceCollection services,
[NotNull] Action<ElmOptions> configureOptions)
{ {
services.AddSingleton<ElmStore>(); // registering the service so it can be injected into constructors services.Configure(configureOptions);
if (configureOptions != null)
{
services.Configure(configureOptions);
}
return services;
} }
} }
} }