예제 #1
0
        private static void InstallMongoDb()
        {
            var initializer = new InitializeManager();

            initializer.RegisterPrintable(SignaloBotTestParameters.MongoDbConnection
                , SignaloBotTestParameters.MongoDbConnection.ToDetailsString());

            initializer.Builder.RegisterType<ShoutExceptionLogger>().As<ICommonLogger>();
            
            initializer.Builder.RegisterType<MongoDbUserDeliveryTypeSettingsQueries>().As<IUserDeliveryTypeSettingsQueries<ObjectId>>();
            initializer.Builder.RegisterType<MongoDbUserCategorySettingsQueries>().As<IUserCategorySettingsQueries<ObjectId>>();
            initializer.Builder.RegisterType<MongoDbUserTopicSettingsQueries>().As<IUserTopicSettingsQueries<ObjectId>>();

            initializer.RegisterModules(new List<Type>()
            {
                typeof(DropMongoDbModule),
                typeof(CreateMongoDbIndexModule),
                typeof(TestDataModule<ObjectId>),
                //typeof(MongoDbLoadTestDataModule)
            });

            initializer.Initialize();
        }        
예제 #2
0
        private static void InstallSql()
        {
            var initializer = new InitializeManager();

            initializer.RegisterPrintable(SignaloBotTestParameters.SqlConnetion
                , SignaloBotTestParameters.SqlConnetion.ToDetailsString());

            initializer.Builder.RegisterType<ShoutExceptionLogger>().As<ICommonLogger>();

            initializer.Builder.RegisterType<SqlUserDeliveryTypeSettingsQueries>().As<IUserDeliveryTypeSettingsQueries<Guid>>();
            initializer.Builder.RegisterType<SqlUserCategorySettingsQueries>().As<IUserCategorySettingsQueries<Guid>>();
            initializer.Builder.RegisterType<SqlUserTopicSettingsQueries>().As<IUserTopicSettingsQueries<Guid>>();
            
            initializer.RegisterModules(new List<Type>()
            {
                typeof(DropSqlDbModule),
                typeof(CreateSqlScriptsModule),
                typeof(CreateNotificationSqlScriptsModule),
                typeof(TestDataModule<Guid>),
            });

            initializer.Initialize();

        }
        private static void RegisterParameters(InitializeManager initializer)
        {
            //data
            List<Category<ObjectId>> categories = CategoriesProvider.GetCategories();
            Category<ObjectId> manualsCategory = categories.First(p =>
                p.Permissions.Any(a => a.Key == (int)CategoryPermission.View && a.Value == IdentityUserRole.Author.ToString()));

            var admin = new UserEssentials()
            {
                ID = ObjectId.GenerateNewId(),
                Email = "*****@*****.**",
                Name = "master",
                Password = "******",
                Roles = new List<string>() { IdentityUserRole.Author.ToString(), IdentityUserRole.Moderator.ToString(), IdentityUserRole.Admin.ToString() }
            };
            var author = new UserEssentials()
            {
                ID = ObjectId.GenerateNewId(),
                Email = "*****@*****.**",
                Name = "author1",
                Password = "******",
                Roles = new List<string>() { IdentityUserRole.Author.ToString() }
            };

            var mongoConnection = MongoDbConnectionSettings.FromConfig();
            var esConnection = ESSettings.FromConfig();
            var amazonConnection = AmazonS3Settings.FromConfig();
            initializer.RegisterPrintable(mongoConnection, mongoConnection.ToDetailsString());
            initializer.RegisterPrintable(esConnection, esConnection.ToDetailsString());
            initializer.RegisterPrintable(amazonConnection, amazonConnection.ToDetailsString());

            initializer.Builder.RegisterInstance(new CategoriesSettings()
            {
                Categories = categories
            });
            initializer.Builder.RegisterInstance(new DemoContentSettings()
            {
                CreatePreviewImages = false,
                MarkAsIndexedInSearch = true,
                CategoryID = categories.First(p => p.ParentCategoryID != null).CategoryID,
                PostCount = 50,
                PostContentPath = "Content\\demo posts"
            });
            initializer.Builder.RegisterInstance(new AdminModuleSettings()
            {
                Users = new List<UserEssentials>()
                {
                    admin,
                    author
                }
            });
            initializer.Builder.RegisterInstance(new ManualsSettings()
            {
                CategoryID = manualsCategory.CategoryID,
                PostContentPath = "Content\\manual posts",
                Author = admin
            });
        }