summaryrefslogtreecommitdiffstats
path: root/documentapi
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@oath.com>2017-10-20 08:57:17 +0000
committerTor Egge <Tor.Egge@oath.com>2017-10-20 08:57:17 +0000
commitb8921da1ec37af8b03d2e72a9e31078b0643edd2 (patch)
treea9e847fc7b66f3373cae60b252a95432a7f62ba4 /documentapi
parentbd8b54938748810e435b1bf0e1c32953090768c0 (diff)
Add bucket space to GetBucketListMessage.
Diffstat (limited to 'documentapi')
-rw-r--r--documentapi/src/tests/messagebus/messagebus_test.cpp4
-rw-r--r--documentapi/src/tests/messages/messages50test.cpp6
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.cpp11
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.h21
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp2
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp12
6 files changed, 20 insertions, 36 deletions
diff --git a/documentapi/src/tests/messagebus/messagebus_test.cpp b/documentapi/src/tests/messagebus/messagebus_test.cpp
index d8920b0577b..742b680509a 100644
--- a/documentapi/src/tests/messagebus/messagebus_test.cpp
+++ b/documentapi/src/tests/messagebus/messagebus_test.cpp
@@ -2,6 +2,7 @@
#include <vespa/document/base/testdocrepo.h>
#include <vespa/document/fieldvalue/document.h>
#include <vespa/document/datatype/documenttype.h>
+#include <vespa/document/test/make_document_bucket.h>
#include <vespa/documentapi/documentapi.h>
#include <vespa/vdslib/state/clusterstate.h>
#include <vespa/vespalib/testkit/testapp.h>
@@ -13,6 +14,7 @@ using namespace documentapi;
using mbus::Blob;
using mbus::Routable;
using mbus::IRoutingPolicy;
+using document::test::makeDocumentBucket;
class Test : public vespalib::TestApp {
DocumentTypeRepo::SP _repo;
@@ -119,6 +121,6 @@ void Test::stat_bucket_message_is_not_sequenced() {
}
void Test::get_bucket_list_message_is_not_sequenced() {
- GetBucketListMessage message(document::BucketId(16, 1));
+ GetBucketListMessage message(makeDocumentBucket(document::BucketId(16, 1)));
EXPECT_FALSE(message.hasSequenceId());
}
diff --git a/documentapi/src/tests/messages/messages50test.cpp b/documentapi/src/tests/messages/messages50test.cpp
index 964e4e12288..a3627522562 100644
--- a/documentapi/src/tests/messages/messages50test.cpp
+++ b/documentapi/src/tests/messages/messages50test.cpp
@@ -7,9 +7,11 @@
#include <vespa/document/datatype/documenttype.h>
#include <vespa/document/bucket/bucketidfactory.h>
#include <vespa/document/select/parser.h>
+#include <vespa/document/test/make_document_bucket.h>
using document::DataType;
using document::DocumentTypeRepo;
+using document::test::makeDocumentBucket;
///////////////////////////////////////////////////////////////////////////////
//
@@ -88,7 +90,7 @@ createDoc(const DocumentTypeRepo &repo, const string &type_name, const string &i
bool
Messages50Test::testGetBucketListMessage()
{
- GetBucketListMessage msg(document::BucketId(16, 123));
+ GetBucketListMessage msg(makeDocumentBucket(document::BucketId(16, 123)));
msg.setLoadType(_loadTypes["foo"]);
EXPECT_EQUAL(string("foo"), msg.getLoadType().getName());
EXPECT_EQUAL(MESSAGE_BASE_LENGTH + 12u, serialize("GetBucketListMessage", msg));
@@ -98,7 +100,7 @@ Messages50Test::testGetBucketListMessage()
if (EXPECT_TRUE(obj.get() != NULL)) {
GetBucketListMessage &ref = static_cast<GetBucketListMessage&>(*obj);
EXPECT_EQUAL(string("foo"), ref.getLoadType().getName());
- EXPECT_EQUAL(document::BucketId(16, 123), ref.getBucketId());
+ EXPECT_EQUAL(document::BucketId(16, 123), ref.getBucket().getBucketId());
}
}
return true;
diff --git a/documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.cpp b/documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.cpp
index 71bb750a5aa..49e8e048db5 100644
--- a/documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.cpp
+++ b/documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.cpp
@@ -6,16 +6,9 @@
namespace documentapi {
-GetBucketListMessage::GetBucketListMessage() :
+GetBucketListMessage::GetBucketListMessage(const document::Bucket &bucket) :
DocumentMessage(),
- _bucketId()
-{
- // empty
-}
-
-GetBucketListMessage::GetBucketListMessage(const document::BucketId &bucketId) :
- DocumentMessage(),
- _bucketId(bucketId)
+ _bucket(bucket)
{
// empty
}
diff --git a/documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.h b/documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.h
index 350f36cc708..90c46d01b9a 100644
--- a/documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.h
+++ b/documentapi/src/vespa/documentapi/messagebus/messages/getbucketlistmessage.h
@@ -2,13 +2,13 @@
#pragma once
#include "documentmessage.h"
-#include <vespa/document/bucket/bucketid.h>
+#include <vespa/document/bucket/bucket.h>
namespace documentapi {
class GetBucketListMessage : public DocumentMessage {
private:
- document::BucketId _bucketId;
+ document::Bucket _bucket;
protected:
// Implements DocumentMessage.
@@ -16,30 +16,19 @@ protected:
public:
/**
- * Constructs a new message for deserialization.
- */
- GetBucketListMessage();
-
- /**
* Constructs a new message with initial content.
*
- * @param bucketId The bucket whose list to retrieve.
+ * @param bucket The bucket whose list to retrieve.
*/
- GetBucketListMessage(const document::BucketId &bucketId);
+ GetBucketListMessage(const document::Bucket &bucket);
/**
* Returns the bucket whose list to retrieve.
*
* @return The bucket id.
*/
- const document::BucketId& getBucketId() const { return _bucketId; }
+ const document::Bucket &getBucket() const { return _bucket; }
- /**
- * Sets the bucket whose list to retrieve.
- *
- * @param id The bucket id to set.
- */
- void setBucketId(const document::BucketId& id) { _bucketId = id; }
uint32_t getType() const override;
string toString() const override { return "getbucketlistmessage"; }
};
diff --git a/documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp b/documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp
index b7b451e8ddf..6ab3b1100c4 100644
--- a/documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp
+++ b/documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp
@@ -143,7 +143,7 @@ StoragePolicy::doSelect(mbus::RoutingContext &context)
break;
case DocumentProtocol::MESSAGE_GETBUCKETLIST:
- id = static_cast<const GetBucketListMessage&>(msg).getBucketId();
+ id = static_cast<const GetBucketListMessage&>(msg).getBucket().getBucketId();
break;
case DocumentProtocol::MESSAGE_CREATEVISITOR:
diff --git a/documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp b/documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp
index fda99ed2f00..028db2f02c0 100644
--- a/documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp
+++ b/documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp
@@ -10,6 +10,7 @@
using vespalib::nbostream;
using std::make_unique;
using std::make_shared;
+using document::BucketSpace;
namespace documentapi {
@@ -407,19 +408,16 @@ RoutableFactories50::EmptyBucketsReplyFactory::doEncode(const DocumentReply &obj
DocumentMessage::UP
RoutableFactories50::GetBucketListMessageFactory::doDecode(document::ByteBuffer &buf) const
{
- DocumentMessage::UP ret(new GetBucketListMessage());
- GetBucketListMessage &msg = static_cast<GetBucketListMessage&>(*ret);
-
- msg.setBucketId(document::BucketId(decodeLong(buf)));
-
- return ret;
+ document::BucketId bucketId(decodeLong(buf));
+ document::Bucket bucket(BucketSpace::placeHolder(), bucketId);
+ return std::make_unique<GetBucketListMessage>(bucket);
}
bool
RoutableFactories50::GetBucketListMessageFactory::doEncode(const DocumentMessage &obj, vespalib::GrowableByteBuffer &buf) const
{
const GetBucketListMessage &msg = static_cast<const GetBucketListMessage&>(obj);
- buf.putLong(msg.getBucketId().getRawId());
+ buf.putLong(msg.getBucket().getBucketId().getRawId());
return true;
}