public static LambdaInstance <object> ForRepositoriesUseSharpRepository(this IInitializationExpression initialization, string repositoryName = null)
        {
            initialization.Scan(scan => scan.IncludeNamespaceContainingType <IAmInRepository>());

            initialization.For(typeof(IRepository <>))
            .Use(context =>
            {
                var genericArgs = context.BuildStack.Current.RequestedType.GetGenericArguments();

                return(RepositoryFactory.GetInstance(genericArgs[0], repositoryName));
            }
                 );

            initialization.For(typeof(IRepository <,>))
            .Use(context =>
            {
                var genericArgs = context.BuildStack.Current.RequestedType.GetGenericArguments();

                return(RepositoryFactory.GetInstance(genericArgs[0], genericArgs[1], repositoryName));
            }
                 );

            return(initialization.For(typeof(ICompoundKeyRepository <, ,>))
                   .Use(context =>
            {
                var genericArgs = context.BuildStack.Current.RequestedType.GetGenericArguments();

                return RepositoryFactory.GetInstance(genericArgs[0], genericArgs[1], genericArgs[2], repositoryName);
            }
                        ));
        }
        private void ConfigureConfiguration(IInitializationExpression x)
        {
            var outputLanguage = ConfigurationManager.AppSettings["OutputLanguage"];
            switch (outputLanguage)
            {
                case "C#":
                    x.For<ICodeWriter>().Use<CSharpCodeWriter>();
                    break;
                case "VB":
                    x.For<ICodeWriter>().Use<VBCodeWriter>();
                    break;
                default:
                    throw new NotImplementedException("OutputLanguage value in config file must be one of the following: C#, VB.");
            }

            var testFramework = ConfigurationManager.AppSettings["TestFramework"];
            switch (testFramework)
            {
                case "MSTest":
                    x.For<IConfiguration>().Use<MSTestConfiguration>();
                    break;
                case "NUnit":
                    x.For<IConfiguration>().Use<NUnitConfiguration>();
                    break;
                default:
                    throw new NotImplementedException("TestFramework value in config file must be one of the following: MSTest, NUnit.");
            }
        }
 protected virtual void InitializeStructureMap(IInitializationExpression ex)
 {
     ex.ForSingletonOf<SparkViewFactory>();
     ex.For<IServiceLocator>().Use<StructureMapServiceLocator>();
     ex.For<ISparkSettings>().Use(GetSparkSettings);
     ex.For(typeof(ISparkViewRenderer<>)).Use(typeof(SparkViewRenderer<>));
 }
Ejemplo n.º 4
0
        private static void InitializeContainer(IInitializationExpression exp)
        {
            exp.For <IDbContextManager>()
            .Use <DbContextManager>();

            exp.FillAllPropertiesOfType <IDbContextManager>()
            .Use <DbContextManager>();

            exp.For(typeof(ISimpleRepository <>))
            .Use(typeof(SimpleRepository <>));

            exp.For <IAuthentication>()
            .Use <Authentication>();

            exp.FillAllPropertiesOfType <IAuthentication>()
            .Use <Authentication>();

            exp.Scan(cfg =>
            {
                cfg.AssemblyContainingType <RepositoryBase>();
                cfg.IncludeNamespaceContainingType <RepositoryBase>();
                cfg.SingleImplementationsOfInterface();
            });

            AssemblyScanner.FindValidatorsInAssemblyContaining <RegistrationModelValidation>()
            .ForEach(result => exp.For(result.InterfaceType)
                     .Singleton()
                     .Use(result.ValidatorType));
        }
Ejemplo n.º 5
0
        private void Initialize(IInitializationExpression x)
        {
            x.Scan(Scan);

            // Web.config/app settings
            x.For <ApplicationSettings>().Singleton().Use(_applicationSettings);

            // Set the 2 core types to use HTTP/Thread-based lifetimes
            x.For <IRepository>().HybridHttpOrThreadLocalScoped();
            x.For <IUserContext>().HybridHttpOrThreadLocalScoped();

            // Plugins
            x.For <IPluginFactory>().Singleton().Use <PluginFactory>();

            // Screwturn importer
            x.For <IWikiImporter>().Use <ScrewTurnImporter>();

            // Cache
            x.For <ObjectCache>().Use(new MemoryCache("Roadkill"));
            x.For <ListCache>().Singleton();
            x.For <SiteCache>().Singleton();
            x.For <PageViewModelCache>().Singleton();
            x.For <IPluginCache>().Use <SiteCache>();

            // Site sttings
            x.For <ConfigReaderWriter>().Use <FullTrustConfigReaderWriter>();

            // Security
            x.For <IAuthorizationProvider>().Use <AuthorizationProvider>();
            x.For <IActiveDirectoryProvider>().Use <ActiveDirectoryProvider>();
        }
Ejemplo n.º 6
0
 private static void AddGitChangeTypes(IInitializationExpression initializer)
 {
     initializer.InstanceOf<IGitChangedFile>().Is.OfConcreteType<Add>().WithName("A");
     initializer.InstanceOf<IGitChangedFile>().Is.OfConcreteType<Modify>().WithName("M");
     initializer.InstanceOf<IGitChangedFile>().Is.OfConcreteType<Delete>().WithName("D");
     initializer.InstanceOf<IGitChangedFile>().Is.OfConcreteType<RenameEdit>().WithName("R");
 }
        private static void InitContainer(IInitializationExpression container)
        {
            container.Scan(
                scan =>
            {
                scan.TheCallingAssembly();
                scan.WithDefaultConventions();
            });

            container.For <ISessionContainer>().Use <HttpContextSessionContainer>();
            container.For <IConfigAccessor>().Use <FileConfigAccessor>();
            container.For <ILogger>().Use <Log4NetLogger>();
            container.For <IImageGenerator>().Use <ImageGenerator>();
            container.For <IIdentity>().Use(i => HttpContext.Current.User.Identity);
            container.For <INotificationSender>().Use <AsyncNotificationSender>();
            container.For <Markdown>().Use(
                new Markdown(new MarkdownOptions {
                AutoHyperlink = true, AutoNewLines = true, EncodeProblemUrlCharacters = true
            }));

            MailConfiguration mailConfiguration = new MailConfiguration
            {
                MailFrom = ConfigurationManager.AppSettings["mail-from"],
                SmtpHost = ConfigurationManager.AppSettings["mail-smtpHost"],
                Username = ConfigurationManager.AppSettings["mail-username"],
                Password = ConfigurationManager.AppSettings["mail-password"]
            };

            container.For <MailConfiguration>().Use(m => mailConfiguration);
        }
Ejemplo n.º 8
0
 public static void ConfigureDataAccess(IInitializationExpression i, string sqlServerAddress, string username,
     string password, string database, InstanceScope sessionScope)
 {
     NHibernate.Cfg.Configuration cfg;
     ConfigureDataAccess(i, MsSqlConfiguration.MsSql2005.ConnectionString(c =>
         c.Server(sqlServerAddress).Username(username).Password(password).Database(database)),sessionScope, out cfg);
 }
Ejemplo n.º 9
0
        private static void InitializeStructureMap(IInitializationExpression ex)
        {
            ex.AddRegistry <MassTransitRegistry>();
            ex.AddRegistry <CoreRegistry>();

            _signalRRegistry = new SignalRRegistry();
            ex.AddRegistry(_signalRRegistry);
        }
Ejemplo n.º 10
0
 static void wire_up_domain(IInitializationExpression x)
 {
     x.For<IQuoteRepository>().Use<QuoteRepository>();
     //x.For<ISqlJobMetricRepository>().Use<MockupSqlJobMetricRepository>();
     x.For<ISqlJobMetricRepository>().Use<SqlJobMetricRepository>();
     //x.For<IErrorLogRepository>().Use<mockupErrorLogRepository>();
     x.For<IErrorLogRepository>().Use<ErrorLogRepository>();
 }
Ejemplo n.º 11
0
        private static void InitializeStructureMap(IInitializationExpression ex)
        {
            ex.AddRegistry<MassTransitRegistry>();
            ex.AddRegistry<CoreRegistry>();

            _signalRRegistry = new SignalRRegistry();
            ex.AddRegistry(_signalRRegistry);
        }
Ejemplo n.º 12
0
 private static void Initialize(IInitializationExpression initializer)
 {
     initializer.Scan(Initialize);
     initializer.ForRequestedType<TextWriter>().TheDefault.Is.ConstructedBy(() => Console.Out);
     initializer.InstanceOf<IGitRepository>().Is.OfConcreteType<GitRepository>();
     AddGitChangeTypes(initializer);
     DoCustomConfiguration(initializer);
 }
Ejemplo n.º 13
0
 private static void InitializeInfrastructure(IInitializationExpression e)
 {
     e.For<IMessageHandler>().Use<MessageHandler>();
     e.For<IChannelWrapper>().Use<ChannelWrapper>();
     e.For<IRuleLoader>().Use<RuleLoader>();
     e.For<IRuleEngine>().Use<RuleEngine>();
     e.For<NotificationConsumer>().Use<NotificationConsumer>();
 }
Ejemplo n.º 14
0
        /// <summary>
        /// Инициализация IoC контейнера для оракла
        /// </summary>
        /// <param name="x">Инициализатор</param>
        /// <param name="connectionString">Строка подключения</param>
        private static void InitializeStructureMapForOracleFile(IInitializationExpression x, string connectionString)
        {
            var connection = new FileConnection(connectionString);
            var strategy   = new OracleStrategy(connection);

            x.ForSingletonOf <IDbConnection>().Use(connection);
            x.ForSingletonOf <IDatabaseStrategy>().Use(strategy);
            x.ForSingletonOf <ISysDatabaseStrategy>().Use(new FileSysStrategy(new OracleSysStrategy(connection, strategy), connection));
        }
 private static void InitializeStructureMap(IInitializationExpression x)
 {
     x.Scan(y =>
     {
         y.TheCallingAssembly();
         y.WithDefaultConventions();
         y.AddAllTypesOf(typeof(IConsumer <>));
     }
            );
 }
Ejemplo n.º 16
0
 private void ConfigureStructureMap(IInitializationExpression initializer)
 {
     initializer.Scan(y =>
     {
         y.Assembly("TodayIShall.Core");
         y.WithDefaultConventions();
     });
     initializer.ForRequestedType<IAuthCookieGenerator>().TheDefaultIsConcreteType<AuthCookieGenerator>();
     initializer.AddRegistry(new MongoRegistry());
 }
Ejemplo n.º 17
0
        private static void SetScanningPolicy(IInitializationExpression x)
        {
            x.Scan(scan =>
            {
                scan.AssembliesFromApplicationBaseDirectory(
                    filter => filter.FullName.StartsWith("CleanArchitecture"));

                scan.WithDefaultConventions();
            });
        }
Ejemplo n.º 18
0
        /// <summary>
        /// Инициализация IoC контейнера для оракла
        /// </summary>
        /// <param name="x">Инициализатор</param>
        /// <param name="connectionString">Строка подключения</param>
        private static void InitializeStructureMapForOracle(IInitializationExpression x, string connectionString)
        {
            var assembly       = Assembly.Load("Oracle.DataAccess");
            var connectionType = assembly.GetType("Oracle.DataAccess.Client.OracleConnection");
            var connection     = Activator.CreateInstance(connectionType, connectionString) as IDbConnection;

            x.ForSingletonOf <IDbConnection>().Use(connection);
            x.ForSingletonOf <IDatabaseStrategy>().Use <OracleStrategy>();
            x.ForSingletonOf <ISysDatabaseStrategy>().Use <OracleSysStrategy>();
        }
Ejemplo n.º 19
0
 private static void DoCustomConfiguration(IInitializationExpression initializer)
 {
     foreach(var type in typeof(Program).Assembly.GetTypes())
     {
         foreach(ConfiguresStructureMap attribute in type.GetCustomAttributes(typeof(ConfiguresStructureMap), false))
         {
             attribute.Initialize(initializer, type);
         }
     }
 }
Ejemplo n.º 20
0
        private static void InitializeInfrastructure(IInitializationExpression e)
        {
            // Transient
            e.For<IHttpContextHandler>().Use<HttpContextHandler>();
            e.For<IChannelWrapper>().Use<ChannelWrapper>();

            // Singleton
            e.For<IMessageBusSender>().Singleton().Use<MessageBusSender>();
            e.For<IUrlBuilder>().Singleton().Use<UrlBuilder>();
            e.For<IJavaScriptTimeCalculator>().Singleton().Use<JavaScriptTimeCalculator>();
        }
Ejemplo n.º 21
0
 private static void InitializeStructureMap(IInitializationExpression x)
 {
     x.Scan(y =>
     {
         y.Assembly("ILeaf.Core");
         y.Assembly("ILeaf.Repository");
         y.Assembly("ILeaf.Service");
         //y.Assembly("Senparc.Models");
         y.WithDefaultConventions();
     });
 }
Ejemplo n.º 22
0
        private static void RegisterInterceptors(IInitializationExpression exp)
        {
            var interceptorTypes = from t in typeof(IoC).Assembly.GetTypes()
                                   where typeof(TypeInterceptor).IsAssignableFrom(t)
                                   select t;

            foreach (var type in interceptorTypes)
            {
                exp.RegisterInterceptor(Activator.CreateInstance(type) as TypeInterceptor);
            }
        }
Ejemplo n.º 23
0
        /// <summary>
        /// Configure repository for ISS
        /// </summary>
        /// <param name="initialize"></param>
        public void Configure(IInitializationExpression initialize)
        {
            AutoMapperConfiguration.Instance.Configure();

            initialize.Scan(x =>
            {
                x.Assembly("Db.Interfaces");
                x.Assembly("Db.ImplementSQL");

                x.WithDefaultConventions();
            });
        }
Ejemplo n.º 24
0
        public void Configure(IInitializationExpression initialize)
        {
            initialize.AddRegistry<CommonRegistry>();

            Db.ImplementSQL.Configuration.Instance.Configure(initialize);

            initialize.Scan(x =>
            {
                x.Assembly("Service.ContractImplement");
                x.WithDefaultConventions();
            });
        }
Ejemplo n.º 25
0
 private static void InitializeStructureMap(IInitializationExpression x)
 {
     x.Scan(y =>
     {
         y.Assembly("ShortestPath.Web");
         y.Assembly("ShortestPath.Core");
         y.With<DefaultConventionScanner>();
     }
     );
     x.AddRegistry<NHibernateRegistry>();
     x.ForRequestedType<IThreadCache>().CacheBy(InstanceScope.Hybrid).TheDefaultIsConcreteType<ThreadCache>();
 }
Ejemplo n.º 26
0
 public static void ScanMyCqrsTypes(IInitializationExpression initializationExpression)
 {
     initializationExpression.Scan(scan =>
                                   {
                                       scan.Assembly("MyCqrs");
                                       scan.TheCallingAssembly();
                                       scan.WithDefaultConventions();
                                       scan.ConnectImplementationsToTypesClosing(typeof (IViewFactory<,>));
                                       scan.ConnectImplementationsToTypesClosing(typeof (IViewFactory<>));
                                       scan.ConnectImplementationsToTypesClosing(typeof (ICommandHandler<>));
                                       scan.ConnectImplementationsToTypesClosing(typeof (IEventHandler<>));
                                   });
 }
Ejemplo n.º 27
0
        /// <summary>
        /// Initializes StructureMap to scan the assemblies and setup all the
        /// needed elements.
        /// </summary>
        /// <param name="init"></param>
        private static void InitializeStructureMap(IInitializationExpression init)
        {
            init.Scan(
                s =>
            {
                // Determine which assemblies contain types we need.
                s.AssembliesFromApplicationBaseDirectory(
                    a => a.FullName.Contains("AuthorIntrusion"));

                // List all the assemblies we need. Since most of the
                // plugins are required to register IPlugin, we can just
                // add those types.
                s.AddAllTypesOf <IPlugin>();
            });
        }
Ejemplo n.º 28
0
        /// <summary>
        /// Facilitate manual configuration of container
        /// </summary>
        /// <param name="exp"></param>
        public static void ManualStructuremapSetup(IInitializationExpression exp, string hubConnectionString, string localConnectionString)
        {
            exp.For<CokeDataContext>()
                .Use<CokeDataContext>()
                 .Ctor<string>("connectionString")
                .Is(hubConnectionString);
            exp.For<DistributrLocalContext>().Use<DistributrLocalContext>().Ctor<string>("connectionString").Is(localConnectionString);
            //exp.For<ICacheProvider>().Use(DefaultCacheProvider.GetInstance());
            exp.For<IDTOToEntityMapping>().Use<DTOToEntityMapping>();

            foreach (var item in WPFRepositoryDefaultServices.DefaultServiceList())
            {
                exp.For(item.Item1).Use(item.Item2);
            }
        }
Ejemplo n.º 29
0
        static void wire_up_database(IInitializationExpression r)
        {
            var encrypted_connection_strings = ConfigurationManager.ConnectionStrings;

            r.ForSingletonOf<ICrypto>().Use<Crypto>()
                .Ctor<String>("masterCipher").EqualToAppSetting("PassPhrase");

            r.ForSingletonOf<IConnectionStringManager>()
              .Use<ConnectionStringManager>()
              .Ctor<ConnectionStringSettingsCollection>("encryptedConnections").Is(encrypted_connection_strings)
              .Ctor<bool>("ignoreLocalSqlServer").Is(true);

            r.For<IDbConnection>().Use<SqlConnection>()
                .Ctor<string>("connectionString").Is(
                    x => x.GetInstance<IConnectionStringManager>().Find("dashboard_connection_string").ConnectionString);
        }
Ejemplo n.º 30
0
        private static void OnInitialize(IInitializationExpression x)
        {
            AddSingleton <IMainWindow, MainWindow>(x);
            AddSingleton <IMainWindowViewModel, MainWindowViewModel>(x);

            Add <IModalWindow, ModalWindow>(x);
            Add <IModalWindowViewModel, ModalWindowViewModel>(x);

            Add <IChildView, ChildView>(x);
            Add <IChildViewModel, ChildViewModel>(x);

            Add <ISecondChildView, SecondChildView>(x);
            Add <ISecondChildViewModel, SecondChildViewModel>(x);

            Add <ICustomerView, CustomerView>(x);
            Add <ICustomerViewModel, CustomerViewModel>(x);

            AddSingleton <IRepository <Customer>, CustomersRepository>(x);
            Inject <IRepository <Customer> >(x);
        }
Ejemplo n.º 31
0
        public static void ConfigureDataAccess(IInitializationExpression i, IPersistenceConfigurer databaseConfigurer, InstanceScope sessionScope, out NHibernate.Cfg.Configuration cfg)
        {
            cfg = new NHibernate.Cfg.Configuration();

            i.ForRequestedType<ISessionFactory>()
                .CacheBy(InstanceScope.Singleton)
                .TheDefault.IsThis(ConfigureNHibernate(databaseConfigurer, cfg));

            i.ForRequestedType<ISession>()
                .CacheBy(sessionScope)
                .TheDefault.Is.ConstructedBy(() =>
                                             ObjectFactory.GetInstance<ISessionFactory>
                                                 ().OpenSession());

            //More StructureMap configuration goes here:

            //i.ForRequestedType<ISomeModelRepository>()
            //    .CacheBy(InstanceScope.PerRequest)
            //    .TheDefaultIsConcreteType<SomeModelRepository>();
        }
Ejemplo n.º 32
0
        private static void InitializeStructureMap(IInitializationExpression x)
        {
            x.Scan(y =>
            {
                y.Assembly("ChuangLiTou.Core.IDal");
                y.WithDefaultConventions();
            });

            x.Scan(y =>
            {
                y.Assembly("ChuangLiTou.Core.ImplDal");
                y.WithDefaultConventions();
            });

            x.Scan(y =>
            {
                y.TheCallingAssembly();
                y.AddAllTypesOf <IController>()
                .NameBy(type => type.FullName != null ? type.FullName.ToLowerInvariant() : null);
            });
        }
Ejemplo n.º 33
0
        /// <summary>
        /// Called when [initialize].
        /// </summary>
        /// <param name="x">The x.</param>
        private static void OnInitialize(IInitializationExpression x)
        {
            ////MainWindow
            x.For <IMainWindow>().Singleton().Use <MainWindow>();
            x.For <IMainWindowViewModel>().Singleton().Use <MainWindowViewModel>();

            ////PWPMain
            x.For <IPWPMainView>().Singleton().Use <PWPMain>();
            x.For <IPWPMainViewModel>().Singleton().Use <PWPMainViewModel>();

            ////PromptOrigin
            x.For <IPromptOriginView>().Use <PromptOrigin>();
            x.For <IPromptOriginViewModel>().Use <PromptOriginViewModel>();

            ////PromptWindow
            x.For <IPromptWindow>().Use <PromptWindow>();
            x.For <IPromptWindowViewModel>().Use <PromptWindowViewModel>();

            ////Prompt
            x.For <IPromptView>().Use <Prompt>();
            x.For <IPromptViewModel>().Use <PromptViewModel>();
        }
Ejemplo n.º 34
0
        private static void OnInitialize(IInitializationExpression x)
        {
            x.For <IMainWindow>().Singleton().Use <MainWindow>();
            x.For <IMainWindowViewModel>().Singleton().Use <MainWindowViewModel>();

            x.For <ILoadDataView>().Use <LoadDataView>();
            x.For <ILoadDataViewModel>().Use <LoadDataViewModel>();

            x.For <IGetRecommendationValueView>().Use <GetRecommendationValueView>();
            x.For <IGetRecommendationValueViewModel>().Use <GetRecommendationValueViewModel>();

            x.For <IAddUserView>().Use <AddUserView>();
            x.For <IAddUserViewModel>().Use <AddUserViewModel>();

            x.For <IAddMovieView>().Use <AddMovieView>();
            x.For <IAddMovieViewModel>().Use <AddMovieViewModel>();

            x.For <IAddRatingView>().Use <AddRatingView>();
            x.For <IAddRatingViewModel>().Use <AddRatingViewModel>();

            x.For <IRecommendView>().Use <RecommendView>();
            x.For <IRecommendViewModel>().Use <RecommendViewModel>();

            x.For <IEvaluateView>().Use <EvaluateView>();
            x.For <IEvaluateViewModel>().Use <EvaluateViewModel>();

            x.For <ILoadResultsView>().Use <LoadResultsView>();
            x.For <ILoadResultsViewModel>().Use <LoadResultsViewModel>();

            x.For <IDataRepository>().Singleton().Use <InMemoryDataRepository>();
            x.Policies.SetAllProperties(y => y.OfType <IDataRepository>());

            x.For <IRecommendationsProvider>().Use <RecommendationsProvider>();

            x.For <IEvaluatorsProvider>().Singleton().Use <EvaluatorsProvider>();
        }
Ejemplo n.º 35
0
        private static void InitializeContainer(IInitializationExpression exp)
        {
            exp.For <IDbContextManager>()
            .Use <DbContextManager>();

            exp.FillAllPropertiesOfType <IDbContextManager>()
            .Use <DbContextManager>();

            exp.For(typeof(ISimpleRepository <>))
            .Use(typeof(SimpleRepository <>));

            exp.For <IAuthentication>()
            .Use <Authentication>();

            exp.FillAllPropertiesOfType <IAuthentication>()
            .Use <Authentication>();

            exp.Scan(cfg =>
            {
                cfg.AssemblyContainingType <RepositoryBase>();
                cfg.IncludeNamespaceContainingType <RepositoryBase>();
                cfg.SingleImplementationsOfInterface();
            });
        }
Ejemplo n.º 36
0
 public static void Activate(this IInitializationExpression expression, string description, Action activation)
 {
     expression.For <IActivator>().Add <LambdaActivator>()
     .Ctor <string>().Is(description)
     .Ctor <Action>().Is(activation);
 }
		protected override void InitializeContainer(IInitializationExpression initializationExpression)
		{
			base.InitializeContainer(initializationExpression);
			initializationExpression.For<IPluginContext>().HybridHttpOrThreadLocalScoped().Use<PluginContext>();
		}
 private static void InitStructureMap(IInitializationExpression x)
 {
     x.For<IFileSystem>().Use(() => TestContext.Current.FileSystemMoq.Object);
 }
Ejemplo n.º 39
0
 protected override void InitializeStructureMap(IInitializationExpression ex)
 {
 }
Ejemplo n.º 40
0
 private static void DoNothing(IInitializationExpression e)
 {
 }
 public void Initialize(IInitializationExpression initializer, Type t)
 {
     initializer.ForRequestedType(t).CacheBy(InstanceScope.Singleton).TheDefaultIsConcreteType(t);
 }
		protected virtual void InitializeContainer(IInitializationExpression initializationExpression)
		{
			initializationExpression.AddRegistry<PluginStorageWithSqlPersisterMockRegistry>();
		}
Ejemplo n.º 43
0
 // Rather have this replaced with something that returns an IContainer
 protected virtual void InitializeStructureMap(IInitializationExpression ex)
 {
     // no op, please override
 }
Ejemplo n.º 44
0
 protected override void InitializeContainer(IInitializationExpression initializationExpression)
 {
     base.InitializeContainer(initializationExpression);
     initializationExpression.For <IPluginContext>().HybridHttpOrThreadLocalScoped().Use <PluginContext>();
 }
Ejemplo n.º 45
0
        private void Initialize(IInitializationExpression x)
        {
            x.Scan(Scan);

            // Web.config/app settings
            x.For<ApplicationSettings>().Singleton().Use(_applicationSettings);

            // Set the 2 core types to use HTTP/Thread-based lifetimes
            x.For<IRepository>().HybridHttpOrThreadLocalScoped();
            x.For<IUserContext>().HybridHttpOrThreadLocalScoped();

            // Plugins
            x.For<IPluginFactory>().Singleton().Use<PluginFactory>();

            // Screwturn importer
            x.For<IWikiImporter>().Use<ScrewTurnImporter>();

            // Cache
            x.For<ObjectCache>().Use(new MemoryCache("Roadkill"));
            x.For<ListCache>().Singleton();
            x.For<SiteCache>().Singleton();
            x.For<PageViewModelCache>().Singleton();
            x.For<IPluginCache>().Use<SiteCache>();

            // Site sttings
            x.For<ConfigReaderWriter>().Use<FullTrustConfigReaderWriter>();

            // Security
            x.For<IAuthorizationProvider>().Use<AuthorizationProvider>();

            #if !MONO
            x.For<IActiveDirectoryProvider>().Use<ActiveDirectoryProvider>();
            #endif
        }
Ejemplo n.º 46
0
 /// <summary>
 /// Инициализация IoC контейнера для оракла
 /// </summary>
 /// <param name="x">Инициализатор</param>
 /// <param name="connectionString">Строка подключения</param>
 private static void InitializeStructureMapForOracleFile(IInitializationExpression x, string connectionString)
 {
     var connection = new FileConnection(connectionString);
     var strategy = new OracleStrategy(connection);
     x.ForSingletonOf<IDbConnection>().Use(connection);
     x.ForSingletonOf<IDatabaseStrategy>().Use(strategy);
     x.ForSingletonOf<ISysDatabaseStrategy>().Use(new FileSysStrategy(new OracleSysStrategy(connection, strategy), connection));
 }
Ejemplo n.º 47
0
 /// <summary>
 /// Инициализация IoC контейнера для оракла
 /// </summary>
 /// <param name="x">Инициализатор</param>
 /// <param name="connectionString">Строка подключения</param>
 private static void InitializeStructureMapForOracle(IInitializationExpression x, string connectionString)
 {
     var assembly = Assembly.Load("Oracle.DataAccess");
     var connectionType = assembly.GetType("Oracle.DataAccess.Client.OracleConnection");
     var connection = Activator.CreateInstance(connectionType, connectionString) as IDbConnection;
     x.ForSingletonOf<IDbConnection>().Use(connection);
     x.ForSingletonOf<IDatabaseStrategy>().Use<OracleStrategy>();
     x.ForSingletonOf<ISysDatabaseStrategy>().Use<OracleSysStrategy>();
 }
Ejemplo n.º 48
0
 public static void Initialize(IInitializationExpression x)
 {
     x.For <IDataStore>().Use <TellHerDb>();
 }
Ejemplo n.º 49
0
 protected override void InitializeStructureMap(IInitializationExpression ex)
 {
     ex.For<IHttpSession>().Use<CurrentHttpContextSession>();
 }
 protected virtual void InitializeContainer(IInitializationExpression initializationExpression)
 {
     initializationExpression.AddRegistry <PluginStorageWithSqlPersisterMockRegistry>();
 }
Ejemplo n.º 51
0
 public abstract void Initialize(IInitializationExpression config);
Ejemplo n.º 52
0
 /// <summary>
 /// Инициализация IoC контейнера
 /// </summary>
 /// <param name="x">Инициализатор</param>
 /// <param name="connectionString">Строка подключения</param>
 private static void InitializeStructureMapForMssql(IInitializationExpression x, string connectionString)
 {
     x.ForSingletonOf <IDbConnection>().Use(new SqlConnection(connectionString));
     x.ForSingletonOf <IDatabaseStrategy>().Use <MsSql2008Strategy>();
     x.ForSingletonOf <ISysDatabaseStrategy>().Use <MsSql2008SysStrategy>();
 }
Ejemplo n.º 53
0
 /// <summary>
 /// Инициализация IoC контейнера
 /// </summary>
 /// <param name="x">Инициализатор</param>
 /// <param name="connectionString">Строка подключения</param>
 private static void InitializeStructureMapForMssql(IInitializationExpression x, string connectionString)
 {
     x.ForSingletonOf<IDbConnection>().Use(new SqlConnection(connectionString));
     x.ForSingletonOf<IDatabaseStrategy>().Use<MsSql2008Strategy>();
     x.ForSingletonOf<ISysDatabaseStrategy>().Use<MsSql2008SysStrategy>();
 }
Ejemplo n.º 54
0
 // Rather have this replaced with something that returns an IContainer
 protected virtual void InitializeStructureMap(IInitializationExpression ex)
 {
     // no op, please override
 }