summaryrefslogtreecommitdiffstats
path: root/messagebus
diff options
context:
space:
mode:
Diffstat (limited to 'messagebus')
-rw-r--r--messagebus/src/vespa/messagebus/callstack.h5
-rw-r--r--messagebus/src/vespa/messagebus/destinationsession.h5
-rw-r--r--messagebus/src/vespa/messagebus/imessagehandler.h4
-rw-r--r--messagebus/src/vespa/messagebus/intermediatesession.h6
-rw-r--r--messagebus/src/vespa/messagebus/iprotocol.h4
-rw-r--r--messagebus/src/vespa/messagebus/ireplyhandler.h4
-rw-r--r--messagebus/src/vespa/messagebus/messagebus.h1
-rw-r--r--messagebus/src/vespa/messagebus/messenger.h10
-rw-r--r--messagebus/src/vespa/messagebus/network/inetwork.h4
-rw-r--r--messagebus/src/vespa/messagebus/network/oosmanager.h3
-rw-r--r--messagebus/src/vespa/messagebus/network/rpcnetwork.h3
-rw-r--r--messagebus/src/vespa/messagebus/network/rpcsendadapter.h7
-rw-r--r--messagebus/src/vespa/messagebus/network/rpcsendv1.cpp9
-rw-r--r--messagebus/src/vespa/messagebus/network/rpcservice.h5
-rw-r--r--messagebus/src/vespa/messagebus/network/rpcservicepool.h5
-rw-r--r--messagebus/src/vespa/messagebus/network/rpctargetpool.h5
-rw-r--r--messagebus/src/vespa/messagebus/protocolrepository.h6
-rw-r--r--messagebus/src/vespa/messagebus/replygate.h4
-rw-r--r--messagebus/src/vespa/messagebus/routable.h5
-rw-r--r--messagebus/src/vespa/messagebus/routing/iroutingpolicy.h11
-rw-r--r--messagebus/src/vespa/messagebus/routing/resender.h5
-rw-r--r--messagebus/src/vespa/messagebus/routing/routingtable.h5
-rw-r--r--messagebus/src/vespa/messagebus/rpcmessagebus.h5
-rw-r--r--messagebus/src/vespa/messagebus/sendproxy.h4
-rw-r--r--messagebus/src/vespa/messagebus/sequencer.h4
-rw-r--r--messagebus/src/vespa/messagebus/sourcesession.h3
-rw-r--r--messagebus/src/vespa/messagebus/testlib/custompolicy.h3
-rw-r--r--messagebus/src/vespa/messagebus/testlib/simpleprotocol.h3
-rw-r--r--messagebus/src/vespa/messagebus/testlib/testserver.h5
29 files changed, 83 insertions, 60 deletions
diff --git a/messagebus/src/vespa/messagebus/callstack.h b/messagebus/src/vespa/messagebus/callstack.h
index 80e673ee550..d82c27966b9 100644
--- a/messagebus/src/vespa/messagebus/callstack.h
+++ b/messagebus/src/vespa/messagebus/callstack.h
@@ -2,7 +2,6 @@
#pragma once
-#include <boost/utility.hpp>
#include <vector>
#include "context.h"
@@ -21,7 +20,7 @@ class Reply;
* copied when copying a Routable, as it is not part of the object
* value. This class is intended for internal messagebus use only.
**/
-class CallStack : public boost::noncopyable
+class CallStack
{
private:
struct Frame {
@@ -35,6 +34,8 @@ private:
Stack _stack;
public:
+ CallStack(const CallStack &) = delete;
+ CallStack & operator = (const CallStack &) = delete;
/**
* Create a new empty CallStack.
**/
diff --git a/messagebus/src/vespa/messagebus/destinationsession.h b/messagebus/src/vespa/messagebus/destinationsession.h
index f381a5cd7b7..c69a1a71084 100644
--- a/messagebus/src/vespa/messagebus/destinationsession.h
+++ b/messagebus/src/vespa/messagebus/destinationsession.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <memory>
#include <string>
#include "destinationsessionparams.h"
@@ -16,12 +15,12 @@ class MessageBus;
* A DestinationSession is used to receive Message objects and reply
* with Reply objects.
*/
-class DestinationSession : public boost::noncopyable, public IMessageHandler {
+class DestinationSession : public IMessageHandler {
private:
friend class MessageBus;
MessageBus &_mbus;
- string _name;
+ string _name;
IMessageHandler &_msgHandler;
/**
diff --git a/messagebus/src/vespa/messagebus/imessagehandler.h b/messagebus/src/vespa/messagebus/imessagehandler.h
index d21936bb0bc..b8c50172b6c 100644
--- a/messagebus/src/vespa/messagebus/imessagehandler.h
+++ b/messagebus/src/vespa/messagebus/imessagehandler.h
@@ -14,7 +14,11 @@ namespace mbus {
**/
class IMessageHandler
{
+protected:
+ IMessageHandler() = default;
public:
+ IMessageHandler(const IMessageHandler &) = delete;
+ IMessageHandler & operator = (const IMessageHandler &) = delete;
virtual ~IMessageHandler() {}
/**
diff --git a/messagebus/src/vespa/messagebus/intermediatesession.h b/messagebus/src/vespa/messagebus/intermediatesession.h
index 7f190c2ea4a..4876e30f516 100644
--- a/messagebus/src/vespa/messagebus/intermediatesession.h
+++ b/messagebus/src/vespa/messagebus/intermediatesession.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <memory>
#include <string>
#include "reply.h"
@@ -17,15 +16,14 @@ class ReplyGate;
* An IntermediateSession is used to process Message and Reply objects
* on the way along a route.
**/
-class IntermediateSession : public boost::noncopyable,
- public IMessageHandler,
+class IntermediateSession : public IMessageHandler,
public IReplyHandler
{
private:
friend class MessageBus;
MessageBus &_mbus;
- string _name;
+ string _name;
IMessageHandler &_msgHandler;
IReplyHandler &_replyHandler;
ReplyGate *_gate;
diff --git a/messagebus/src/vespa/messagebus/iprotocol.h b/messagebus/src/vespa/messagebus/iprotocol.h
index c0af967f33b..18d45d9560d 100644
--- a/messagebus/src/vespa/messagebus/iprotocol.h
+++ b/messagebus/src/vespa/messagebus/iprotocol.h
@@ -18,7 +18,11 @@ namespace mbus {
* also have support for the same set of routing policies.
*/
class IProtocol {
+protected:
+ IProtocol() = default;
public:
+ IProtocol(const IProtocol &) = delete;
+ IProtocol & operator = (const IProtocol &) = delete;
virtual ~IProtocol() {}
/**
diff --git a/messagebus/src/vespa/messagebus/ireplyhandler.h b/messagebus/src/vespa/messagebus/ireplyhandler.h
index c30ca63c519..c29717cd748 100644
--- a/messagebus/src/vespa/messagebus/ireplyhandler.h
+++ b/messagebus/src/vespa/messagebus/ireplyhandler.h
@@ -13,7 +13,11 @@ namespace mbus {
**/
class IReplyHandler
{
+protected:
+ IReplyHandler() = default;
public:
+ IReplyHandler(const IReplyHandler &) = delete;
+ IReplyHandler & operator = (const IReplyHandler &) = delete;
virtual ~IReplyHandler() {}
/**
diff --git a/messagebus/src/vespa/messagebus/messagebus.h b/messagebus/src/vespa/messagebus/messagebus.h
index 5bcfdef20a1..483915eee25 100644
--- a/messagebus/src/vespa/messagebus/messagebus.h
+++ b/messagebus/src/vespa/messagebus/messagebus.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <map>
#include <vespa/messagebus/network/inetworkowner.h>
#include <vespa/messagebus/routing/resender.h>
diff --git a/messagebus/src/vespa/messagebus/messenger.h b/messagebus/src/vespa/messagebus/messenger.h
index 34c02ed1cad..6dfe0636583 100644
--- a/messagebus/src/vespa/messagebus/messenger.h
+++ b/messagebus/src/vespa/messagebus/messenger.h
@@ -17,15 +17,17 @@ namespace mbus {
* tasks. Tasks are enqueued using the synchronized {@link #enqueue(Task)}
* method, and are run in the order they were enqueued.
*/
-class Messenger : public boost::noncopyable,
- public FastOS_Runnable {
+class Messenger : public FastOS_Runnable {
public:
/**
* Defines the required interface for tasks to be posted to this worker.
*/
- class ITask : public boost::noncopyable,
- public vespalib::Executor::Task {
+ class ITask : public vespalib::Executor::Task {
+ protected:
+ ITask() = default;
public:
+ ITask(const ITask &) = delete;
+ ITask & operator = (const ITask &) = delete;
/**
* Convenience typedefs.
*/
diff --git a/messagebus/src/vespa/messagebus/network/inetwork.h b/messagebus/src/vespa/messagebus/network/inetwork.h
index cf98711bacd..9ca024d77a0 100644
--- a/messagebus/src/vespa/messagebus/network/inetwork.h
+++ b/messagebus/src/vespa/messagebus/network/inetwork.h
@@ -17,7 +17,11 @@ namespace mbus {
* sure it outlives the MessageBus object.
*/
class INetwork {
+protected:
+ INetwork() = default;
public:
+ INetwork(const INetwork &) = delete;
+ INetwork & operator = (const INetwork &) = delete;
/**
* Destructor. Frees any allocated resources.
*/
diff --git a/messagebus/src/vespa/messagebus/network/oosmanager.h b/messagebus/src/vespa/messagebus/network/oosmanager.h
index 15a6fc48623..8ae28f30424 100644
--- a/messagebus/src/vespa/messagebus/network/oosmanager.h
+++ b/messagebus/src/vespa/messagebus/network/oosmanager.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <vespa/fnet/fnet.h>
#include <set>
#include <vespa/slobrok/sbmirror.h>
@@ -18,7 +17,7 @@ class RPCNetwork;
* service pattern in the slobrok. These servers are then polled for information. The information is compiled into a
* local repository for fast lookup.
*/
-class OOSManager : public boost::noncopyable, public FNET_Task {
+class OOSManager : public FNET_Task {
public:
/**
* Convenience typedefs.
diff --git a/messagebus/src/vespa/messagebus/network/rpcnetwork.h b/messagebus/src/vespa/messagebus/network/rpcnetwork.h
index 5585ff06cec..4f96b426abb 100644
--- a/messagebus/src/vespa/messagebus/network/rpcnetwork.h
+++ b/messagebus/src/vespa/messagebus/network/rpcnetwork.h
@@ -21,8 +21,7 @@ namespace mbus {
* Network implementation based on RPC. This class is responsible for
* keeping track of services and for sending messages to services.
**/
-class RPCNetwork : public boost::noncopyable,
- public INetwork,
+class RPCNetwork : public INetwork,
public FRT_Invokable {
private:
struct SendContext : public RPCTarget::IVersionHandler {
diff --git a/messagebus/src/vespa/messagebus/network/rpcsendadapter.h b/messagebus/src/vespa/messagebus/network/rpcsendadapter.h
index 91ba5de24b7..136f2a0f23c 100644
--- a/messagebus/src/vespa/messagebus/network/rpcsendadapter.h
+++ b/messagebus/src/vespa/messagebus/network/rpcsendadapter.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <memory>
#include <vespa/vespalib/util/referencecounter.h>
@@ -15,9 +14,13 @@ class RPCNetwork;
* outgoing RPC sends. The {@link RPCNetwork} maintains a list of supported RPC
* signatures, and dispatches sends to the corresponding adapter.
*/
-class RPCSendAdapter : public boost::noncopyable
+class RPCSendAdapter
{
+protected:
+ RPCSendAdapter() = default;
public:
+ RPCSendAdapter(const RPCSendAdapter &) = delete;
+ RPCSendAdapter & operator = (const RPCSendAdapter &) = delete;
/**
* Required for inheritance.
*/
diff --git a/messagebus/src/vespa/messagebus/network/rpcsendv1.cpp b/messagebus/src/vespa/messagebus/network/rpcsendv1.cpp
index 642e8c64089..ce41df12a7c 100644
--- a/messagebus/src/vespa/messagebus/network/rpcsendv1.cpp
+++ b/messagebus/src/vespa/messagebus/network/rpcsendv1.cpp
@@ -19,7 +19,7 @@ namespace {
* Implements a helper class to hold the necessary context to create a reply from
* an rpc return value. This object is held as the context of an FRT_RPCRequest.
*/
-class SendContext : public boost::noncopyable {
+class SendContext {
private:
mbus::RoutingNode &_recipient;
mbus::Trace _trace;
@@ -27,7 +27,8 @@ private:
public:
typedef std::unique_ptr<SendContext> UP;
-
+ SendContext(const SendContext &) = delete;
+ SendContext & operator = (const SendContext &) = delete;
SendContext(mbus::RoutingNode &recipient, uint64_t timeRemaining)
: _recipient(recipient),
_trace(recipient.getTrace().getLevel()),
@@ -41,13 +42,15 @@ public:
* Implements a helper class to hold the necessary context to send a reply as an
* rpc return value. This object is held in the callstack of the reply.
*/
-class ReplyContext : public boost::noncopyable {
+class ReplyContext {
private:
FRT_RPCRequest &_request;
vespalib::Version _version;
public:
typedef std::unique_ptr<ReplyContext> UP;
+ ReplyContext(const ReplyContext &) = delete;
+ ReplyContext & operator = (const ReplyContext &) = delete;
ReplyContext(FRT_RPCRequest &request, const vespalib::Version &version)
: _request(request), _version(version) { }
diff --git a/messagebus/src/vespa/messagebus/network/rpcservice.h b/messagebus/src/vespa/messagebus/network/rpcservice.h
index 95e2bfaa377..f4f660e7e09 100644
--- a/messagebus/src/vespa/messagebus/network/rpcservice.h
+++ b/messagebus/src/vespa/messagebus/network/rpcservice.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <vespa/slobrok/sbmirror.h>
#include <vespa/slobrok/sbregister.h>
#include <vespa/vespalib/util/linkedptr.h>
@@ -16,7 +15,7 @@ class RPCNetwork;
* The sessions are monitored using the slobrok. If multiple sessions are
* available, round robin is used to balance load between them.
*/
-class RPCService : public boost::noncopyable {
+class RPCService {
private:
typedef slobrok::api::IMirrorAPI Mirror;
typedef slobrok::api::MirrorAPI::SpecList AddressList;
@@ -29,6 +28,8 @@ private:
public:
typedef vespalib::LinkedPtr<RPCService> LP;
+ RPCService(const RPCService &) = delete;
+ RPCService & operator = (const RPCService &) = delete;
/**
* Create a new RPCService backed by the given network and using
* the given service pattern.
diff --git a/messagebus/src/vespa/messagebus/network/rpcservicepool.h b/messagebus/src/vespa/messagebus/network/rpcservicepool.h
index e25cfbb4903..55fac7da577 100644
--- a/messagebus/src/vespa/messagebus/network/rpcservicepool.h
+++ b/messagebus/src/vespa/messagebus/network/rpcservicepool.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include "rpcservice.h"
#include <vespa/vespalib/stllike/lrucache_map.h>
@@ -13,7 +12,7 @@ class RPCNetwork;
* Class used to reuse services for the same pattern when sending messages over
* the rpc network.
*/
-class RPCServicePool : public boost::noncopyable {
+class RPCServicePool {
private:
typedef vespalib::lrucache_map< vespalib::LruParam<string, RPCService::LP> > ServiceCache;
@@ -21,6 +20,8 @@ private:
ServiceCache _lru;
public:
+ RPCServicePool(const RPCServicePool &) = delete;
+ RPCServicePool & operator = (const RPCServicePool &) = delete;
/**
* Create a new service pool for the given network.
*
diff --git a/messagebus/src/vespa/messagebus/network/rpctargetpool.h b/messagebus/src/vespa/messagebus/network/rpctargetpool.h
index 3e4fa953bb5..11f90272175 100644
--- a/messagebus/src/vespa/messagebus/network/rpctargetpool.h
+++ b/messagebus/src/vespa/messagebus/network/rpctargetpool.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <map>
#include <vespa/messagebus/itimer.h>
#include <vespa/vespalib/util/sync.h>
@@ -16,7 +15,7 @@ namespace mbus {
* Class used to reuse targets for the same address when sending messages over
* the rpc network.
*/
-class RPCTargetPool : public boost::noncopyable {
+class RPCTargetPool {
private:
/**
* Implements a helper class holds the necessary reference and token counter
@@ -37,6 +36,8 @@ private:
uint64_t _expireMillis;
public:
+ RPCTargetPool(const RPCTargetPool &) = delete;
+ RPCTargetPool & operator = (const RPCTargetPool &) = delete;
/**
* Constructs a new instance of this class, and registers the {@link
* SystemTimer} for detecting and closing connections that have expired
diff --git a/messagebus/src/vespa/messagebus/protocolrepository.h b/messagebus/src/vespa/messagebus/protocolrepository.h
index 05917a8d5c0..2a09e28bdc7 100644
--- a/messagebus/src/vespa/messagebus/protocolrepository.h
+++ b/messagebus/src/vespa/messagebus/protocolrepository.h
@@ -11,7 +11,7 @@ namespace mbus {
* Implements a thread-safe repository for protocols and their routing policies. This manages an internal cache of
* routing policies so that similarly referenced policy directives share the same instance of a policy.
*/
-class ProtocolRepository : public boost::noncopyable {
+class ProtocolRepository {
private:
typedef std::map<string, IProtocol::SP> ProtocolMap;
typedef std::map<string, IRoutingPolicy::SP> RoutingPolicyCache;
@@ -21,7 +21,9 @@ private:
RoutingPolicyCache _routingPolicyCache;
public:
-
+ ProtocolRepository(const ProtocolRepository &) = delete;
+ ProtocolRepository & operator = (const ProtocolRepository &) = delete;
+ ProtocolRepository() = default;
/**
* Registers a protocol with this repository. This will overwrite any protocol that was registered earlier
* that has the same name. If this method detects a protocol replacement, it will clear its internal
diff --git a/messagebus/src/vespa/messagebus/replygate.h b/messagebus/src/vespa/messagebus/replygate.h
index 121a66edd3f..add66544e02 100644
--- a/messagebus/src/vespa/messagebus/replygate.h
+++ b/messagebus/src/vespa/messagebus/replygate.h
@@ -2,7 +2,6 @@
#pragma once
-#include <boost/utility.hpp>
#include <vespa/vespalib/util/referencecounter.h>
#include "idiscardhandler.h"
#include "imessagehandler.h"
@@ -21,8 +20,7 @@ namespace mbus {
* is handled outside this class. Note that this class is only intended for
* internal use.
*/
-class ReplyGate : public boost::noncopyable,
- public vespalib::ReferenceCounter,
+class ReplyGate : public vespalib::ReferenceCounter,
public IDiscardHandler,
public IMessageHandler,
public IReplyHandler
diff --git a/messagebus/src/vespa/messagebus/routable.h b/messagebus/src/vespa/messagebus/routable.h
index d40c80a736b..8bb5db297a2 100644
--- a/messagebus/src/vespa/messagebus/routable.h
+++ b/messagebus/src/vespa/messagebus/routable.h
@@ -2,7 +2,6 @@
#pragma once
#include <memory>
-#include <boost/utility.hpp>
#include <vespa/messagebus/blob.h>
#include <vespa/messagebus/callstack.h>
#include <vespa/messagebus/context.h>
@@ -25,7 +24,7 @@ namespace mbus {
* transfer the state from a message to the corresponding reply, or to a
* different message if the application decides to replace it.
*/
-class Routable : public boost::noncopyable {
+class Routable {
private:
Context _context;
CallStack _stack;
@@ -36,6 +35,8 @@ public:
* Convenience typedef for an auto pointer to a Routable object.
*/
typedef std::unique_ptr<Routable> UP;
+ Routable(const Routable &) = delete;
+ Routable & operator = (const Routable &) = delete;
/**
* Constructs a new instance of this class.
diff --git a/messagebus/src/vespa/messagebus/routing/iroutingpolicy.h b/messagebus/src/vespa/messagebus/routing/iroutingpolicy.h
index 8fabd5210c3..55072577310 100644
--- a/messagebus/src/vespa/messagebus/routing/iroutingpolicy.h
+++ b/messagebus/src/vespa/messagebus/routing/iroutingpolicy.h
@@ -22,13 +22,13 @@ public:
typedef std::unique_ptr<IRoutingPolicy> UP;
typedef std::shared_ptr<IRoutingPolicy> SP;
-public:
+ IRoutingPolicy(const IRoutingPolicy &) = delete;
+ IRoutingPolicy & operator = (const IRoutingPolicy &) = delete;
+
/**
* Destructor. Frees any allocated resources.
*/
- virtual ~IRoutingPolicy() {
- // empty
- }
+ virtual ~IRoutingPolicy() { }
/**
* This function must choose a set of services that is to receive the given message from a list of possible
@@ -47,6 +47,9 @@ public:
* @param context The complete context for the invokation of this policy. Contains all available data.
*/
virtual void merge(RoutingContext &context) = 0;
+
+protected:
+ IRoutingPolicy() = default;
};
} // namespace mbus
diff --git a/messagebus/src/vespa/messagebus/routing/resender.h b/messagebus/src/vespa/messagebus/routing/resender.h
index 43f195dae09..be013ddfe97 100644
--- a/messagebus/src/vespa/messagebus/routing/resender.h
+++ b/messagebus/src/vespa/messagebus/routing/resender.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <vespa/messagebus/queue.h>
#include <vespa/messagebus/reply.h>
#include <queue>
@@ -20,7 +19,7 @@ class RoutingNode;
* internal thread, it depends on message bus to keep polling it whenever it has
* time.
*/
-class Resender : public boost::noncopyable
+class Resender
{
private:
typedef std::pair<uint64_t, RoutingNode*> Entry;
@@ -40,6 +39,8 @@ public:
* Convenience typedefs.
*/
typedef std::unique_ptr<Resender> UP;
+ Resender(const Resender &) = delete;
+ Resender & operator = (const Resender &) = delete;
/**
* Constructs a new resender.
diff --git a/messagebus/src/vespa/messagebus/routing/routingtable.h b/messagebus/src/vespa/messagebus/routing/routingtable.h
index 84b371ea229..9d398c313bd 100644
--- a/messagebus/src/vespa/messagebus/routing/routingtable.h
+++ b/messagebus/src/vespa/messagebus/routing/routingtable.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <map>
#include <string>
#include "hopblueprint.h"
@@ -22,7 +21,7 @@ class Message;
* @author <a href="mailto:simon@yahoo-inc.com">Simon Thoresen</a>
* @version $Id$
*/
-class RoutingTable : public boost::noncopyable {
+class RoutingTable {
private:
string _name;
std::map<string, HopBlueprint> _hops;
@@ -65,6 +64,8 @@ public:
* Convenience typedef for a shared pointer to a RoutingTable object.
*/
typedef std::shared_ptr<RoutingTable> SP;
+ RoutingTable(const RoutingTable &) = delete;
+ RoutingTable & operator = (const RoutingTable &) = delete;
/**
* Creates a new routing table based on a given specification. This also verifies the integrity of the table.
diff --git a/messagebus/src/vespa/messagebus/rpcmessagebus.h b/messagebus/src/vespa/messagebus/rpcmessagebus.h
index 022a5825110..de120b55e62 100644
--- a/messagebus/src/vespa/messagebus/rpcmessagebus.h
+++ b/messagebus/src/vespa/messagebus/rpcmessagebus.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <vespa/messagebus/network/rpcnetwork.h>
#include <string>
#include <vespa/config/helper/legacysubscriber.h>
@@ -18,7 +17,7 @@ namespace mbus {
* note that according to the object delete order, you must delete all sessions
* before deleting the underlying MessageBus object.
*/
-class RPCMessageBus : public boost::noncopyable {
+class RPCMessageBus {
private:
RPCNetwork _net;
MessageBus _bus;
@@ -31,6 +30,8 @@ public:
*/
typedef std::unique_ptr<RPCMessageBus> UP;
typedef std::shared_ptr<RPCMessageBus> SP;
+ RPCMessageBus(const RPCMessageBus &) = delete;
+ RPCMessageBus & operator = (const RPCMessageBus &) = delete;
/**
* Constructs a new instance of this class.
diff --git a/messagebus/src/vespa/messagebus/sendproxy.h b/messagebus/src/vespa/messagebus/sendproxy.h
index 36de3ab8aff..1bd880947c1 100644
--- a/messagebus/src/vespa/messagebus/sendproxy.h
+++ b/messagebus/src/vespa/messagebus/sendproxy.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <vespa/messagebus/routing/routingtable.h>
#include <vespa/messagebus/routing/routingnode.h>
@@ -14,8 +13,7 @@ class MessageBus;
* attached to it and returned to the application. After the reply has been propagated upwards, this object
* deletes itself. This also implements the discard policy of {@link RoutingNode}.
*/
-class SendProxy : public boost::noncopyable,
- public IDiscardHandler,
+class SendProxy : public IDiscardHandler,
public IMessageHandler,
public IReplyHandler {
private:
diff --git a/messagebus/src/vespa/messagebus/sequencer.h b/messagebus/src/vespa/messagebus/sequencer.h
index aee26c0a9ca..4551ee032a2 100644
--- a/messagebus/src/vespa/messagebus/sequencer.h
+++ b/messagebus/src/vespa/messagebus/sequencer.h
@@ -2,7 +2,6 @@
#pragma once
-#include <boost/utility.hpp>
#include <map>
#include <vespa/vespalib/util/sync.h>
#include "imessagehandler.h"
@@ -18,8 +17,7 @@ namespace mbus {
* object implementing the IMessageHandler API to use for sending messages. This class is used by the
* SourceSession class and is not intended for external use.
*/
-class Sequencer : public boost::noncopyable,
- public IMessageHandler,
+class Sequencer : public IMessageHandler,
public IReplyHandler
{
private:
diff --git a/messagebus/src/vespa/messagebus/sourcesession.h b/messagebus/src/vespa/messagebus/sourcesession.h
index af2c4ff6c92..c40b5418ec1 100644
--- a/messagebus/src/vespa/messagebus/sourcesession.h
+++ b/messagebus/src/vespa/messagebus/sourcesession.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <vespa/vespalib/util/sync.h>
#include "ireplyhandler.h"
#include "result.h"
@@ -18,7 +17,7 @@ class ReplyGate;
* objects back. A source session does not have a service name and can only receive replies to the messages
* sent on it.
**/
-class SourceSession : public boost::noncopyable, public IReplyHandler {
+class SourceSession : public IReplyHandler {
private:
friend class MessageBus;
diff --git a/messagebus/src/vespa/messagebus/testlib/custompolicy.h b/messagebus/src/vespa/messagebus/testlib/custompolicy.h
index d054706312b..83d6cf73eb6 100644
--- a/messagebus/src/vespa/messagebus/testlib/custompolicy.h
+++ b/messagebus/src/vespa/messagebus/testlib/custompolicy.h
@@ -1,13 +1,12 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <boost/utility.hpp>
#include <vespa/messagebus/routing/iroutingpolicy.h>
#include "simpleprotocol.h"
namespace mbus {
-class CustomPolicy : public boost::noncopyable, public IRoutingPolicy {
+class CustomPolicy : public IRoutingPolicy {
private:
bool _selectOnRetry;
std::vector<uint32_t> _consumableErrors;
diff --git a/messagebus/src/vespa/messagebus/testlib/simpleprotocol.h b/messagebus/src/vespa/messagebus/testlib/simpleprotocol.h
index 4a57d86f4a7..0a0dee5085a 100644
--- a/messagebus/src/vespa/messagebus/testlib/simpleprotocol.h
+++ b/messagebus/src/vespa/messagebus/testlib/simpleprotocol.h
@@ -2,14 +2,13 @@
#pragma once
-#include <boost/utility.hpp>
#include <map>
#include <string>
#include <vespa/messagebus/iprotocol.h>
namespace mbus {
-class SimpleProtocol : public boost::noncopyable, public IProtocol {
+class SimpleProtocol : public IProtocol {
public:
/**
* Defines a policy factory interface that tests can use to register arbitrary policies with this protocol.
diff --git a/messagebus/src/vespa/messagebus/testlib/testserver.h b/messagebus/src/vespa/messagebus/testlib/testserver.h
index ed0720eef1a..8070b499d99 100644
--- a/messagebus/src/vespa/messagebus/testlib/testserver.h
+++ b/messagebus/src/vespa/messagebus/testlib/testserver.h
@@ -2,7 +2,6 @@
#pragma once
-#include <boost/utility.hpp>
#include <memory>
#include <vespa/messagebus/messagebus.h>
#include <vespa/messagebus/network/rpcnetwork.h>
@@ -27,9 +26,11 @@ public:
void setVersion(const vespalib::Version &version);
};
-class TestServer : public boost::noncopyable {
+class TestServer {
public:
typedef std::unique_ptr<TestServer> UP;
+ TestServer(const TestServer &) = delete;
+ TestServer & operator = (const TestServer &) = delete;
VersionedRPCNetwork net;
MessageBus mb;