SObjectizer 5.8
|
Internal implementation of message limits related stuff. More...
Classes | |
class | action_msg_tracer_t |
An interface of tracer for message delivery tracing. More... | |
struct | call_pre_abort_action |
Helper class for calling pre-abort action. More... | |
struct | call_pre_abort_action_impl |
Helper class for calling pre-abort action. More... | |
struct | call_pre_abort_action_impl< false, M, L > |
Specialization for the case of signal. More... | |
Functions | |
SO_5_FUNC void | drop_message_reaction (const overlimit_context_t &ctx) |
Actual implementation of drop message reaction. | |
SO_5_FUNC void | abort_app_reaction (const overlimit_context_t &ctx) |
Actual implementation of abort application reaction. | |
SO_5_FUNC void | redirect_reaction (const overlimit_context_t &ctx, const mbox_t &to) |
Actual implementation of redirect message reaction. | |
SO_5_FUNC void | transform_reaction (const overlimit_context_t &ctx, const mbox_t &to, const std::type_index &msg_type, const message_ref_t &message) |
Actual implementation of transform reaction. | |
template<typename Message_Type , message_mutability_t Message_Mutability, typename Lambda > | |
action_t | make_action_for_message_transformer (Lambda &&transformator) |
Helper function to make an action that performs message transformation. | |
template<typename Source , typename Lambda > | |
action_t | make_action_for_signal_transformer (Lambda &&transformator) |
Helper function to make an action that performs signal transformation. | |
Internal implementation of message limits related stuff.
SO_5_FUNC void so_5::message_limit::impl::abort_app_reaction | ( | const overlimit_context_t & | ctx | ) |
Actual implementation of abort application reaction.
Definition at line 47 of file message_limit.cpp.
SO_5_FUNC void so_5::message_limit::impl::drop_message_reaction | ( | const overlimit_context_t & | ctx | ) |
Actual implementation of drop message reaction.
Definition at line 39 of file message_limit.cpp.
|
nodiscard |
Helper function to make an action that performs message transformation.
Wraps transformator into an instance of type action_t.
Message_Type | type of message to be transformed. This type should be a type of payload without so_5::immutable_msg or so_5::mutable_msg modifications. |
Message_Mutability | mutability of message. It's required to detect actual type of reference (Message_Type& or const Message_Type&) to be passed to transformator. |
Lambda | type of transformator. |
Definition at line 429 of file message_limit.hpp.
|
nodiscard |
Helper function to make an action that performs signal transformation.
Wraps transformator into an instance of type action_t.
Source | type of signal to be transformed. |
Lambda | type of transformator. |
Definition at line 491 of file message_limit.hpp.
SO_5_FUNC void so_5::message_limit::impl::redirect_reaction | ( | const overlimit_context_t & | ctx, |
const mbox_t & | to ) |
Actual implementation of redirect message reaction.
ctx | Context on which overlimit must be handled. |
to | Destination for message redirection. |
Definition at line 65 of file message_limit.cpp.
SO_5_FUNC void so_5::message_limit::impl::transform_reaction | ( | const overlimit_context_t & | ctx, |
const mbox_t & | to, | ||
const std::type_index & | msg_type, | ||
const message_ref_t & | message ) |
Actual implementation of transform reaction.
ctx | Context on which overlimit must be handled. |
to | Destination for new message. |
msg_type | Type of new message. |
message | An instance of new message. |
Definition at line 106 of file message_limit.cpp.