Ejemplo n.º 1
0
 CissyConfigBuilder BuildCissyConfig(IServiceCollection services, CissyConfigSource CissyConfigSource)
 {
     if (CissyConfigSource.ConfigSource == CissyConfigSourceKind.Local)
     {
         return(services.AddCissyConfig(_hostingEnvironment.IsDevelopment() ? AppRunStatus.Delelopment : AppRunStatus.PreProduction));
     }
     else
     {
         return(services.AddCissyRemoteConfig(new RemoteConfigSource()
         {
             RunStatus = _hostingEnvironment.IsDevelopment() ? AppRunStatus.Delelopment : AppRunStatus.PreProduction,
             ConfigServer = CissyConfigSource.CissyConfigServer,
             AppName = CissyConfigSource.AppName,
             Password = CissyConfigSource.Password,
             Version = CissyConfigSource.Version
         }));
     }
 }
Ejemplo n.º 2
0
 void ConfigCissyServices(CissyConfigBuilder CissyConfigBuilder, CissyConfigSource CissyConfigSource)
 {
     if (CissyConfigSource.StartPayment)
     {
         CissyConfigBuilder.AddPaymentConfig();
     }
     if (CissyConfigSource.StartMemoryCache)
     {
         CissyConfigBuilder.AddLocalMemoryCache();
     }
     if (CissyConfigSource.StartWeakCache)
     {
         CissyConfigBuilder.AddWeakCache();
     }
     if (CissyConfigSource.StartRedis)
     {
         CissyConfigBuilder.AddRedisConfig();
     }
     if (CissyConfigSource.StartSwagger)
     {
         CissyConfigBuilder.AddCissySwaggerConfig();
     }
     if (CissyConfigSource.StartElasticsearch)
     {
         CissyConfigBuilder.AddElasticsearchConfig();
     }
     if (CissyConfigSource.StartKafka)
     {
         CissyConfigBuilder.AddKafkaConfig();
     }
     if (CissyConfigSource.StartAliOSS)
     {
         CissyConfigBuilder.AddAliOSSConfig();
     }
     if (CissyConfigSource.StartHttpProxy)
     {
         CissyConfigBuilder.AddHttpProxyConfig();
     }
     if (CissyConfigSource.StartWeixinApi.IsNotNull())
     {
         CissyConfigBuilder.AddWeiXinMpApiConfig(builder =>
         {
             return(CissyConfigSource.StartWeixinApi(CissyConfigBuilder));
         });
     }
     if (CissyConfigSource.StartRateLimit.IsNotNull())
     {
         var loaderOption = CissyConfigSource.StartRateLimit(CissyConfigBuilder);
         if (loaderOption.IsNotNull())
         {
             var cache = loaderOption.GetRedisCache();
             if (cache.IsNull())
             {
                 CissyConfigBuilder.ServiceCollection.AddSingleton <IIpPolicyStore, MemoryCacheIpPolicyStore>();
                 CissyConfigBuilder.ServiceCollection.AddSingleton <IRateLimitCounterStore, MemoryCacheRateLimitCounterStore>();
                 CissyConfigBuilder.ServiceCollection.AddSingleton <IClientPolicyStore, MemoryCacheClientPolicyStore>();
             }
             else
             {
                 CissyConfigBuilder.ServiceCollection.AddSingleton <IIpPolicyStore, RedisCacheIpPolicyStore>();
                 CissyConfigBuilder.ServiceCollection.AddSingleton <IRateLimitCounterStore, RedisCacheRateLimitCounterStore>();
                 CissyConfigBuilder.ServiceCollection.AddSingleton <IClientPolicyStore, RedisCacheClientPolicyStore>();
             }
             CissyConfigBuilder.ServiceCollection.AddSingleton <IRateLimitLoader>(loaderOption);
             CissyConfigBuilder.ServiceCollection.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();
             CissyConfigBuilder.ServiceCollection.AddSingleton <IRateLimitConfiguration, RateLimitConfiguration>();
         }
     }
     if (CissyConfigSource.StartAuthentication.IsNotNull())
     {
         var option = CissyConfigSource.StartAuthentication();
         if (option.IsNotNull())
         {
             CissyConfigBuilder.AddCissyAuthentication(x =>
             {
                 x.Scheme = option.Scheme;
                 x.AuthenticationApply = option.AuthenticationApply;
                 x.AuthenticationType  = option.AuthenticationType;
             });
         }
         else
         {
             CissyConfigBuilder.AddCissyAuthentication();
         }
     }
     CissyConfigBuilder.RegisterMapper(reg =>
     {
         _RegisterDTOMap(reg);
     });
 }
Ejemplo n.º 3
0
 public abstract void _InitCissyConfig(CissyConfigSource CissyConfigSource);