![]() |
Dripline-Cpp
v2.4.2
Dripline Implementation in C++
|
Classes | |
| class | agent |
| Takes command-line arguments and sends messages. More... | |
| class | agent_config |
| Sets the default agent configuration. More... | |
| struct | base_executor |
| Base class for executors. More... | |
| class | concurrent_receiver |
| Receives and processes messages concurrently. More... | |
| class | connection_error |
| Error indicating a problem with the connection to the broker. More... | |
| class | copy_code |
| Stores a copy of the return-code value, name, and description, either as a custom return-code or copying from any return_code-derived class. More... | |
| class | core |
| Basic AMQP interactions, including sending messages and interacting with AMQP channels. More... | |
| class | custom_return_code_registrar |
| struct | dl_amqp_error |
| struct | dl_amqp_error_broker_connection |
| struct | dl_amqp_error_routingkey_notfound |
| struct | dl_client_error |
| struct | dl_client_error_handling_reply |
| struct | dl_client_error_invalid_request |
| struct | dl_client_error_timeout |
| struct | dl_client_error_unable_to_send |
| struct | dl_resource_error |
| struct | dl_resource_error_connection |
| struct | dl_resource_error_no_response |
| struct | dl_resource_error_sub_service |
| struct | dl_service_error |
| struct | dl_service_error_access_denied |
| struct | dl_service_error_bad_payload |
| struct | dl_service_error_decoding_fail |
| struct | dl_service_error_invalid_key |
| struct | dl_service_error_invalid_method |
| struct | dl_service_error_invalid_specifier |
| struct | dl_service_error_invalid_value |
| struct | dl_service_error_no_encoding |
| struct | dl_service_error_timeout |
| struct | dl_success |
| struct | dl_unhandled_exception |
| struct | dl_warning_deprecated_feature |
| struct | dl_warning_dry_run |
| struct | dl_warning_no_action_taken |
| struct | dl_warning_offline |
| struct | dl_warning_sub_service |
| class | dripline_config |
Sets the default configuration used by core. More... | |
| class | dripline_error |
| Dripline-specific errors. More... | |
| class | endpoint |
| Basic Dripline object capable of receiving and acting on messages. More... | |
| class | endpoint_listener_receiver |
| Decorator class for a plain endpoint: adds listener_receiver capabilities. More... | |
| class | heartbeater |
| A heartbeater repeatedly sends an alert on a particular time interval. More... | |
| class | hub |
| Service class aimed at adding a Dripline API to an existing codebase. More... | |
| struct | incoming_message_pack |
| Stores the basic information about a set of message chunks that will eventually make a Dripline message. More... | |
| class | listener |
| A listener is a class capable of listening for AMQP messages on an AMQP channel. This class provides the basic framework for doing that. More... | |
| class | listener_receiver |
| Convenience class to bring together listener and concurrent_receiver. More... | |
| class | message |
| Contains all of the information common to all types of Dripline messages. More... | |
| class | monitor |
| Listens for messages sent to a particular set of keys and prints them. More... | |
| class | monitor_config |
| Sets the default message-monitor configuration. More... | |
| class | msg_alert |
| Alert message class. More... | |
| class | msg_reply |
| Reply message class. More... | |
| class | msg_request |
| Request message class. More... | |
| class | oscillator |
| class | oscillator_ep |
| class | oscillator_ep_amplitude |
| class | oscillator_ep_frequency |
| class | oscillator_ep_in_phase |
| class | oscillator_ep_iq |
| class | oscillator_ep_quadrature |
| class | oscillator_service_endpoints |
| class | oscillator_service_hub |
| class | receiver |
| A receiver is able to collect Dripline message chunks and reassemble them into a complete Dripline message. More... | |
| class | relayer |
| Asynchronous message sending. More... | |
| class | reply_cache |
| A singleton throw_reply object used to transfer throw_reply information to C++ from other implementations (e.g. Python) More... | |
| class | return_code |
| Base class for return codes. More... | |
| class | routing_key |
| Parses routing keys and stores the tokenized information. More... | |
| class | scheduler |
| Executes scheduled events. More... | |
| class | sent_msg_pkg |
| Contains information about sent messages. More... | |
| class | service |
| Consumer of Dripline messages on a particular queue. More... | |
| struct | simple_executor |
Given an executable function object, uses operator() to execute it. More... | |
| class | simple_service |
| class | specifier |
| Parses specifiers and stores the tokenized information. More... | |
| class | throw_reply |
| Object that can be thrown while processing a request to send a reply. More... | |
| class | version |
| Semantic version class to store dripline-cpp version and package information. More... | |
| class | version_dripline_protocol |
| Semantic version class to store dripline protocol version information. More... | |
| class | version_store |
| Singleton class to store all version information relevant in any particular application context. More... | |
| struct | version_store_adder |
| Version adder struct to enable adding version classes at static initialization. See ADD_VERSION. More... | |
Typedefs | |
| typedef AmqpClient::Channel::ptr_t | amqp_channel_ptr |
| typedef AmqpClient::Envelope::ptr_t | amqp_envelope_ptr |
| typedef AmqpClient::BasicMessage::ptr_t | amqp_message_ptr |
| typedef AmqpClient::AmqpException | amqp_exception |
| typedef AmqpClient::AmqpLibraryException | amqp_lib_exception |
| typedef std::vector< amqp_message_ptr > | amqp_split_message_ptrs |
| typedef std::shared_ptr< message > | message_ptr_t |
| typedef std::shared_ptr< msg_request > | request_ptr_t |
| typedef std::shared_ptr< msg_reply > | reply_ptr_t |
| typedef std::shared_ptr< msg_alert > | alert_ptr_t |
| typedef std::shared_ptr< sent_msg_pkg > | sent_msg_pkg_ptr |
| typedef std::shared_ptr< listener > | listener_ptr_t |
| typedef std::shared_ptr< listener_receiver > | lr_ptr_t |
| typedef std::shared_ptr< endpoint_listener_receiver > | elr_ptr_t |
| typedef std::shared_ptr< endpoint > | endpoint_ptr_t |
| typedef std::shared_ptr< service > | service_ptr_t |
| typedef std::map< std::string, incoming_message_pack > | incoming_message_map |
| typedef boost::uuids::uuid | uuid_t |
| Universally-unique-identifier type containing 16 hexadecimal characters. More... | |
Enumerations | |
| enum | op_t : uint32_t { set = 0, get = 1, cmd = 9, unknown = UINT32_MAX } |
| enum | msg_t : uint32_t { reply = 2, request = 3, alert = 4, unknown = UINT32_MAX } |
Functions | |
| static scarab::logger | dlog ("agent") |
| scarab::param_ptr_t | table_to_param (const AmqpClient::Table &a_table) |
| scarab::param_ptr_t | table_to_param (const AmqpClient::Array &a_array) |
| scarab::param_ptr_t | table_to_param (const AmqpClient::TableValue &a_value) |
| AmqpClient::TableValue | param_to_table (const scarab::param_node &a_node) |
| AmqpClient::TableValue | param_to_table (const scarab::param_array &a_array) |
| AmqpClient::TableValue | param_to_table (const scarab::param_value &a_value) |
| AmqpClient::TableValue | param_to_table (const scarab::param &a_param) |
| static scarab::logger | dlog ("amqp") |
| void | add_dripline_options (scarab::main_app &an_app) |
| Add basic AMQP options to an app object. More... | |
| uint32_t | to_uint (op_t an_op) |
| Convert a message-operation enum to an integer. More... | |
| op_t | to_op_t (uint32_t an_op_uint) |
| std::ostream & | operator<< (std::ostream &a_os, op_t an_op) |
| Pass the integer-equivalent of a message-operation enum to an ostream. More... | |
| std::string | to_string (op_t an_op) |
| Gives the human-readable version of a message operation. More... | |
| op_t | to_op_t (std::string an_op_str) |
| uint32_t | to_uint (msg_t a_msg) |
| Convert a message-type enum to an integer. More... | |
| msg_t | to_msg_t (uint32_t a_msg_uint) |
| std::ostream & | operator<< (std::ostream &a_os, msg_t a_msg) |
| Pass the integer-equivalent of a message-type enum to an ostream. More... | |
| std::string | to_string (msg_t a_msg) |
| Gives the human-readable version of the message type. More... | |
| msg_t | to_msg_t (std::string a_msg_str) |
| static scarab::logger | dlog ("hub") |
| static scarab::logger | dlog ("listener") |
| static scarab::logger | dlog ("message") |
| bool | operator== (const message &a_lhs, const message &a_rhs) |
| bool | operator== (const msg_request &a_lhs, const msg_request &a_rhs) |
| bool | operator== (const msg_reply &a_lhs, const msg_reply &a_rhs) |
| bool | operator== (const msg_alert &a_lhs, const msg_alert &a_rhs) |
| std::ostream & | operator<< (std::ostream &a_os, message::encoding a_enc) |
| std::ostream & | operator<< (std::ostream &a_os, const message &a_message) |
| std::ostream & | operator<< (std::ostream &a_os, const msg_request &a_message) |
| std::ostream & | operator<< (std::ostream &a_os, const msg_reply &a_message) |
| std::ostream & | operator<< (std::ostream &a_os, const msg_alert &a_message) |
| static scarab::logger | dlog ("relayer") |
| void | set_reply_cache (const return_code &a_code, const std::string &a_message, scarab::param_ptr_t a_payload_ptr) |
| Set the contents of the reply cache (functional access to the singleton reply_cache) More... | |
| bool | operator== (const return_code &a_lhs, const return_code &a_rhs) |
| std::ostream & | operator<< (std::ostream &a_os, const return_code &a_rc) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_success > | t_dl_success_rc_reg (0) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_warning_no_action_taken > | t_dl_warning_no_action_taken_rc_reg (1) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_warning_deprecated_feature > | t_dl_warning_deprecated_feature_rc_reg (2) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_warning_dry_run > | t_dl_warning_dry_run_rc_reg (3) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_warning_offline > | t_dl_warning_offline_rc_reg (4) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_warning_sub_service > | t_dl_warning_sub_service_rc_reg (5) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_amqp_error > | t_dl_amqp_error_rc_reg (100) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_amqp_error_broker_connection > | t_dl_amqp_error_broker_connection_rc_reg (101) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_amqp_error_routingkey_notfound > | t_dl_amqp_error_routingkey_notfound_rc_reg (102) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_resource_error > | t_dl_resource_error_rc_reg (200) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_resource_error_connection > | t_dl_resource_error_connection_rc_reg (201) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_resource_error_no_response > | t_dl_resource_error_no_response_rc_reg (202) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_resource_error_sub_service > | t_dl_resource_error_sub_service_rc_reg (203) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error > | t_dl_service_error_rc_reg (300) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_no_encoding > | t_dl_service_error_no_encoding_rc_reg (301) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_decoding_fail > | t_dl_service_error_decoding_fail_rc_reg (302) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_bad_payload > | t_dl_service_error_bad_payload_rc_reg (303) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_invalid_value > | t_dl_service_error_invalid_value_rc_reg (304) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_timeout > | t_dl_service_error_timeout_rc_reg (305) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_invalid_method > | t_dl_service_error_invalid_method_rc_reg (306) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_access_denied > | t_dl_service_error_access_denied_rc_reg (307) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_invalid_key > | t_dl_service_error_invalid_key_rc_reg (308) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_service_error_invalid_specifier > | t_dl_service_error_invalid_specifier_rc_reg (310) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_client_error > | t_dl_client_error_rc_reg (400) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_client_error_invalid_request > | t_dl_client_error_invalid_request_rc_reg (401) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_client_error_handling_reply > | t_dl_client_error_handling_reply_rc_reg (402) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_client_error_unable_to_send > | t_dl_client_error_unable_to_send_rc_reg (403) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_client_error_timeout > | t_dl_client_error_timeout_rc_reg (404) |
| static scarab::indexed_registrar< unsigned, ::dripline::return_code, dl_unhandled_exception > | t_dl_unhandled_exception_rc_reg (999) |
| void | add_return_code (unsigned a_value, const std::string &a_name, const std::string &a_description) |
| Helper function to add a return code (primarily for python binding); scarab::error will be thrown if the value is not unique. More... | |
| bool | check_and_add_return_code (unsigned a_value, const std::string &a_name, const std::string &a_description) |
| std::vector< unsigned > | get_return_code_values () |
| std::map< unsigned, std::unique_ptr< return_code > > | get_return_codes_map () |
| static scarab::logger | dlog ("service") |
| uuid_t | generate_random_uuid () |
| Generates a UUID containing random numbers (RNG is a Mersenne Twister) More... | |
| uuid_t | generate_nil_uuid () |
| Generates a UUID containing all 0s. More... | |
| uuid_t | uuid_from_string (const std::string &a_id_str) |
| uuid_t | uuid_from_string (const char *a_id_str) |
| uuid_t | uuid_from_string (const std::string &a_id_str, bool &a_valid_flag) |
| uuid_t | uuid_from_string (const char *a_id_str, bool &a_valid_flag) |
| std::string | string_from_uuid (const uuid_t &a_id) |
| Generates a string representation of the provided UUID. More... | |
| void | add_version (const std::string &a_name, scarab::version_semantic_ptr_t a_version_ptr) |
| template<typename x_version > | |
| std::shared_ptr< version_store_adder< x_version > > | add_version (const std::string &a_name) |
| typedef std::shared_ptr< msg_alert > alert_ptr_t |
Definition at line 25 of file dripline_fwd.hh.
| typedef AmqpClient::Channel::ptr_t amqp_channel_ptr |
| typedef AmqpClient::Envelope::ptr_t amqp_envelope_ptr |
| typedef AmqpClient::AmqpException amqp_exception |
| typedef AmqpClient::AmqpLibraryException amqp_lib_exception |
| typedef AmqpClient::BasicMessage::ptr_t amqp_message_ptr |
| typedef std::vector< amqp_message_ptr > amqp_split_message_ptrs |
| typedef std::shared_ptr< endpoint_listener_receiver > elr_ptr_t |
Definition at line 36 of file dripline_fwd.hh.
| typedef std::shared_ptr< endpoint > endpoint_ptr_t |
Definition at line 39 of file dripline_fwd.hh.
| typedef std::map< std::string, incoming_message_pack > incoming_message_map |
Definition at line 44 of file receiver.hh.
| typedef std::shared_ptr< listener > listener_ptr_t |
Definition at line 30 of file dripline_fwd.hh.
| typedef std::shared_ptr< listener_receiver > lr_ptr_t |
Definition at line 33 of file dripline_fwd.hh.
| typedef std::shared_ptr< message > message_ptr_t |
Definition at line 20 of file dripline_fwd.hh.
| typedef std::shared_ptr< msg_reply > reply_ptr_t |
Definition at line 24 of file dripline_fwd.hh.
| typedef std::shared_ptr< msg_request > request_ptr_t |
Definition at line 23 of file dripline_fwd.hh.
| typedef std::shared_ptr< sent_msg_pkg > sent_msg_pkg_ptr |
Definition at line 27 of file dripline_fwd.hh.
| typedef std::shared_ptr< service > service_ptr_t |
Definition at line 42 of file dripline_fwd.hh.
| typedef boost::uuids::uuid uuid_t |
|
strong |
Message Types
| Enumerator | |
|---|---|
| reply | |
| request | |
| alert | |
| unknown | |
Definition at line 57 of file dripline_constants.hh.
|
strong |
Message Operations
| Enumerator | |
|---|---|
| set | |
| get | |
| cmd | |
| unknown | |
Definition at line 33 of file dripline_constants.hh.
| void add_dripline_options | ( | scarab::main_app & | an_app | ) |
Add basic AMQP options to an app object.
Definition at line 75 of file dripline_config.cc.
| void add_return_code | ( | unsigned | a_value, |
| const std::string & | a_name, | ||
| const std::string & | a_description | ||
| ) |
Helper function to add a return code (primarily for python binding); scarab::error will be thrown if the value is not unique.
Definition at line 90 of file return_codes.cc.
| void add_version | ( | const std::string & | a_name, |
| scarab::version_semantic_ptr_t | a_version_ptr | ||
| ) |
Definition at line 23 of file version_store.cc.
| std::shared_ptr< version_store_adder< x_version > > dripline::add_version | ( | const std::string & | a_name | ) |
Definition at line 86 of file version_store.hh.
| bool check_and_add_return_code | ( | unsigned | a_value, |
| const std::string & | a_name, | ||
| const std::string & | a_description | ||
| ) |
Helper function to add a return code (primarily for python binding) A return of true means the return code was added. A return of false means the return code was not added because it already exists.
Definition at line 97 of file return_codes.cc.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
| uuid_t generate_nil_uuid | ( | ) |
| uuid_t generate_random_uuid | ( | ) |
| std::vector< unsigned > get_return_code_values | ( | ) |
Definition at line 110 of file return_codes.cc.
| std::map< unsigned, std::unique_ptr< return_code > > get_return_codes_map | ( | ) |
Definition at line 122 of file return_codes.cc.
| std::ostream & operator<< | ( | std::ostream & | a_os, |
| op_t | an_op | ||
| ) |
Pass the integer-equivalent of a message-operation enum to an ostream.
Definition at line 25 of file dripline_constants.cc.
| std::ostream & operator<< | ( | std::ostream & | a_os, |
| const return_code & | a_rc | ||
| ) |
Definition at line 39 of file return_codes.cc.
| std::ostream & operator<< | ( | std::ostream & | a_os, |
| msg_t | a_msg | ||
| ) |
Pass the integer-equivalent of a message-type enum to an ostream.
Definition at line 59 of file dripline_constants.cc.
| std::ostream & operator<< | ( | std::ostream & | a_os, |
| message::encoding | a_enc | ||
| ) |
Definition at line 633 of file message.cc.
| std::ostream & operator<< | ( | std::ostream & | a_os, |
| const message & | a_message | ||
| ) |
Definition at line 639 of file message.cc.
| std::ostream & operator<< | ( | std::ostream & | a_os, |
| const msg_request & | a_message | ||
| ) |
Definition at line 668 of file message.cc.
| std::ostream & operator<< | ( | std::ostream & | a_os, |
| const msg_reply & | a_message | ||
| ) |
Definition at line 677 of file message.cc.
| std::ostream & operator<< | ( | std::ostream & | a_os, |
| const msg_alert & | a_message | ||
| ) |
Definition at line 685 of file message.cc.
| bool operator== | ( | const return_code & | a_lhs, |
| const return_code & | a_rhs | ||
| ) |
Definition at line 32 of file return_codes.cc.
Definition at line 586 of file message.cc.
| bool operator== | ( | const msg_request & | a_lhs, |
| const msg_request & | a_rhs | ||
| ) |
Definition at line 613 of file message.cc.
Definition at line 621 of file message.cc.
Definition at line 628 of file message.cc.
| AmqpClient::TableValue param_to_table | ( | const scarab::param_node & | a_node | ) |
| AmqpClient::TableValue param_to_table | ( | const scarab::param_array & | a_array | ) |
| AmqpClient::TableValue param_to_table | ( | const scarab::param_value & | a_value | ) |
| AmqpClient::TableValue param_to_table | ( | const scarab::param & | a_param | ) |
| void set_reply_cache | ( | const return_code & | a_code, |
| const std::string & | a_message, | ||
| scarab::param_ptr_t | a_payload_ptr | ||
| ) |
Set the contents of the reply cache (functional access to the singleton reply_cache)
Definition at line 15 of file reply_cache.cc.
| std::string string_from_uuid | ( | const uuid_t & | a_id | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
| scarab::param_ptr_t table_to_param | ( | const AmqpClient::Table & | a_table | ) |
| scarab::param_ptr_t table_to_param | ( | const AmqpClient::Array & | a_array | ) |
| scarab::param_ptr_t table_to_param | ( | const AmqpClient::TableValue & | a_value | ) |
| msg_t to_msg_t | ( | uint32_t | a_msg_uint | ) |
Convert an integer to a message-type enum The result is unspecified for invalid integers
Definition at line 55 of file dripline_constants.cc.
| msg_t to_msg_t | ( | std::string | a_msg_str | ) |
Gives the message-type enum for a string Throws dripline_error for invalid strings
Definition at line 74 of file dripline_constants.cc.
| op_t to_op_t | ( | uint32_t | an_op_uint | ) |
Convert an integer to a message-operation enum The result is unspecified for invalid integers
Definition at line 21 of file dripline_constants.cc.
| op_t to_op_t | ( | std::string | an_op_str | ) |
Gives the message-operation enum for a string Throws dripline_error for invalid strings
Definition at line 40 of file dripline_constants.cc.
| std::string to_string | ( | op_t | an_op | ) |
Gives the human-readable version of a message operation.
Definition at line 30 of file dripline_constants.cc.
| std::string to_string | ( | msg_t | a_msg | ) |
Gives the human-readable version of the message type.
Definition at line 64 of file dripline_constants.cc.
| uint32_t to_uint | ( | op_t | an_op | ) |
Convert a message-operation enum to an integer.
Definition at line 17 of file dripline_constants.cc.
| uint32_t to_uint | ( | msg_t | a_msg | ) |
Convert a message-type enum to an integer.
Definition at line 51 of file dripline_constants.cc.
| uuid_t uuid_from_string | ( | const std::string & | a_id_str | ) |
Converts a string to a UUID object.
| a_id_str | The input UUID represented as a string. Valid formats are hhhhhhhh-hhhh-hhhh-hhhh-hhhhhhhhhhhh, where each h is a case-insensitive hexidecimal character, and hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh. |
| uuid_t uuid_from_string | ( | const std::string & | a_id_str, |
| bool & | a_valid_flag | ||
| ) |
Converts a string to a UUID object.
| [in] | a_id_str | The input UUID represented as a string. Valid formats are hhhhhhhh-hhhh-hhhh-hhhh-hhhhhhhhhhhh, where each h is a case-insensitive hexidecimal character, and hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh. |
| [out] | a_valid_flag | Returns whether the provided string was a valid UUID. |
1.8.13