public static IContainer BootstrapContainer()
 {
     return new Container(x =>
     {
         x.AddRegistry(new FastPackRegistry());
         x.For<IObjectConverter>().Use<ObjectConverter>();
         x.For(typeof(IUserService<>)).Use(typeof(UserService<>));
         x.For<IPrincipalFactory>().Use<FubuPrincipalFactory>();
         x.Scan(ctr =>
                    {
                        ctr.TheCallingAssembly();
                        ctr.AssemblyContainingType(typeof(IValidator));
                        ctr.WithDefaultConventions();
                    });
         _settings = new DatabaseSettings()
         {
             ConnectionString = "Data Source={0};Version=3;".ToFormat(FILE_NAME),
             DialectType = typeof(SQLiteDialect),
             ProxyFactory = "NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle",
             ShowSql = true,
             DriverType = typeof(SQLite20Driver)
         };
         x.For<DatabaseSettings>().Use(_settings);
         x.BootstrapNHibernate<FubuMusicStoreNHibernateRegistry>(ConfigurationBehavior.AlwaysUseNewConfiguration);
         x.UseExplicitNHibernateTransactionBoundary();
     });
 }
예제 #2
0
        public static IContainer BootstrapContainer(string fileName, bool cleanFile)
        {
            if (File.Exists(fileName) && cleanFile)
            {
                File.Delete(fileName);
            }

            _settings = new DatabaseSettings(){
                ConnectionString = "Data Source={0};Version=3;New=True;".ToFormat(fileName),
                DialectType = typeof (SQLiteDialect),
                ProxyFactory = "NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle",
                ShowSql = true,
                DriverType = typeof(SQLite20Driver)
            };

            return new Container(x =>
            {
                x.AddRegistry(new FastPackRegistry());

                x.For<DatabaseSettings>().Use(_settings);
                x.BootstrapNHibernate<FakeDomainNHIbernateRegistry>(ConfigurationBehavior.AlwaysUseNewConfiguration);
                x.UseExplicitNHibernateTransactionBoundary();

                x.FubuValidationWith(IncludePackageAssemblies.No);
            });
        }
예제 #3
0
        public static void Bootstrap()
        {
            if (_container != null) return;

            if (File.Exists(FILE_NAME))
            {
                File.Delete(FILE_NAME);
            }

            _settings = new DatabaseSettings(){
                ConnectionString = "Data Source={0};Version=3;New=True;".ToFormat(FILE_NAME),
                DialectType = typeof (SQLiteDialect),
                ProxyFactory = "NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle",
                ShowSql = true,
                DriverType = typeof(SQLite20Driver)
            };

            _container = new Container(x =>
            {
                x.For<DatabaseSettings>().Use(_settings);
                x.BootstrapNHibernate<FakeDomainNHIbernateRegistry>(ConfigurationBehavior.AlwaysUseNewConfiguration);
            });
        }
예제 #4
0
 public FakeDomainNHIbernateRegistry(DatabaseSettings settings)
 {
     SetProperties(settings.GetProperties());
     MappingsFromAssembly(typeof(Case).Assembly);
 }
예제 #5
0
 public void SetUp()
 {
     settings = new DatabaseSettings();
 }
 public FubuMusicStoreNHibernateRegistry(DatabaseSettings settings)
 {
     SetProperties(settings.GetProperties());
     MappingsFromAssembly(typeof(AlbumMap).Assembly);
 }
예제 #7
0
 public SchemaWriter(IConfigurationSource source, DatabaseSettings databaseSettings)
 {
     _source = source;
     _databaseSettings = databaseSettings;
 }
예제 #8
0
 public FakeDomainNHIbernateRegistry(DatabaseSettings settings)
 {
     SetProperties(settings.GetProperties());
     MappingFromThisAssembly();
 }
예제 #9
0
 public SchemaWriter(IConfigurationSource source, DatabaseSettings databaseSettings)
 {
     _source           = source;
     _databaseSettings = databaseSettings;
 }