예제 #1
0
        public void SetUp()
        {
            var config = new global::Couchbase.Configuration.CouchbaseClientConfiguration()
            {
                Bucket   = "default",
                Password = "******"
            };

            config.Urls.Add(new Uri("http://127.0.0.1:8091/pools"));

            var client  = new global::Couchbase.CouchbaseClient(config);
            var cluster = new global::Couchbase.Management.CouchbaseCluster(config);
            var stats   = client.Stats();

            KVStore.Initialize(new Func <Interfaces.IStoreProvider>(() => new Couchbase.CouchbaseStoreProvider(client, cluster, config.Bucket)));
        }
예제 #2
0
        /// <summary>
        /// Construct a sink posting to the specified database.
        /// </summary>
        /// <param name="couchbaseUriList">A list of a Couchbase database servers.</param>
        /// <param name="bucketName">The bucket to store batches in.</param>
        /// <param name="batchPostingLimit">The maximum number of events to post in a single batch.</param>
        /// <param name="period">The time to wait between checking for event batches.</param>
        /// <param name="formatProvider">Supplies culture-specific formatting information, or null.</param>
        public CouchbaseSink(string[] couchbaseUriList, string bucketName, int batchPostingLimit, TimeSpan period, IFormatProvider formatProvider)
            : base(batchPostingLimit, period)
        {
            if (couchbaseUriList == null)
            {
                throw new ArgumentNullException("couchbaseUriList");
            }
            if (couchbaseUriList.Length == 0)
            {
                throw new ArgumentException("couchbaseUriList");
            }
            if (couchbaseUriList[0] == null)
            {
                throw new ArgumentNullException("couchbaseUriList");
            }

            if (bucketName == null)
            {
                throw new ArgumentNullException("bucketName");
            }

            var config = new global::Couchbase.Configuration.CouchbaseClientConfiguration();

            foreach (var uri in couchbaseUriList)
            {
                config.Urls.Add(new Uri(uri));
            }
            config.Bucket = bucketName;

            var    cluster = new CouchbaseCluster(config);
            Bucket bucket;

            if (!cluster.TryGetBucket(bucketName, out bucket))
            {
                throw new InvalidOperationException("bucket '" + bucketName + "' does not exist");
            }

            _couchbaseClient = new global::Couchbase.CouchbaseClient(config);

            _formatProvider = formatProvider;
        }
예제 #3
0
        /// <summary>
        /// Construct a sink posting to the specified database.
        /// </summary>
        /// <param name="couchbaseUriList">A list of a Couchbase database servers.</param>
        /// <param name="bucketName">The bucket to store batches in.</param>
        /// <param name="batchPostingLimit">The maximum number of events to post in a single batch.</param>
        /// <param name="period">The time to wait between checking for event batches.</param>
        /// <param name="formatProvider">Supplies culture-specific formatting information, or null.</param>
        public CouchbaseSink(string[] couchbaseUriList, string bucketName, int batchPostingLimit, TimeSpan period, IFormatProvider formatProvider)
            : base(batchPostingLimit, period)
        {
            if (couchbaseUriList == null) throw new ArgumentNullException("couchbaseUriList");
            if (couchbaseUriList.Length == 0) throw new ArgumentException("couchbaseUriList");
            if (couchbaseUriList[0] == null) throw new ArgumentNullException("couchbaseUri");

            if (bucketName == null) throw new ArgumentNullException("bucketName");

            var config = new global::Couchbase.Configuration.CouchbaseClientConfiguration();
            
            foreach (var uri in couchbaseUriList)
                config.Urls.Add(new Uri(uri));
            config.Bucket = bucketName;

            var cluster = new CouchbaseCluster(config);
            Bucket bucket = null;
            if (!cluster.TryGetBucket(bucketName, out bucket)) throw new InvalidOperationException("bucket '"+ bucketName  +"' does not exist");

            _couchbaseClient = new global::Couchbase.CouchbaseClient(config);

            _formatProvider = formatProvider;
        }