20#ifndef ORES_IAM_MESSAGING_ACCOUNT_HISTORY_PROTOCOL_HPP
21#define ORES_IAM_MESSAGING_ACCOUNT_HISTORY_PROTOCOL_HPP
28#include <rfl/json.hpp>
29#include "ores.comms/messaging/message_types.hpp"
30#include "ores.comms/messaging/message_traits.hpp"
31#include "ores.iam/domain/account_version_history.hpp"
49 static std::expected<get_account_history_request, ores::utility::serialization::error_code>
71 static std::expected<get_account_history_response, ores::utility::serialization::error_code>
88 static constexpr message_type request_message_type =
89 message_type::get_account_history_request;
Contains messaging related infrastructure in the comms library.
Definition assets_protocol.hpp:122
Network messaging infrastructure for the IAM module.
Definition account_history_protocol.hpp:33
Traits template for mapping request types to their response types and message type enum values.
Definition message_traits.hpp:66
Contains the full version history for an account.
Definition account_version_history.hpp:32
Request to retrieve version history for an account.
Definition account_history_protocol.hpp:38
static std::expected< get_account_history_request, ores::utility::serialization::error_code > deserialize(std::span< const std::byte > data)
Deserialize request from bytes.
Definition account_history_protocol.cpp:156
std::vector< std::byte > serialize() const
Serialize request to bytes.
Definition account_history_protocol.cpp:149
Response containing account version history.
Definition account_history_protocol.hpp:58
static std::expected< get_account_history_response, ores::utility::serialization::error_code > deserialize(std::span< const std::byte > data)
Deserialize response from bytes.
Definition account_history_protocol.cpp:191
std::vector< std::byte > serialize() const
Serialize response to bytes.
Definition account_history_protocol.cpp:169