Esempio n. 1
0
 public Startup(IConfiguration configuration)
 {
     Configuration = configuration;
     CouchbaseConfig.Setup();
     Log.Logger    = new LoggerConfiguration().ReadFrom.Configuration(configuration).CreateLogger();
     Configuration = configuration;
 }
Esempio n. 2
0
        private (c.Cluster cluster, CouchbaseConfig couchbaseConfig) LoadCouchbaseConfig(string config)
        {
            if (config == null)
            {
                throw new System.NullReferenceException("传入的配置信息为空。");
            }
            CouchbaseConfig r = null;

            try
            {
                r = GetCouchbaseConfig(config);
            }
            catch (System.Exception)
            {
                throw new ConfigurationException("读取配置文件引发此异常,检查配置信息是否正确。");
            }

            if (r.Cluster.UserName == null || r.Cluster.Password == null)
            {
                throw new ClusterAuthenticatorException("连接集群时引发此异常,用户名、密码验证失败。");
            }

            var serverUrl = new List <Uri>();

            try
            {
                foreach (var item in r.Cluster.Servers)
                {
                    serverUrl.Add(new Uri($"{item.Ip}:{item.Port}"));
                }
            }
            catch (System.Exception)
            {
                throw new ClusterAuthenticatorException(@"读取配置文件引发此异常,检查""Servers""节点配置信息。");
            }


            c.Cluster cluster = null;

            try
            {
                cluster = new c.Cluster(new ClientConfiguration
                {
                    Servers = serverUrl,
                    UseSsl  = r.Cluster.UseSSL,
                    SslPort = r.Cluster.SSLPort
                });
            }
            catch (System.Exception)
            {
                throw new ClusterAuthenticatorException(@"读取配置文件引发此异常,检查""Cluster""节点配置信息。");
            }


            var authenticator = new PasswordAuthenticator(r.Cluster.UserName, r.Cluster.Password);

            cluster.Authenticate(authenticator);
            return(cluster, r);
        }
Esempio n. 3
0
 protected void Application_Start()
 {
     GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;
     GlobalConfiguration.Configure(WebApiConfig.Register);
     CouchbaseConfig.Register();
     FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
     AreaRegistration.RegisterAllAreas();
     RouteConfig.RegisterRoutes(RouteTable.Routes);
     BundleConfig.RegisterBundles(BundleTable.Bundles);
 }
Esempio n. 4
0
 public DatabaseService(
     IClusterProvider clusterProvider,
     IBucketProvider bucketProvider,
     IOptions <CouchbaseConfig> options,
     ILogger <DatabaseService> logger)
 {
     _clusterProvider = clusterProvider;
     _bucketProvider  = bucketProvider;
     _couchbaseConfig = options.Value;
     _logger          = logger;
 }
        public ProfileController(
            IClusterProvider clusterProvider,
            IBucketProvider bucketProvider,
            IOptions <CouchbaseConfig> options,
            ILogger <ProfileController> logger)
        {
            _clusterProvider = clusterProvider;
            _bucketProvider  = bucketProvider;
            _logger          = logger;

            _couchbaseConfig = options.Value;
        }
Esempio n. 6
0
        /// <summary>
        /// Create CouchbaseManager object by CouchbaseConfig
        /// </summary>
        /// <param name="config">Config json</param>
        /// <returns></returns>
        public CouchbaseManager CreateManager(CouchbaseConfig config)
        {
            var r      = LoadConfig(config);
            var bucket = new Type.OneToManyList <string, string>();

            foreach (var item in config.Buckets)
            {
                bucket.Add(item.ServerName, item.BucketName);
            }

            CouchbaseManager couchbaseManager = new CouchbaseManager()
            {
                Cluster    = r,
                ConfigData = JsonConvert.SerializeObject(config),
                Buckets    = bucket,
            };

            return(couchbaseManager);
        }
        public void Initialize_WithValidInputs_InitializesClusterHelper()
        {
            CouchbaseConfig config = new CouchbaseConfig();

            bool result = false;

            try
            {
                config.Initialize();

                result = Couchbase.ClusterHelper.Initialized;
            }
            catch
            {
                result = false;
            }

            Assert.IsTrue(result);
        }
        public void Initialize_WithValidInputs_ConfiguresCorrectly()
        {
            CouchbaseConfig config = new CouchbaseConfig();

            bool result = false;

            try
            {
                config.Initialize();

                result = config.AccountBucketName == FAKEACCOUNT &&
                         config.PortfolioBucketName == FAKEPORTFOLIO &&
                         config.UserBucketName == FAKEUSERS;
            }
            catch
            {
                result = false;
            }

            Assert.IsTrue(result);
        }
        public void Initialize_WithInvalidServerList_ThrowsConfigurationException()
        {
            Environment.SetEnvironmentVariable("COUCHBASE_SERVERS", string.Empty);
            CouchbaseConfig config = new CouchbaseConfig();

            bool result = false;

            try
            {
                config.Initialize();
            }
            catch (ConfigurationException)
            {
                result = true;
            }
            catch
            {
                result = false;
            }

            Assert.IsTrue(result);
        }
Esempio n. 10
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            GlobalConfiguration.Configure(WebApiConfig.Register);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            CouchbaseConfig.Initialize();

            /* var config = new ClientConfiguration
             * {
             *   Servers = new List<Uri>
             *   {
             *       //change this to your cluster to bootstrap
             *      // new Uri("http://45.117.80.57/:8091/"),
             *
             *       new Uri("http://localhost/:8091/")
             *       }
             * };
             *
             * ClusterHelper.Initialize(config); */
        }
        public void Initialize_WithAllInvalidBuckets_ThrowsConfigurationException()
        {
            Environment.SetEnvironmentVariable("COUCHBASE_PORTFOLIO", string.Empty);
            Environment.SetEnvironmentVariable("COUCHBASE_ACCOUNT", string.Empty);
            Environment.SetEnvironmentVariable("COUCHBASE_USERS", string.Empty);
            CouchbaseConfig config = new CouchbaseConfig();

            bool result = false;

            try
            {
                config.Initialize();
            }
            catch (ConfigurationException)
            {
                result = true;
            }
            catch
            {
                result = false;
            }

            Assert.IsTrue(result);
        }
Esempio n. 12
0
 public static IBucketManager getBucketManager(IBucket _bucket)
 {
     return(_bucket.CreateManager(CouchbaseConfig.getConfig()["Couchbase:username"], CouchbaseConfig.getConfig()["Couchbase:password"]));
 }
Esempio n. 13
0
 public static IBucket getBucket(string BucketAddress)
 {
     return(ClusterHelper.GetBucket(CouchbaseConfig.getConfig()[BucketAddress]));
 }
Esempio n. 14
0
 protected void Application_End()
 {
     CouchbaseConfig.cleanup();
 }
Esempio n. 15
0
 protected void Application_Start()
 {
     CouchbaseConfig.setup();
     GlobalConfiguration.Configure(WebApiConfig.Register);
 }
Esempio n. 16
0
 public static IBucket OpenBucket()
 {
     return(new Cluster().OpenBucket(CouchbaseConfig.getConfig()["Couchbase:buckets:FeedStats"]));
 }