From b198fdb2f52325c48f7953f63ae350c3d2844bb5 Mon Sep 17 00:00:00 2001 From: Sebastian Stehle Date: Sat, 11 Nov 2017 21:25:24 +0100 Subject: [PATCH] Test --- src/Squidex/Config/Orleans/OrleansModule.cs | 45 ------------------- .../Config/Orleans/OrleansMongoDbModule.cs | 42 ----------------- src/Squidex/Config/Orleans/OrleansSilo.cs | 27 ----------- src/Squidex/Config/Orleans/SiloServices.cs | 41 +++++++++++++++++ src/Squidex/Squidex.csproj | 2 + 5 files changed, 43 insertions(+), 114 deletions(-) delete mode 100644 src/Squidex/Config/Orleans/OrleansModule.cs delete mode 100644 src/Squidex/Config/Orleans/OrleansMongoDbModule.cs delete mode 100644 src/Squidex/Config/Orleans/OrleansSilo.cs create mode 100644 src/Squidex/Config/Orleans/SiloServices.cs diff --git a/src/Squidex/Config/Orleans/OrleansModule.cs b/src/Squidex/Config/Orleans/OrleansModule.cs deleted file mode 100644 index 748aebc9f..000000000 --- a/src/Squidex/Config/Orleans/OrleansModule.cs +++ /dev/null @@ -1,45 +0,0 @@ -// ========================================================================== -// OrleansModule.cs -// Squidex Headless CMS -// ========================================================================== -// Copyright (c) Squidex Group -// All rights reserved. -// ========================================================================== - -using System; -using Autofac; -using Microsoft.Extensions.Configuration; -using Squidex.Config.Domain; -using Squidex.Infrastructure; - -namespace Squidex.Config.Orleans -{ - public sealed class OrleansModule : Module - { - private IConfiguration Configuration { get; } - - public OrleansModule(IConfiguration configuration) - { - Configuration = configuration; - } - - protected override void Load(ContainerBuilder builder) - { - var storeType = Configuration.GetValue("orleans:type"); - - if (string.IsNullOrWhiteSpace(storeType)) - { - throw new ConfigurationException("Configure Orleans type with 'orleans:type'."); - } - - if (string.Equals(storeType, "MongoDB", StringComparison.OrdinalIgnoreCase)) - { - builder.RegisterModule(new StoreMongoDbModule(Configuration)); - } - else - { - throw new ConfigurationException($"Unsupported value '{storeType}' for 'stores:type', supported: MongoDb."); - } - } - } -} diff --git a/src/Squidex/Config/Orleans/OrleansMongoDbModule.cs b/src/Squidex/Config/Orleans/OrleansMongoDbModule.cs deleted file mode 100644 index 6dfb13acf..000000000 --- a/src/Squidex/Config/Orleans/OrleansMongoDbModule.cs +++ /dev/null @@ -1,42 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Autofac; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.Options; -using Orleans.Providers.MongoDB; - -namespace Squidex.Config.Orleans -{ - public sealed class OrleansMongoDbModule : Module - { - private IConfiguration Configuration { get; } - - public OrleansMongoDbModule(IConfiguration configuration) - { - Configuration = configuration; - } - - protected override void Load(ContainerBuilder builder) - { - var mongoConfig = Configuration.GetSection("orleans:mongoDb"); - - builder.RegisterInstance(Options.Create(mongoConfig.Get())) - .As>() - .SingleInstance(); - - builder.RegisterInstance(Options.Create(mongoConfig.Get())) - .As>() - .SingleInstance(); - - builder.RegisterInstance(Options.Create(mongoConfig.Get())) - .As>() - .SingleInstance(); - - builder.RegisterInstance(Options.Create(mongoConfig.Get())) - .As>() - .SingleInstance(); - } - } -} diff --git a/src/Squidex/Config/Orleans/OrleansSilo.cs b/src/Squidex/Config/Orleans/OrleansSilo.cs deleted file mode 100644 index 80720c77b..000000000 --- a/src/Squidex/Config/Orleans/OrleansSilo.cs +++ /dev/null @@ -1,27 +0,0 @@ -// ========================================================================== -// OrleansSilo.cs -// Squidex Headless CMS -// ========================================================================== -// Copyright (c) Squidex Group -// All rights reserved. -// ========================================================================== - -using Orleans.Hosting; -using System; -using System.Threading.Tasks; - -namespace Squidex.Config.Orleans -{ - public sealed class OrleansSilo - { - private readonly IServiceProvider serviceProvider; - - public Task RunAsync() - { - new SiloHostBuilder() - .ConfigureLocalHostPrimarySilo(33333) - .ConfigureSiloName("Squidex") - .UseServiceProviderFactory() - } - } -} diff --git a/src/Squidex/Config/Orleans/SiloServices.cs b/src/Squidex/Config/Orleans/SiloServices.cs new file mode 100644 index 000000000..f2c750bf6 --- /dev/null +++ b/src/Squidex/Config/Orleans/SiloServices.cs @@ -0,0 +1,41 @@ +// ========================================================================== +// SiloServices.cs +// Squidex Headless CMS +// ========================================================================== +// Copyright (c) Squidex Group +// All rights reserved. +// ========================================================================== + +using System.Collections.Generic; +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; +using Orleans; +using Orleans.Hosting; +using Orleans.Runtime.Configuration; + +namespace Squidex.Config.Orleans +{ + public static class SiloServices + { + public static IServiceCollection AddOrleans(this IServiceCollection services, IConfiguration configuration, IHostingEnvironment hostingEnvironment) + { + var properties = new Dictionary(); + + var hostBuilderContext = new HostBuilderContext(new Dictionary()) + { + Configuration = configuration + }; + + var orleansConfig = configuration.GetSection("orleans"); + + var clusterConfiguration = ClusterConfiguration.LocalhostPrimarySilo(33333); + clusterConfiguration.AddMongoDBStatisticsProvider("Default", orleansConfig); + clusterConfiguration.AddMongoDBStorageProvider("Default", orleansConfig); + + services.AddD + + return services; + } + } +} diff --git a/src/Squidex/Squidex.csproj b/src/Squidex/Squidex.csproj index eff3313f2..c99422e47 100644 --- a/src/Squidex/Squidex.csproj +++ b/src/Squidex/Squidex.csproj @@ -68,11 +68,13 @@ + +