Example #1
0
 public InitializationRedis(UraganoSettings uraganoSettings)
 {
     RedisOptions = (RedisOptions)uraganoSettings.CachingOptions;
 }
 public static void AddRedisCaching(this IUraganoBuilder builder, RedisOptions redisOptions)
 {
     builder.AddCaching <RedisCaching>(redisOptions);
     builder.AddStartUpTask <InitializationRedis>();
 }
 public static void AddRedisPartitionCaching(this IUraganoBuilder builder, RedisOptions redisOptions)
 {
     builder.AddCaching <RedisPartitionCaching>(redisOptions);
 }
 public static void AddRedisPartitionCaching <TPartitionPolicy>(this IUraganoBuilder builder, RedisOptions redisOptions) where TPartitionPolicy : IRedisPartitionPolicy, new()
 {
     builder.ServiceCollection.AddSingleton(typeof(IRedisPartitionPolicy), typeof(TPartitionPolicy));
     builder.AddCaching <RedisPartitionCaching>(redisOptions);
 }
 public static void AddRedisPartitionCaching <TKeyGenerator>(this IUraganoBuilder builder, RedisOptions redisOptions, Func <string, IReadOnlyList <RedisConnection>, RedisConnection> partitionPolicy = null) where TKeyGenerator : class, ICachingKeyGenerator
 {
     if (partitionPolicy != null)
     {
         builder.ServiceCollection.AddSingleton(partitionPolicy);
     }
     builder.AddCaching <RedisPartitionCaching, TKeyGenerator>(redisOptions);
     builder.ServiceCollection.AddSingleton <IConsistentHash <RedisConnection>, ConsistentHash <RedisConnection> >();
 }
 public static void AddRedisCaching <TKeyGenerator>(this IUraganoBuilder builder, RedisOptions redisOptions) where TKeyGenerator : class, ICachingKeyGenerator
 {
     builder.AddCaching <RedisCaching, TKeyGenerator>(redisOptions);
 }