33 #include <boost/operators.hpp>
34 #include <boost/filesystem/path.hpp>
36 #include <rsc/logging/Logger.h>
37 #include <rsc/config/OptionHandler.h>
38 #include <rsc/runtime/Properties.h>
39 #include <rsc/runtime/Printable.h>
42 #include "rsb/rsbexports.h"
62 public rsc::runtime::Printable {
72 class RSB_EXPORT
Transport: boost::totally_ordered<Transport>,
73 public rsc::config::OptionHandler,
74 public rsc::runtime::Printable {
88 explicit Transport(
const std::string& name,
95 std::string getName()
const;
104 rsc::runtime::Properties getOptions()
const;
111 rsc::runtime::Properties& mutableOptions();
118 void setOptions(
const rsc::runtime::Properties& options);
120 bool isEnabled()
const;
122 void setEnabled(
bool value);
124 bool operator==(
const Transport& other)
const;
125 bool operator<(
const Transport& other)
const;
127 std::string getClassName()
const;
128 void printContents(std::ostream& stream)
const;
130 void handleOption(
const std::vector<std::string>& key,
131 const std::string& value);
149 public rsc::runtime::Printable {
159 std::string getName()
const;
167 void setName(
const std::string& name);
174 rsc::runtime::Properties getOptions()
const;
181 rsc::runtime::Properties& mutableOptions();
188 void setOptions(
const rsc::runtime::Properties& options);
190 void handleOption(
const std::vector<std::string>& key,
191 const std::string& value);
193 void printContents(std::ostream& stream)
const;
253 ErrorStrategy getErrorStrategy()
const;
258 void setErrorStrategy(
const ErrorStrategy& strategy);
269 std::set<Transport> getTransports(
bool includeDisabled =
false)
const;
279 Transport getTransport(
const std::string& name)
const;
289 Transport& mutableTransport(
const std::string& name);
296 void addTransport(
const Transport& transport);
304 void removeTransport(
const Transport& transport);
311 void setTransports(
const std::set<Transport>& transports);
313 const EventProcessingStrategy& getEventReceivingStrategy()
const;
315 EventProcessingStrategy& mutableEventReceivingStrategy();
318 const EventProcessingStrategy& getEventSendingStrategy()
const;
325 rsc::runtime::Properties getOptions()
const;
333 rsc::runtime::Properties& mutableOptions();
340 void setOptions(
const rsc::runtime::Properties& options);
419 void handleOption(
const std::vector<std::string>& key,
420 const std::string& value);
422 void printContents(std::ostream& stream)
const;