예제 #1
0
 public static IAssimilate Eidetic(this IAssimilate assimilate, Action<EideticConfigurator> configure)
 {
     assimilate.Eidetic();
     var config = new EideticConfigurator();
     configure(config);
     assimilate.Dependencies(x => x.For<IMemcachedClientConfiguration>()
                                      .Use(config.Configuration));
     return assimilate;
 }
예제 #2
0
        public static IAssimilate Eidetic( this IAssimilate assimilate, Action<EideticConfigurator> configure )
        {
            var config = new EideticConfigurator();
            configure( config );
            assimilate.Dependencies( x => x.For<IMemcachedClientConfiguration>()
                                              .Use( config.Configuration ) );

            var clientConfig = Assimilate.GetInstanceOf<IMemcachedClientConfiguration>();
            assimilate.Dependencies(
                x => x.For<MemcachedClient>().Use( new MemcachedClient( clientConfig ) ).AsSingleton() );
            return assimilate;
        }
예제 #3
0
        public Action<DependencyConfigurator> Dependencies()
        {
            var config = new EideticConfigurator();
            Assimilate.Dependencies( x => x.For<IMemcachedClientConfiguration>()
                                              .Use( config.Configuration ) );

            return container => 
                       {
                           container.For<IMemcachedClientConfiguration>()
                               .Use<DefaultMemcachedConfiguration>();
                           container.For<IRemembrance>()
                               .Use<JsonRemembrance>();
                           container.For<IRemember>()
                               .Use<MemcachedAdapter>();
                           container.For<ICacheProvider>()
                               .Use<EideticCacheProvider>();
                       };
        }