123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399 |
- #pragma once
- #include "address.hpp"
- #include "message.h"
- #include "state.h"
- #include "request.hpp"
- #include "subscription_point.h"
- #include "forward.hpp"
- #include "extended_error.h"
- #if defined(_MSC_VER)
- #pragma warning(push)
- #pragma warning(disable : 4251)
- #endif
- namespace rotor {
- namespace payload {
- struct initialize_confirmation_t {};
- struct initialize_actor_t {
-
- using response_t = initialize_confirmation_t;
- };
- struct start_actor_t {};
- struct create_actor_t {
-
- actor_ptr_t actor;
-
- pt::time_duration timeout;
- };
- struct spawn_actor_t {
-
- address_ptr_t spawner_address;
- };
- struct shutdown_trigger_t {
-
- address_ptr_t actor_address;
-
- extended_error_ptr_t reason;
-
- template <typename Address, typename Reason>
- shutdown_trigger_t(Address &&address_, Reason &&reason_) noexcept
- : actor_address(std::forward<Address>(address_)), reason(std::forward<Reason>(reason_)) {}
- };
- struct shutdown_confirmation_t {};
- struct shutdown_request_t {
-
- using response_t = shutdown_confirmation_t;
-
- template <typename Reason>
- explicit shutdown_request_t(Reason &&reason_) noexcept : reason(std::forward<Reason>(reason_)) {}
-
- extended_error_ptr_t reason;
- };
- struct handler_call_t {
-
- message_ptr_t orig_message;
-
- handler_ptr_t handler;
- };
- struct external_subscription_t {
-
- subscription_point_t point;
- };
- struct subscription_confirmation_t {
-
- subscription_point_t point;
- };
- struct external_unsubscription_t {
-
- subscription_point_t point;
- };
- struct commit_unsubscription_t {
-
- subscription_point_t point;
- };
- struct unsubscription_confirmation_t {
-
- subscription_point_t point;
- };
- struct registration_response_t {};
- struct registration_request_t {
-
- using response_t = registration_response_t;
-
- std::string service_name;
-
- address_ptr_t service_addr;
- };
- struct deregistration_notify_t {
-
- address_ptr_t service_addr;
- };
- struct deregistration_service_t {
-
- std::string service_name;
- };
- struct discovery_reply_t {
-
- address_ptr_t service_addr;
- };
- struct discovery_request_t {
-
- using response_t = discovery_reply_t;
-
- std::string service_name;
- };
- struct discovery_future_t {
-
- address_ptr_t service_addr;
- };
- struct discovery_promise_t {
-
- using response_t = discovery_future_t;
-
- std::string service_name;
- };
- struct link_response_t {};
- struct link_request_t {
-
- using response_t = link_response_t;
-
- bool operational_only;
- };
- struct unlink_notify_t {
-
- address_ptr_t client_addr;
- };
- struct unlink_request_t {
-
- using response_t = unlink_notify_t;
-
- address_ptr_t server_addr;
- };
- }
- namespace message {
- using unsubscription_t = message_t<payload::unsubscription_confirmation_t>;
- using unsubscription_external_t = message_t<payload::external_unsubscription_t>;
- using subscription_t = message_t<payload::subscription_confirmation_t>;
- using external_subscription_t = message_t<payload::external_subscription_t>;
- using commit_unsubscription_t = message_t<payload::commit_unsubscription_t>;
- using handler_call_t = message_t<payload::handler_call_t>;
- using init_request_t = request_traits_t<payload::initialize_actor_t>::request::message_t;
- using init_response_t = request_traits_t<payload::initialize_actor_t>::response::message_t;
- using start_trigger_t = message_t<payload::start_actor_t>;
- using shutdown_trigger_t = message_t<payload::shutdown_trigger_t>;
- using shutdown_request_t = request_traits_t<payload::shutdown_request_t>::request::message_t;
- using shutdown_response_t = request_traits_t<payload::shutdown_request_t>::response::message_t;
- using create_actor_t = message_t<payload::create_actor_t>;
- using spawn_actor_t = message_t<payload::spawn_actor_t>;
- using registration_request_t = request_traits_t<payload::registration_request_t>::request::message_t;
- using registration_response_t = request_traits_t<payload::registration_request_t>::response::message_t;
- using deregistration_notify_t = message_t<payload::deregistration_notify_t>;
- using deregistration_service_t = message_t<payload::deregistration_service_t>;
- using discovery_request_t = request_traits_t<payload::discovery_request_t>::request::message_t;
- using discovery_response_t = request_traits_t<payload::discovery_request_t>::response::message_t;
- using discovery_promise_t = request_traits_t<payload::discovery_promise_t>::request::message_t;
- using discovery_future_t = request_traits_t<payload::discovery_promise_t>::response::message_t;
- using discovery_cancel_t = request_traits_t<payload::discovery_promise_t>::cancel::message_t;
- using link_request_t = request_traits_t<payload::link_request_t>::request::message_t;
- using link_response_t = request_traits_t<payload::link_request_t>::response::message_t;
- using unlink_notify_t = message_t<payload::unlink_notify_t>;
- using unlink_request_t = request_traits_t<payload::unlink_request_t>::request::message_t;
- using unlink_response_t = request_traits_t<payload::unlink_request_t>::response::message_t;
- }
- }
- #if defined(_MSC_VER)
- #pragma warning(pop)
- #endif
|