예제 #1
0
        internal void Populate(DtFetchReq request)
        {
            request.r  = R;
            request.pr = Pr;

            if (BasicQuorum.HasValue)
            {
                request.basic_quorum = BasicQuorum.Value;
            }

            if (NotFoundOk.HasValue)
            {
                request.notfound_ok = NotFoundOk.Value;
            }

            request.timeout = (uint)Timeout;

            if (SloppyQuorum.HasValue)
            {
                request.sloppy_quorum = SloppyQuorum.Value;
            }

            if (NVal != null)
            {
                request.n_val = NVal;
            }

            request.include_context = IncludeContext;
        }
예제 #2
0
        public override RpbReq ConstructPbRequest()
        {
            var req = new DtFetchReq();

            req.type   = CommandOptions.BucketType;
            req.bucket = CommandOptions.Bucket;
            req.key    = CommandOptions.Key;

            req.r  = CommandOptions.R;
            req.pr = CommandOptions.PR;

            req.timeout         = (uint)CommandOptions.Timeout;
            req.notfound_ok     = CommandOptions.NotFoundOK;
            req.include_context = CommandOptions.IncludeContext;
            req.basic_quorum    = CommandOptions.UseBasicQuorum;

            return(req);
        }
        public void Should_Build_DtFetchReq_Correctly()
        {
            var fetch = new FetchCounter.Builder()
                        .WithBucketType(BucketType)
                        .WithBucket(Bucket)
                        .WithKey(Key)
                        .WithR((Quorum)1)
                        .WithPR((Quorum)2)
                        .WithNotFoundOK(true)
                        .WithBasicQuorum(true)
                        .WithTimeout(TimeSpan.FromMilliseconds(20000))
                        .Build();

            DtFetchReq protobuf = (DtFetchReq)fetch.ConstructPbRequest();

            Assert.AreEqual(BucketType, RiakString.FromBytes(protobuf.type));
            Assert.AreEqual(Bucket, RiakString.FromBytes(protobuf.bucket));
            Assert.AreEqual(Key, RiakString.FromBytes(protobuf.key));
            Assert.AreEqual(1, protobuf.r);
            Assert.AreEqual(2, protobuf.pr);
            Assert.AreEqual(true, protobuf.notfound_ok);
            Assert.AreEqual(true, protobuf.basic_quorum);
            Assert.AreEqual(20000, protobuf.timeout);
        }