예제 #1
0
        public void SetUp()
        {
            _settings = new Mock <IOptions <MongoDbSettings> >();
            _mokstoryTellingForImpactQuiz        = new Mock <IMongoClientHelper <StoryTellingForImpactQuiz> >();
            _mokstoryTellingForImpactQuizAttempt = new Mock <IMongoClientHelper <StoryTellingForImpactQuizAttempts> >();
            var settings = new MongoDbSettings {
                StoryTellingForImpactQuizCollection = "", StoryTellingForImpactQuizAttemptsCollection = ""
            };

            _settings.Setup(s => s.Value).Returns(settings);
        }
        public void SetUp()
        {
            _mokfeedbackClientHelper      = new Mock <IMongoClientHelper <Feedback> >();
            _mokfeedbackReplyClientHelper = new Mock <IMongoClientHelper <FeedbackReply> >();
            _settings = new Mock <IOptions <MongoDbSettings> >();
            var settings = new MongoDbSettings {
                FeedbackCollection = "", FeedbackReplyCollection = ""
            };

            _settings.Setup(s => s.Value).Returns(settings);
        }
예제 #3
0
        public void SetUp()
        {
            _settings                   = new Mock <IOptions <MongoDbSettings> >();
            _moklearningMythQuiz        = new Mock <IMongoClientHelper <LearningMythsQuiz> >();
            _moklearningMythQuizAttempt = new Mock <IMongoClientHelper <LearningMythsQuizAttempts> >();
            var settings = new MongoDbSettings {
                LearningMythsQuizCollection = "", LearningMythsQuizAttemptsCollection = ""
            };

            _settings.Setup(s => s.Value).Returns(settings);
        }
예제 #4
0
        public TestItemRepositoryTests()
        {
            var settings = new MongoDbSettings
            {
                ConnectionString = "mongodb://localhost:27017",
                DatabaseName     = "example",
            };
            var context = new MongoDbContext(settings);

            _repository = new BaseRepository <TestItem>(context);
        }
예제 #5
0
        public CsetContext(MongoDbSettings settings)
        {
            _settings = settings;
            var clientSettings = MongoClientSettings.FromUrl(new MongoUrl(_settings.ConnectionString));

            _client = new MongoClient(clientSettings);
            if (_client != null)
            {
                _database = _client.GetDatabase(_settings.DatabaseName);
            }
        }
예제 #6
0
        public AnalysisToolContext(MongoDbSettings settings)
        {
            //var databaseName = config.GetValue<string>("DatabaseName");
            //var client = new MongoClient(config.GetConnectionString(databaseName));
            var client = new MongoClient(settings.ConnectionString);

            if (client != null)
            {
                _db = client.GetDatabase(settings.DatabaseName);
            }
        }
예제 #7
0
        public void Setup()
        {
            IMongoDbSettings settings = new MongoDbSettings
            {
                ConnectionString = "mongodb://localhost:27017",
                Database         = "NBADatabase",
                Collection       = "teams"
            };

            service = new TeamService(settings);
        }
예제 #8
0
        public void SetUp()
        {
            _settings = new Mock <IOptions <MongoDbSettings> >();
            _mokproductivityZoneQuiz        = new Mock <IMongoClientHelper <ProductivityZoneQuiz> >();
            _mokproductivityZoneQuizAttempt = new Mock <IMongoClientHelper <ProductivityZoneQuizAttempts> >();
            var settings = new MongoDbSettings {
                ProductivityZoneQuizCollection = "", ProductivityZoneQuizAttemptsCollection = ""
            };

            _settings.Setup(s => s.Value).Returns(settings);
        }
예제 #9
0
        public MongoDb(MongoDbSettings settings)
        {
            if (settings == null)
            {
                throw new ArgumentNullException(nameof(settings));
            }

            _database =
                new MongoClient(settings.ConnectionString)
                .GetDatabase(settings.DatabaseName);
        }
예제 #10
0
        public void InstallServices(IServiceCollection services, IConfiguration configuration)
        {
            var settings = new MongoDbSettings();

            configuration.GetSection(nameof(MongoDbSettings)).Bind(settings);

            services.AddSingleton <IMongoDbSettings>(_ => settings);

            services.AddSingleton <IMongoClient, MongoClient>(_ => new MongoClient(settings.ConnectionStrings));

            services.AddScoped <ITestMongoTableService, TestMongoTableService>();
        }
예제 #11
0
        protected override void Load(ContainerBuilder builder)
        {
            var options = new MongoDbSettings()
            {
                ConnectionString = _configuration[$"{_configurationKey}:ConnectionString"],
                DatabaseName     = _configuration[$"{_configurationKey}:DatabaseName"]
            };

            builder.Register(x => options).SingleInstance();
            builder.Register(x => new MongoClient(options.ConnectionString)).As <IMongoClient>();
            builder.RegisterGeneric(typeof(GenericMongoRepository <,>)).As(typeof(IGenericRepository <,>));
        }
예제 #12
0
        public MongoRepository(MongoDbSettings dbSettings)
        {
            DatabaseSettings = dbSettings;

            Database = GetDatabase(DatabaseSettings);
            if (Database.GetCollection <T>(typeof(T).Name) == null)
            {
                Database.CreateCollection(typeof(T).Name);
            }

            CurrentCollection = GetCollection(DatabaseSettings);
        }
예제 #13
0
 public ConfigurationManager(
     IOptions <AMQPSettings> amqpSettings,
     IOptions <RabbitMQSettings> rabbitMQSettings,
     IOptions <StompSettings> stompSettings,
     IOptions <MongoDbSettings> mongoDbSettings
     )
 {
     AMQPSettings     = amqpSettings.Value;
     MongoDbSettings  = mongoDbSettings.Value;
     StompSettings    = stompSettings.Value;
     RabbitMQSettings = rabbitMQSettings.Value;
 }
예제 #14
0
        public MongoTemplate(MongoDbSettings mongoDbSettings,
                             ITenantAccessService tenantAccessService,
                             IStringLocalizer <TenantFrameworkResource> sl)
        {
            _tenantAccessService = tenantAccessService;
            _mongoDbSettings     = mongoDbSettings;
            _sl = sl;

            _collectionName = (typeof(TDocument)).Name.ToCamelCase();
            if (_collectionName.EndsWith("Row"))
            {
                _collectionName = _collectionName[0..^ 3];
예제 #15
0
        private void ConfigureMongoDb(IServiceCollection services)
        {
            var dbSettings = new MongoDbSettings();

            Configuration.GetSection("MongoDbSettings").Bind(dbSettings);
            services.Configure <MongoDbSettings>(options =>
            {
                options.ConnectionString    = dbSettings.ConnectionString ?? "mongodb://*****:*****@reflectcosmosdb.mongo.cosmos.azure.com:10255/?ssl=true&replicaSet=globaldb&retrywrites=false&maxIdleTimeMS=120000&appName=@reflectcosmosdb@";
                options.DbName              = dbSettings.ConnectionString ?? "reflectiontooldb";
                options.UsersCollection     = dbSettings.ConnectionString ?? "userdetails";
                options.ErrorLogsCollection = dbSettings.ConnectionString ?? "errorlogs";
            });
        }
예제 #16
0
        public static void Main()
        {
            IMongoDbSettings settings = new MongoDbSettings();

            settings.ConnectionString = "mongodb://127.0.0.1:27017";
            settings.DatabaseName     = "Students";

            IMongoRepository <Student> repository = new MongoRepository <Student>(settings);

            IEngine engine = new Engine(repository);

            engine.Run();
        }
        public DocumentsDbContext(MongoDbSettings dbSettings)
        {
            var client = new MongoClient(dbSettings.ConnectionString);

            Session = client.StartSession(new ClientSessionOptions {
                CausalConsistency = true
            });
            Database = Session.Client.GetDatabase(dbSettings.DbName);

            Authors  = Database.GetCollection <Author>("Authors");
            Posts    = Database.GetCollection <Post>("Posts");
            Comments = Database.GetCollection <Comment>("Comments");
        }
예제 #18
0
        public void Setup()
        {
            var serviceProvider = new ServiceCollection()
                                  .AddLogging()
                                  .BuildServiceProvider();

            var logger   = serviceProvider.GetService <ILogger <Repository <TestCounter, string> > >();
            var settings = new MongoDbSettings(MongoDefaultSettings.ConnectionString, "Tests");

            context    = new MongoDbContext(settings);
            repository = new Repository <TestCounter, string>(context, settings, logger);
            id         = TypedId.GetNewId <CounterId>();
            repository.InsertNewAsync(TestCounter.Create(id.Value, 0)).GetAwaiter().GetResult();
        }
예제 #19
0
파일: Startup.cs 프로젝트: tuankha1994/KhV
 // This method gets called by the runtime. Use this method to add services to the container.
 public void ConfigureServices(IServiceCollection services)
 {
     services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
     Configuration.ConfigLog("KhV.Api is started...");
     #region Register Mongo
     services.Configure <MongoDbSettings>(Configuration.GetSection("mongodb"));
     var mongo = new MongoDbSettings();
     Configuration.GetSection("mongodb").Bind(mongo);
     var mongoClient = new MongoClient(mongo.ConnectionString);
     services.AddSingleton <IMongoClient>(z => mongoClient);
     services.AddSingleton(z => mongoClient.GetDatabase(mongo.DatabaseName));
     services.AddTransient <IProductRepo, ProductRepo>();
     #endregion
 }
예제 #20
0
        private static MongoDbSettings GetMongoDbSettings(IServiceCollection services)
        {
            using (var serviceProvider = services.BuildServiceProvider())
            {
                var configuration        = serviceProvider.GetService <IConfiguration>();
                var configurationSection = configuration.GetSection(ConfigurationSectionName);

                services.Configure <MongoDbSettings>(configurationSection);

                var mongoDbSettings = new MongoDbSettings();
                configurationSection.Bind(mongoDbSettings);

                return(mongoDbSettings);
            }
        }
예제 #21
0
 public ApprovalEntityBaseMongoContext(IOptions <MongoDbSettings> options)
 {
     this._settings = options.Value;
     _mongoClient   = new MongoClient(this._settings.ConnectionString);
     _database      = _mongoClient.GetDatabase(this._settings.DatabaseName);
     if (typeof(T) == typeof(ProductApproval))
     {
         this.CollectionName = "ProductApproval";
     }
     else
     {
         this.CollectionName = "MoneyApproval";
     }
     Collection = _database.GetCollection <T> (this.CollectionName);
 }
예제 #22
0
        public void InsertCultureObservationAttemptTest()
        {
            var request  = new List <CultureObservationToolQuizAttempts>();
            var settings = new MongoDbSettings {
                CultureObservationToolQuizCollection = "", CultureObservationToolQuizAttemptsCollection = ""
            };

            _settings.Setup(s => s.Value).Returns(settings);
            _mokcultureObservationToolQuizAttempt.Setup(a => a.InsertAll(It.IsAny <List <CultureObservationToolQuizAttempts> >(), It.IsAny <string>()));

            _cultureObservationToolAdapter = new CulturalObservationAdapter(_mokcultureObservationToolQuiz.Object, _mokcultureObservationToolQuizAttempt.Object, _settings.Object);
            _cultureObservationToolAdapter.InsertCultureObservationAttempt(request);

            _mokcultureObservationToolQuizAttempt.Verify(a => a.InsertAll(It.IsAny <List <CultureObservationToolQuizAttempts> >(), It.IsAny <string>()));
        }
예제 #23
0
파일: DbFixture.cs 프로젝트: lulzzz/codex
        public DbFixture(
            MongoDbSettings mongoDbSettings,
            ITenantAccessService tenantAccessService,
            IServiceProvider services)
        {
            _mongoDbSettings     = mongoDbSettings;
            _tenantAccessService = tenantAccessService;
            _services            = services;

            var camelCaseConventionPack = new ConventionPack {
                new CamelCaseElementNameConvention()
            };

            ConventionRegistry.Register("CamelCase", camelCaseConventionPack, type => true);
        }
예제 #24
0
        public void Setup()
        {
            settings = new MongoDbSettings(MongoDefaultSettings.ConnectionString, "AuthorTests");

            serviceProvider = new ServiceCollection()
                              .AddLogging()
                              .AddMongoDbInfrastructure(settings)
                              .BuildServiceProvider();
            authorRepo = serviceProvider.GetService <IRepository <Author, string> >();

            authorName = new AuthorFullName("Test", "Author");
            authorRepo.InsertNewAsync(Author.Create(authorName)).GetAwaiter().GetResult();

            context = serviceProvider.GetService <IMongoDbContext>();
        }
        public GenericMongoRepository(IMongoClient mongoClient, IMapper mapper, MongoDbSettings mongoDbSettings)
        {
            _mapper = mapper;
            var mongoEntityAttribute = typeof(TEntity).GetCustomAttributes(typeof(MongoEntityAttribute), false)
                                       .SingleOrDefault() as MongoEntityAttribute;

            if (mongoEntityAttribute == null)
            {
                throw new ArgumentNullException(nameof(mongoEntityAttribute));
            }

            var database = mongoClient.GetDatabase(mongoDbSettings.DatabaseName);

            _collection = database.GetCollection <TEntity>(mongoEntityAttribute.TableName);
        }
예제 #26
0
        public static IMongoDatabase ConfigureMongoDb(MongoDbSettings config)
        {
            Initializer.RegisterCommonSerializers();
            if (config == null)
            {
                throw new ArgumentNullException(nameof(config));
            }

            var clientSettings = MongoClientSettings.FromUrl(new MongoUrl(config.ConnectionString));

            clientSettings.WaitQueueSize = 10000;

            var client = new MongoClient(clientSettings);

            return(client.GetDatabase(config.DbName));
        }
예제 #27
0
 public UserLoginControllerUtilities(MongoDbSettings mongoDbSettings) : base(mongoDbSettings)
 {
     if (!mongoDbSettings.UseRemoteHost)
     {
         _userDatabase = new UserDatabase(mongoDbSettings.DatabaseConnectionString);
     }
     else
     {
         _userDatabase =
             new UserDatabase(string.Empty, false)
         {
             MongoClientFunc = GetRemoteConnection
         };
         _userDatabase.ConnectToDatabase();
     }
 }
            public static void Configure <RequestStatusServiceImpl>(IServiceCollection serviceCollection,
                                                                    MongoDbSettings mongoDbSettings,
                                                                    CategoryNameServiceSettings categoryNameServiceSettings,
                                                                    ImageDbSettings imageDbSettings,
                                                                    RabbitMqSettings rabbitMqSettings) where RequestStatusServiceImpl : class, IRequestStatusService
            {
                serviceCollection.AddSingleton <ReadModelDbContext>();
                serviceCollection.AddScoped <RequestStatusServiceImpl>();
                serviceCollection.AddScoped <IRequestStatusService, RequestStatusServiceProxy>(provider =>
                                                                                               new RequestStatusServiceProxy(provider.GetRequiredService <RequestStatusServiceImpl>(),
                                                                                                                             provider.GetRequiredService <IHTTPQueuedCommandStatusStorage>()));

                ConfigureSettings(serviceCollection, mongoDbSettings, categoryNameServiceSettings, imageDbSettings,
                                  rabbitMqSettings);
                ConfigureEventHandlers(serviceCollection);
            }
예제 #29
0
        private void ConfigureMongoDb(IServiceCollection services)
        {
            var dbSettings = new MongoDbSettings();

            Configuration.GetSection("MongoDbSettings").Bind(dbSettings);
            services.Configure <MongoDbSettings>(options =>
            {
                options.ConnectionString            = dbSettings.ConnectionString ?? Environment.GetEnvironmentVariable("MONGO_CONNECTIONSTRING");
                options.DbName                      = dbSettings.ConnectionString ?? Environment.GetEnvironmentVariable("MONGO_DATABASE_NAME");
                options.AlertNotificationCollection = dbSettings.ConnectionString ?? Environment.GetEnvironmentVariable("NOTIFICATION_COLLECTION");
                options.VolunteerAssignCollection   = dbSettings.ConnectionString ?? Environment.GetEnvironmentVariable("ASSIGN_VOLUNTEER_COLLECTION");
                options.VolunteerCollection         = dbSettings.ConnectionString ?? Environment.GetEnvironmentVariable("VOLUNTEER_COLLECTION");
                options.CityMasterCollection        = dbSettings.ConnectionString ?? Environment.GetEnvironmentVariable("CITY_MASTER_COLLECTION");
                options.TypeCollection              = dbSettings.ConnectionString ?? Environment.GetEnvironmentVariable("TYPE_COLLECTION");
            });
        }
예제 #30
0
        public void UpdateFeedbackStatusTest()
        {
            //arrange
            var settings = new MongoDbSettings {
                FeedbackCollection = "", FeedbackReplyCollection = ""
            };

            _settings.Setup(s => s.Value).Returns(settings);
            //act
            var feedbackAdapter = new FeedbackBusinessLogics(_mokstoreFeedbackAdapter.Object, _mokgetFeedbackDetailsAdapter.Object);

            feedbackAdapter.UpdateFeedbackStatus(1);

            //assert
            _mokstoreFeedbackAdapter.Verify(a => a.UpdateFeedbackStatus(It.IsAny <long>()));
        }