protected override Domain BuildDomain(DomainConfiguration configuration)
        {
            Domain domain;

            try {
                //throw new ApplicationException("Don't validate, just recreate ;)");
                var validateConfig = configuration.Clone();
                validateConfig.UpgradeMode = DomainUpgradeMode.Validate;
                domain = Domain.Build(validateConfig);
            }
            catch (Exception ex) {
                var recreateConfig = configuration.Clone();
                recreateConfig.UpgradeMode = DomainUpgradeMode.Recreate;
                domain = base.BuildDomain(recreateConfig);
            }

            var shouldFill = false;

            using (var session = domain.OpenSession())
                using (var t = session.OpenTransaction()) {
                    var count = session.Query.All <Playlist>().Count();
                    if (count == 0)
                    {
                        shouldFill = true;
                    }
                }

            if (shouldFill)
            {
                DataBaseFiller.Fill(domain);
            }
            return(domain);
        }
Esempio n. 2
0
 protected override Domain BuildDomain(DomainConfiguration configuration)
 {
   var firstTryConfig = configuration.Clone();
   firstTryConfig.UpgradeMode = DomainUpgradeMode.Validate;
   Domain domain = null;
   try {
     //try to avoid long population
     domain = base.BuildDomain(firstTryConfig);
     ValidateTestData(domain);
     return domain;
   }
   catch (SchemaSynchronizationException exception) {
     //schemas differ
     isSchemaRecreated = true;
     domain.DisposeSafely();
   }
   catch (TestDataInvalidException) {
     // schemas are the same but data in not ok
     // create so override existing schema and publish correct data
     isSchemaRecreated = true;
     domain.DisposeSafely();
   }
   var secondTryConfig = configuration.Clone();
   secondTryConfig.UpgradeMode = DomainUpgradeMode.Recreate;
   return base.BuildDomain(secondTryConfig);
 }
Esempio n. 3
0
        public static Domain Build(DomainConfiguration configuration, bool rebuild)
        {
            if (domain == null || rebuild)
            {
                if (rebuild)
                {
                    configuration             = configuration.Clone();
                    configuration.UpgradeMode = DomainUpgradeMode.Recreate;
                }
                try
                {
                    domain = Domain.Build(configuration);
                }
                catch (Exception e)
                {
                    DumpAndThrowAllExcs(e);
                }
            }

            if (domain != null)
            {
                //domain.SessionOpen += OnSessionOpen;
            }

            return(domain);
        }
Esempio n. 4
0
        protected override Domain BuildDomain(DomainConfiguration configuration)
        {
            var firstTryConfig = configuration.Clone();

            firstTryConfig.UpgradeMode = DomainUpgradeMode.Validate;
            try {
                return(base.BuildDomain(firstTryConfig));
            }
            catch (SchemaSynchronizationException) { }
            catch (Exception) {
                throw;
            }

            var secondTryConfig = configuration.Clone();

            secondTryConfig.UpgradeMode = DomainUpgradeMode.Recreate;
            return(base.BuildDomain(secondTryConfig));
        }