6 #ifndef IROHA_JSON_COMMAND_FACTORY_HPP 7 #define IROHA_JSON_COMMAND_FACTORY_HPP 11 #include <unordered_map> 18 namespace converters {
25 std::shared_ptr<Command> command);
27 const rapidjson::Value &document);
31 std::shared_ptr<Command> command);
33 const rapidjson::Value &document);
38 const rapidjson::Value &document);
42 std::shared_ptr<Command> command);
44 const rapidjson::Value &document);
48 std::shared_ptr<Command> command);
50 const rapidjson::Value &document);
54 std::shared_ptr<Command> command);
56 const rapidjson::Value &document);
60 std::shared_ptr<Command> command);
62 const rapidjson::Value &document);
66 std::shared_ptr<Command> command);
68 const rapidjson::Value &document);
72 std::shared_ptr<Command> command);
74 const rapidjson::Value &document);
78 std::shared_ptr<Command> command);
80 const rapidjson::Value &document);
84 std::shared_ptr<Command> command);
86 const rapidjson::Value &document);
90 std::shared_ptr<Command> command);
92 const rapidjson::Value &document);
96 std::shared_ptr<Command> command);
98 const rapidjson::Value &document);
102 std::shared_ptr<Command> command);
104 const rapidjson::Value &document);
108 std::shared_ptr<Command> command);
110 const rapidjson::Value &document);
114 std::shared_ptr<Command> command);
116 const rapidjson::Value &document);
120 std::shared_ptr<Command> command);
122 const rapidjson::Value &document);
128 std::shared_ptr<Command>);
130 const rapidjson::Value &);
132 std::unordered_map<std::type_index, Serializer> serializers_;
133 std::unordered_map<std::string, Deserializer> deserializers_;
140 #endif // IROHA_JSON_COMMAND_FACTORY_HPP rapidjson::Document serializeGrantPermission(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:454
optional_ptr< Command > deserializeCreateDomain(const rapidjson::Value &document)
Definition: json_command_factory.cpp:279
rapidjson::Document serializeAddAssetQuantity(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:104
optional_ptr< Command > deserializeCreateAccount(const rapidjson::Value &document)
Definition: json_command_factory.cpp:199
JsonCommandFactory()
Definition: json_command_factory.cpp:51
optional_ptr< Command > deserializeTransferAsset(const rapidjson::Value &document)
Definition: json_command_factory.cpp:360
optional_ptr< model::Command > deserializeAbstractCommand(const rapidjson::Value &document)
Definition: json_command_factory.cpp:534
optional_ptr< Command > deserializeAddPeer(const rapidjson::Value &document)
Definition: json_command_factory.cpp:149
optional_ptr< Command > deserializeSetQuorum(const rapidjson::Value &document)
Definition: json_command_factory.cpp:330
rapidjson::Document serializeSubtractAssetQuantity(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:499
optional_ptr< Command > deserializeAddAssetQuantity(const rapidjson::Value &document)
Definition: json_command_factory.cpp:120
optional_ptr< Command > deserializeDetachRole(const rapidjson::Value &document)
Definition: json_command_factory.cpp:407
rapidjson::Document serializeSetAccountDetail(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:209
optional_ptr< Command > deserializeAppendRole(const rapidjson::Value &document)
Definition: json_command_factory.cpp:385
optional_ptr< Command > deserializeSubtractAssetQuantity(const rapidjson::Value &document)
Definition: json_command_factory.cpp:518
Definition: json_command_factory.hpp:19
rapidjson::Document serializeCreateRole(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:415
optional_ptr< Command > deserializeRemoveSignatory(const rapidjson::Value &document)
Definition: json_command_factory.cpp:306
rapidjson::Document serializeCreateDomain(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:263
Definition: block_query.hpp:15
rapidjson::Document serializeAppendRole(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:371
rapidjson::Document serializeCreateAsset(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:237
rapidjson::Document serializeTransferAsset(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:339
rapidjson::Document serializeRevokePermission(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:476
optional_ptr< Command > deserializeCreateRole(const rapidjson::Value &document)
Definition: json_command_factory.cpp:436
rapidjson::Document serializeDetachRole(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:393
rapidjson::Document serializeAbstractCommand(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:527
optional_ptr< Command > deserializeCreateAsset(const rapidjson::Value &document)
Definition: json_command_factory.cpp:253
rapidjson::Document serializeCreateAccount(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:182
rapidjson::Document serializeAddSignatory(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:157
rapidjson::Document serializeSetQuorum(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:315
Definition: json_common.hpp:33
optional_ptr< Command > deserializeRevokePermission(const rapidjson::Value &document)
Definition: json_command_factory.cpp:489
rapidjson::Document serializeRemoveSignatory(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:289
optional_ptr< Command > deserializeSetAccountDetail(const rapidjson::Value &document)
Definition: json_command_factory.cpp:227
rapidjson::Document serializeAddPeer(std::shared_ptr< Command > command)
Definition: json_command_factory.cpp:129
boost::optional< std::shared_ptr< T > > optional_ptr
Definition: common.hpp:16
optional_ptr< Command > deserializeGrantPermission(const rapidjson::Value &document)
Definition: json_command_factory.cpp:467
optional_ptr< Command > deserializeAddSignatory(const rapidjson::Value &document)
Definition: json_command_factory.cpp:173