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;
327 bool isIntrospectionEnabled()
const;
336 void setIsIntrospectionEnabled(
bool newValue);
343 rsc::runtime::Properties getOptions()
const;
351 rsc::runtime::Properties& mutableOptions();
358 void setOptions(
const rsc::runtime::Properties& options);
370 void handleOption(
const std::vector<std::string>& key,
371 const std::string& value);
373 void printContents(std::ostream& stream)
const;
Specification of desired quality of service settings for sending and receiving events.
QualityOfServiceSpec qosSpec
Uses stderr for printing a message.
ErrorStrategy errorStrategy
EventProcessingStrategy eventSendingStrategy
EventProcessingStrategy eventReceivingStrategy
rsc::logging::LoggerPtr logger
rsc::runtime::Properties options
rsc::runtime::Properties options
ConverterNames converters
Description of a desired transport.
ErrorStrategy
Possible error handling strategies in user-provided code like event handlers.
Logs a message using the logging mechanism.
Instances of this class describe the selection and configuration of an event processing strategy...
A class describing the configuration of Participant instances.
std::map< std::string, Transport > transports
std::set< std::pair< std::string, std::string > > ConverterNames
rsc::runtime::Properties options