diff options
author | Geir Storli <geirst@oath.com> | 2017-11-16 12:25:54 +0000 |
---|---|---|
committer | Geir Storli <geirst@oath.com> | 2017-11-16 12:25:54 +0000 |
commit | e42bd756e93166b99a59a5bf2d67baf22e662160 (patch) | |
tree | 01b83d87d3c837114f30a1fcacf2595544e9a2f0 /storageapi/src | |
parent | 44372c19d4eef184e871c2d30654ef0067516575 (diff) |
Add API function to encode a bucket space.
Diffstat (limited to 'storageapi/src')
5 files changed, 10 insertions, 0 deletions
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization.h b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization.h index 5ceeecd3f47..d1e5783e609 100644 --- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization.h +++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization.h @@ -180,6 +180,7 @@ protected: virtual document::Bucket getBucket(document::ByteBuffer& buf) const = 0; virtual void putBucket(const document::Bucket& bucket, vespalib::GrowableByteBuffer& buf) const = 0; virtual document::BucketSpace getBucketSpace(document::ByteBuffer& buf) const = 0; + virtual void putBucketSpace(document::BucketSpace bucketSpace, vespalib::GrowableByteBuffer& buf) const = 0; virtual api::BucketInfo getBucketInfo(document::ByteBuffer& buf) const = 0; virtual void putBucketInfo(const api::BucketInfo& info, vespalib::GrowableByteBuffer& buf) const = 0; diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization4_2.cpp b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization4_2.cpp index 9e9b5d1f797..cd8e4992ba5 100644 --- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization4_2.cpp +++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization4_2.cpp @@ -520,6 +520,7 @@ void ProtocolSerialization4_2::onEncode( GBBuf& buf, const api::CreateVisitorCommand& msg) const { + putBucketSpace(msg.getBucketSpace(), buf); buf.putString(msg.getLibraryName()); buf.putString(msg.getInstanceId()); buf.putString(msg.getDocumentSelection()); diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp index 1b4f44a101c..d6d47d877e5 100644 --- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp +++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp @@ -31,6 +31,11 @@ ProtocolSerialization5_0::getBucketSpace(document::ByteBuffer&) const return BucketSpace::placeHolder(); } +void +ProtocolSerialization5_0::putBucketSpace(document::BucketSpace, vespalib::GrowableByteBuffer&) const +{ +} + api::BucketInfo ProtocolSerialization5_0::getBucketInfo(document::ByteBuffer& buf) const { @@ -636,6 +641,7 @@ void ProtocolSerialization5_0::onEncode( for (uint32_t i=0; i<buckets.size(); ++i) { buf.putLong(buckets[i].getRawId()); } + putBucketSpace(msg.getBucketSpace(), buf); if (buckets.size() == 0) { buf.putShort(msg.getDistributor()); buf.putString(msg.getSystemState().toString()); diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h index 796db52f420..c1285939a1c 100644 --- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h +++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h @@ -18,6 +18,7 @@ public: document::Bucket getBucket(document::ByteBuffer& buf) const override; void putBucket(const document::Bucket& bucket, vespalib::GrowableByteBuffer& buf) const override; document::BucketSpace getBucketSpace(document::ByteBuffer& buf) const override; + void putBucketSpace(document::BucketSpace bucketSpace, vespalib::GrowableByteBuffer& buf) const override; api::BucketInfo getBucketInfo(document::ByteBuffer& buf) const override; void putBucketInfo(const api::BucketInfo& info, vespalib::GrowableByteBuffer& buf) const override; diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp index 492f8297a3d..0afdfebd5b7 100644 --- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp +++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp @@ -125,6 +125,7 @@ void ProtocolSerialization5_1::onEncode( GBBuf& buf, const api::CreateVisitorCommand& msg) const { + putBucketSpace(msg.getBucketSpace(), buf); buf.putString(msg.getLibraryName()); buf.putString(msg.getInstanceId()); buf.putString(msg.getDocumentSelection()); |