Browse Source

Bugfixes

pull/170/head
Sebastian Stehle 9 years ago
parent
commit
12330a45cb
  1. 10
      src/Squidex/Config/Domain/InfrastructureServices.cs
  2. 2
      src/Squidex/Config/Domain/StoreServices.cs
  3. 2
      src/Squidex/Config/Identity/IdentityServices.cs
  4. 15
      src/Squidex/Config/ServiceExtensions.cs

10
src/Squidex/Config/Domain/InfrastructureServices.cs

@ -12,6 +12,7 @@ using Microsoft.AspNetCore.Mvc.Infrastructure;
using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
using Newtonsoft.Json;
using NodaTime;
using Squidex.Infrastructure;
@ -100,9 +101,6 @@ namespace Squidex.Config.Domain
services.AddSingleton<ImageSharpAssetThumbnailGenerator>()
.As<IAssetThumbnailGenerator>();
services.AddSingleton<InvalidatingMemoryCache>()
.As<IMemoryCache>();
services.AddSingleton<DefaultRemoteActorChannel>()
.As<IRemoteActorChannel>();
@ -111,6 +109,12 @@ namespace Squidex.Config.Domain
services.AddSingleton<EventConsumerCleaner>();
services.AddSingleton<EventDataFormatter>();
services.AddSingleton(c => new InvalidatingMemoryCache(
new MemoryCache(
c.GetRequiredService<IOptions<MemoryCacheOptions>>()),
c.GetRequiredService<IPubSub>()))
.As<IMemoryCache>();
}
}
}

2
src/Squidex/Config/Domain/StoreServices.cs

@ -111,7 +111,7 @@ namespace Squidex.Config.Domain
.As<IAssetEventConsumer>()
.As<IExternalSystem>();
services.AddSingleton(c => new MongoAssetRepository(mongoDatabase))
services.AddSingleton(c => new MongoRuleRepository(mongoDatabase))
.As<IRuleRepository>()
.As<IEventConsumer>()
.As<IExternalSystem>();

2
src/Squidex/Config/Identity/IdentityServices.cs

@ -21,7 +21,7 @@ namespace Squidex.Config.Identity
{
var dataProtection = services.AddDataProtection().SetApplicationName("Squidex");
configuration.ConfigureByOption("identity:keyStore:type", new Options
configuration.ConfigureByOption("identity:keysStore:type", new Options
{
["Redis"] = () =>
{

15
src/Squidex/Config/ServiceExtensions.cs

@ -27,29 +27,32 @@ namespace Squidex.Config
public InterfaceRegistrator<T> As<TInterface>()
{
this.services.AddSingleton(typeof(TInterface), c => c.GetRequiredService<T>());
this.services.AddSingleton(typeof(TInterface), c =>
{
return c.GetRequiredService<T>();
});
return this;
}
}
public static InterfaceRegistrator<T> AddSingleton<T>(this IServiceCollection services, Func<IServiceProvider, T> factory)
public static InterfaceRegistrator<T> AddSingleton<T>(this IServiceCollection services, Func<IServiceProvider, T> factory) where T : class
{
services.AddSingleton(typeof(T), factory);
return new InterfaceRegistrator<T>(services);
}
public static InterfaceRegistrator<T> AddSingleton<T>(this IServiceCollection services, T instance)
public static InterfaceRegistrator<T> AddSingleton<T>(this IServiceCollection services, T instance) where T : class
{
services.AddSingleton(instance);
services.AddSingleton(typeof(T), instance);
return new InterfaceRegistrator<T>(services);
}
public static InterfaceRegistrator<T> AddSingleton<T>(this IServiceCollection services)
public static InterfaceRegistrator<T> AddSingleton<T>(this IServiceCollection services) where T : class
{
services.AddSingleton(typeof(T));
services.AddSingleton<T, T>();
return new InterfaceRegistrator<T>(services);
}

Loading…
Cancel
Save