From 00edf347736f7b17c085788772a1c06815fa43ac Mon Sep 17 00:00:00 2001 From: Lars Toenning Date: Tue, 10 Oct 2023 16:43:01 +0200 Subject: [PATCH] refactor(minhton): Use SolaNet SERIALIZE macro Fixes #6 --- .../minhton-ns3/adapter/algorithms/CMakeLists.txt | 6 +++--- daisi/src/minhton-ns3/adapter/core/CMakeLists.txt | 4 ++-- .../src/minhton-ns3/adapter/message/CMakeLists.txt | 2 +- docs/minhton/programmers/messages.md | 2 +- .../include/minhton/algorithms/esearch/find_query.h | 2 +- .../include/minhton/algorithms/esearch/node_data.h | 2 +- minhton/include/minhton/core/logical_node_info.h | 2 +- minhton/include/minhton/core/node_info.h | 2 +- minhton/include/minhton/core/physical_node_info.h | 2 +- .../minhton/message/attribute_inquiry_answer.h | 2 +- .../minhton/message/attribute_inquiry_request.h | 2 +- .../include/minhton/message/bootstrap_discover.h | 2 +- .../include/minhton/message/bootstrap_response.h | 2 +- minhton/include/minhton/message/empty.h | 2 +- minhton/include/minhton/message/find_query_answer.h | 2 +- .../include/minhton/message/find_query_request.h | 2 +- minhton/include/minhton/message/find_replacement.h | 2 +- minhton/include/minhton/message/get_neighbors.h | 2 +- .../minhton/message/inform_about_neighbors.h | 2 +- minhton/include/minhton/message/join.h | 2 +- minhton/include/minhton/message/join_accept.h | 2 +- minhton/include/minhton/message/join_accept_ack.h | 2 +- .../include/minhton/message/lock_neighbor_request.h | 2 +- .../minhton/message/lock_neighbor_response.h | 2 +- minhton/include/minhton/message/message_header.h | 2 +- .../minhton/message/remove_and_update_neighbor.h | 2 +- minhton/include/minhton/message/remove_neighbor.h | 2 +- .../include/minhton/message/remove_neighbor_ack.h | 2 +- minhton/include/minhton/message/replacement_ack.h | 2 +- minhton/include/minhton/message/replacement_nack.h | 2 +- minhton/include/minhton/message/replacement_offer.h | 2 +- .../include/minhton/message/replacement_update.h | 2 +- minhton/include/minhton/message/search_exact.h | 2 +- .../include/minhton/message/search_exact_failure.h | 2 +- minhton/include/minhton/message/serialize.h | 13 ------------- .../include/minhton/message/signoff_parent_answer.h | 2 +- .../minhton/message/signoff_parent_request.h | 2 +- .../include/minhton/message/subscription_order.h | 2 +- .../include/minhton/message/subscription_update.h | 2 +- minhton/include/minhton/message/unlock_neighbor.h | 2 +- minhton/include/minhton/message/update_neighbors.h | 2 +- minhton/src/algorithms/CMakeLists.txt | 4 ++-- minhton/src/core/CMakeLists.txt | 6 +++--- minhton/src/message/CMakeLists.txt | 7 ++----- 44 files changed, 50 insertions(+), 66 deletions(-) delete mode 100644 minhton/include/minhton/message/serialize.h diff --git a/daisi/src/minhton-ns3/adapter/algorithms/CMakeLists.txt b/daisi/src/minhton-ns3/adapter/algorithms/CMakeLists.txt index 3353da07..a61629f5 100644 --- a/daisi/src/minhton-ns3/adapter/algorithms/CMakeLists.txt +++ b/daisi/src/minhton-ns3/adapter/algorithms/CMakeLists.txt @@ -28,16 +28,16 @@ target_sources(minhton_algorithms_sim ${MINHTON_SOURCE_DIR}/src/algorithms/esearch/minhton_entity_search_algorithm_helper.cpp ) -target_include_directories(minhton_algorithms_sim +target_include_directories(minhton_algorithms_sim PUBLIC ${MINHTON_SOURCE_DIR}/include ) -target_link_libraries(minhton_algorithms_sim +target_link_libraries(minhton_algorithms_sim PUBLIC minhton_core_physical_node_info minhton_core_node_info_sim minhton_core_routing_table_sim - minhton_message_serialize + solanet_serialize minhton_message_sim minhton_core_definitions minhton_core_access_container_sim diff --git a/daisi/src/minhton-ns3/adapter/core/CMakeLists.txt b/daisi/src/minhton-ns3/adapter/core/CMakeLists.txt index 9959f2fd..d0760375 100644 --- a/daisi/src/minhton-ns3/adapter/core/CMakeLists.txt +++ b/daisi/src/minhton-ns3/adapter/core/CMakeLists.txt @@ -88,7 +88,7 @@ target_link_libraries(minhton_core_node_info_sim PUBLIC minhton_core_physical_node_info minhton_core_logical_node_info_sim - minhton_message_serialize + solanet_serialize ) # Logical node info @@ -99,7 +99,7 @@ target_include_directories(minhton_core_logical_node_info_sim ) target_link_libraries(minhton_core_logical_node_info_sim PUBLIC - minhton_message_serialize + solanet_serialize solanet_uuid solanet_uuid_generator_sim PRIVATE diff --git a/daisi/src/minhton-ns3/adapter/message/CMakeLists.txt b/daisi/src/minhton-ns3/adapter/message/CMakeLists.txt index 275bfcd9..1f988d00 100644 --- a/daisi/src/minhton-ns3/adapter/message/CMakeLists.txt +++ b/daisi/src/minhton-ns3/adapter/message/CMakeLists.txt @@ -38,7 +38,7 @@ target_link_libraries(minhton_message_sim minhton_algorithms_sim # For esearch/NodeData/FindQuery minhton_core_node_info_sim minhton_core_constants - minhton_message_serialize + solanet_serialize PRIVATE minhton_exception_algorithm minhton_core_routing_calculations diff --git a/docs/minhton/programmers/messages.md b/docs/minhton/programmers/messages.md index fa26302b..f00d93e7 100644 --- a/docs/minhton/programmers/messages.md +++ b/docs/minhton/programmers/messages.md @@ -16,7 +16,7 @@ What needs to be done for adding a new message type: - Create a new header file in `include/minhton/message` (Tip: Use join.h as a guideline) - Make sure to use a unique name for the ifndef include guide - - Make sure to include `#include "minhton/message/message.h"` and `#include "minhton/message/serialize.h"` + - Make sure to include `#include "minhton/message/message.h"` and `#include "solanet/serializer/serialize.h"` - Place a `SERIALIZE(...)` with required attributes under public visibility (Tip: Look at `include/minhton/algorithms/esearch/find_query.h` if the message type needs separate load and save functions) - Apart from the constructor for general usage which should have all parameters to create a valid message, a default constructor is required for serialization purposes. - Always required and the same are the `protected` fields that all message types must have. diff --git a/minhton/include/minhton/algorithms/esearch/find_query.h b/minhton/include/minhton/algorithms/esearch/find_query.h index e21ec396..6fab020d 100644 --- a/minhton/include/minhton/algorithms/esearch/find_query.h +++ b/minhton/include/minhton/algorithms/esearch/find_query.h @@ -15,7 +15,7 @@ #include "minhton/algorithms/esearch/local_data.h" #include "minhton/algorithms/esearch/node_data.h" #include "minhton/core/node_info.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { class FindQuery { diff --git a/minhton/include/minhton/algorithms/esearch/node_data.h b/minhton/include/minhton/algorithms/esearch/node_data.h index 1acff9d9..db50637a 100644 --- a/minhton/include/minhton/algorithms/esearch/node_data.h +++ b/minhton/include/minhton/algorithms/esearch/node_data.h @@ -13,7 +13,7 @@ #include #include "minhton/core/node_info.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { diff --git a/minhton/include/minhton/core/logical_node_info.h b/minhton/include/minhton/core/logical_node_info.h index 204eaa89..5aeabcc5 100644 --- a/minhton/include/minhton/core/logical_node_info.h +++ b/minhton/include/minhton/core/logical_node_info.h @@ -9,7 +9,7 @@ #include -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" #include "solanet/uuid.h" #include "solanet/uuid_generator.h" diff --git a/minhton/include/minhton/core/node_info.h b/minhton/include/minhton/core/node_info.h index 60f5c1f2..47ef99da 100644 --- a/minhton/include/minhton/core/node_info.h +++ b/minhton/include/minhton/core/node_info.h @@ -11,7 +11,7 @@ #include "minhton/core/logical_node_info.h" #include "minhton/core/physical_node_info.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { diff --git a/minhton/include/minhton/core/physical_node_info.h b/minhton/include/minhton/core/physical_node_info.h index 793d71ea..812ade17 100644 --- a/minhton/include/minhton/core/physical_node_info.h +++ b/minhton/include/minhton/core/physical_node_info.h @@ -11,7 +11,7 @@ #include #include -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { #define PORT_MIN 1024 diff --git a/minhton/include/minhton/message/attribute_inquiry_answer.h b/minhton/include/minhton/message/attribute_inquiry_answer.h index 25c04a7a..94255e4b 100644 --- a/minhton/include/minhton/message/attribute_inquiry_answer.h +++ b/minhton/include/minhton/message/attribute_inquiry_answer.h @@ -11,7 +11,7 @@ #include "minhton/algorithms/esearch/node_data.h" #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** The message that the node which received a MessageAttributeInquiryRequest diff --git a/minhton/include/minhton/message/attribute_inquiry_request.h b/minhton/include/minhton/message/attribute_inquiry_request.h index 1f1b6ed6..819d72ef 100644 --- a/minhton/include/minhton/message/attribute_inquiry_request.h +++ b/minhton/include/minhton/message/attribute_inquiry_request.h @@ -10,7 +10,7 @@ #include #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A node that is not a DSN may receive a MessageAttributeInquiryRequest during diff --git a/minhton/include/minhton/message/bootstrap_discover.h b/minhton/include/minhton/message/bootstrap_discover.h index 07b3dd35..16d976bf 100644 --- a/minhton/include/minhton/message/bootstrap_discover.h +++ b/minhton/include/minhton/message/bootstrap_discover.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_BOOTSTRAP_DISCOVER_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A node wants to join the network but does not have access to a node's diff --git a/minhton/include/minhton/message/bootstrap_response.h b/minhton/include/minhton/message/bootstrap_response.h index 9806ee7f..b6a0de6f 100644 --- a/minhton/include/minhton/message/bootstrap_response.h +++ b/minhton/include/minhton/message/bootstrap_response.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_BOOTSTRAP_RESPONSE_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** After receiving a MessageBootstrapDiscover, the node receiving the message diff --git a/minhton/include/minhton/message/empty.h b/minhton/include/minhton/message/empty.h index 109b0f6e..4fb125b3 100644 --- a/minhton/include/minhton/message/empty.h +++ b/minhton/include/minhton/message/empty.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_EMPTY_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A helper message type for the Search Exact Test. It has no functionality by diff --git a/minhton/include/minhton/message/find_query_answer.h b/minhton/include/minhton/message/find_query_answer.h index a89a0c7e..206066ff 100644 --- a/minhton/include/minhton/message/find_query_answer.h +++ b/minhton/include/minhton/message/find_query_answer.h @@ -13,7 +13,7 @@ #include "minhton/algorithms/esearch/node_data.h" #include "minhton/core/node_info.h" #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A DSN sends a MessageFindQueryAnswer back to the requesting node (that sent diff --git a/minhton/include/minhton/message/find_query_request.h b/minhton/include/minhton/message/find_query_request.h index a8535957..8cea5375 100644 --- a/minhton/include/minhton/message/find_query_request.h +++ b/minhton/include/minhton/message/find_query_request.h @@ -11,7 +11,7 @@ #include "minhton/algorithms/esearch/find_query.h" #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A node that wants to find data in the network can call the Entity Search diff --git a/minhton/include/minhton/message/find_replacement.h b/minhton/include/minhton/message/find_replacement.h index 81725ea8..38da4c14 100644 --- a/minhton/include/minhton/message/find_replacement.h +++ b/minhton/include/minhton/message/find_replacement.h @@ -9,7 +9,7 @@ #include "minhton/message/find_end.h" #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A node wants to leave the network, but cannot leave the position directly diff --git a/minhton/include/minhton/message/get_neighbors.h b/minhton/include/minhton/message/get_neighbors.h index 6060541e..46e854a0 100644 --- a/minhton/include/minhton/message/get_neighbors.h +++ b/minhton/include/minhton/message/get_neighbors.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_GET_NEIGHBORS_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** Currently only used in the join accept procedure in rare cases by the parent diff --git a/minhton/include/minhton/message/inform_about_neighbors.h b/minhton/include/minhton/message/inform_about_neighbors.h index a3c0ecc8..bd3480ab 100644 --- a/minhton/include/minhton/message/inform_about_neighbors.h +++ b/minhton/include/minhton/message/inform_about_neighbors.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_INFORM_ABOUT_NEIGHBORS_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** This message is an answer to a MessageGetNeighbors. It contains the node diff --git a/minhton/include/minhton/message/join.h b/minhton/include/minhton/message/join.h index 27ad25b5..d1a5dc5f 100644 --- a/minhton/include/minhton/message/join.h +++ b/minhton/include/minhton/message/join.h @@ -9,7 +9,7 @@ #include "minhton/message/find_end.h" #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** When a node wants to join the network, it sends a MessageJoin to one node in diff --git a/minhton/include/minhton/message/join_accept.h b/minhton/include/minhton/message/join_accept.h index 072da70e..2ce379a2 100644 --- a/minhton/include/minhton/message/join_accept.h +++ b/minhton/include/minhton/message/join_accept.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_JOIN_ACCEPT_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A fitting join position has been found by forwarding the MessageJoin diff --git a/minhton/include/minhton/message/join_accept_ack.h b/minhton/include/minhton/message/join_accept_ack.h index 6f3b6c51..54a6e31f 100644 --- a/minhton/include/minhton/message/join_accept_ack.h +++ b/minhton/include/minhton/message/join_accept_ack.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_JOIN_ACCEPT_ACK_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** After receiving a MessageJoinAccept, the new child must send a diff --git a/minhton/include/minhton/message/lock_neighbor_request.h b/minhton/include/minhton/message/lock_neighbor_request.h index a11a5ee3..adbc8d47 100644 --- a/minhton/include/minhton/message/lock_neighbor_request.h +++ b/minhton/include/minhton/message/lock_neighbor_request.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_LOCK_NEIGHBOR_REQUEST_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** The parent of a successor node sends a Lock Neighbor Request to its right diff --git a/minhton/include/minhton/message/lock_neighbor_response.h b/minhton/include/minhton/message/lock_neighbor_response.h index 024b3fa8..202634c1 100644 --- a/minhton/include/minhton/message/lock_neighbor_response.h +++ b/minhton/include/minhton/message/lock_neighbor_response.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_LOCK_NEIGHBOR_RESPONSE_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** The answer to a MessageLockNeighborRequest, received by the parent of a diff --git a/minhton/include/minhton/message/message_header.h b/minhton/include/minhton/message/message_header.h index a0f4d877..8c5f4a14 100644 --- a/minhton/include/minhton/message/message_header.h +++ b/minhton/include/minhton/message/message_header.h @@ -13,8 +13,8 @@ #include "minhton/core/constants.h" #include "minhton/core/node_info.h" #include "minhton/message/message_logging.h" -#include "minhton/message/serialize.h" #include "minhton/message/types.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// diff --git a/minhton/include/minhton/message/remove_and_update_neighbor.h b/minhton/include/minhton/message/remove_and_update_neighbor.h index 11aae373..ac11686c 100644 --- a/minhton/include/minhton/message/remove_and_update_neighbor.h +++ b/minhton/include/minhton/message/remove_and_update_neighbor.h @@ -9,8 +9,8 @@ #include "minhton/message/message.h" #include "minhton/message/remove_neighbor.h" -#include "minhton/message/serialize.h" #include "minhton/message/update_neighbors.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** Used in the leave and response algorithms for updating the routing diff --git a/minhton/include/minhton/message/remove_neighbor.h b/minhton/include/minhton/message/remove_neighbor.h index f459c47e..d50a5a15 100644 --- a/minhton/include/minhton/message/remove_neighbor.h +++ b/minhton/include/minhton/message/remove_neighbor.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_REMOVE_NEIGHBOR_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A node is leaving the network. This is a notification to remove the given diff --git a/minhton/include/minhton/message/remove_neighbor_ack.h b/minhton/include/minhton/message/remove_neighbor_ack.h index c7667946..b0fdab4c 100644 --- a/minhton/include/minhton/message/remove_neighbor_ack.h +++ b/minhton/include/minhton/message/remove_neighbor_ack.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_REMOVE_NEIGHBOR_ACK_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** Is sent as a reply to either a MessageReplacementUpdate or diff --git a/minhton/include/minhton/message/replacement_ack.h b/minhton/include/minhton/message/replacement_ack.h index 28535374..9859e661 100644 --- a/minhton/include/minhton/message/replacement_ack.h +++ b/minhton/include/minhton/message/replacement_ack.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_REPLACEMENT_ACK_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** The node that wants to leave the network receives a MessageReplacementOffer diff --git a/minhton/include/minhton/message/replacement_nack.h b/minhton/include/minhton/message/replacement_nack.h index f5f4edb7..fed4b0f3 100644 --- a/minhton/include/minhton/message/replacement_nack.h +++ b/minhton/include/minhton/message/replacement_nack.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_REPLACEMENT_NACK_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A MessageReplacementNack is sent back to the node to replace in case of a diff --git a/minhton/include/minhton/message/replacement_offer.h b/minhton/include/minhton/message/replacement_offer.h index 859fd059..d4b5216b 100644 --- a/minhton/include/minhton/message/replacement_offer.h +++ b/minhton/include/minhton/message/replacement_offer.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_REPLACEMENT_OFFER_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A MessageFindReplacement reached a node that can replace the leaving node. diff --git a/minhton/include/minhton/message/replacement_update.h b/minhton/include/minhton/message/replacement_update.h index f3884131..be0ec50d 100644 --- a/minhton/include/minhton/message/replacement_update.h +++ b/minhton/include/minhton/message/replacement_update.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_REPLACEMENT_UPDATE_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** During the replacement process, the neighbor nodes of the leaving node / the diff --git a/minhton/include/minhton/message/search_exact.h b/minhton/include/minhton/message/search_exact.h index de4ea5e7..19c8f2b7 100644 --- a/minhton/include/minhton/message/search_exact.h +++ b/minhton/include/minhton/message/search_exact.h @@ -9,7 +9,7 @@ #include "minhton/message/message.h" #include "minhton/message/se_types.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A node wants to send a message to another node in the network, but does not diff --git a/minhton/include/minhton/message/search_exact_failure.h b/minhton/include/minhton/message/search_exact_failure.h index ab29cfea..37acc6d4 100644 --- a/minhton/include/minhton/message/search_exact_failure.h +++ b/minhton/include/minhton/message/search_exact_failure.h @@ -9,7 +9,7 @@ #include "minhton/message/message.h" #include "minhton/message/se_types.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** If a node cannot further forward a MessageSearchExact, but is also not the diff --git a/minhton/include/minhton/message/serialize.h b/minhton/include/minhton/message/serialize.h deleted file mode 100644 index 7e9ae380..00000000 --- a/minhton/include/minhton/message/serialize.h +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright The SOLA Contributors -// -// Licensed under the MIT License. -// For details on the licensing terms, see the LICENSE file. -// SPDX-License-Identifier: MIT - -#ifndef MINHTON_MESSAGE_SERIALIZE_H_ -#define MINHTON_MESSAGE_SERIALIZE_H_ - -#define SERIALIZE(...) \ - template void serialize(Archive &archive) { archive(__VA_ARGS__); } - -#endif // MINHTON_MESSAGE_SERIALIZE_H_ diff --git a/minhton/include/minhton/message/signoff_parent_answer.h b/minhton/include/minhton/message/signoff_parent_answer.h index c82e4635..6aafce14 100644 --- a/minhton/include/minhton/message/signoff_parent_answer.h +++ b/minhton/include/minhton/message/signoff_parent_answer.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_SIGNOFF_PARENT_ANSWER_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** The successor node waits for the MessageSignoffParentAnswer from its parent diff --git a/minhton/include/minhton/message/signoff_parent_request.h b/minhton/include/minhton/message/signoff_parent_request.h index 0cedb863..ab2c3de0 100644 --- a/minhton/include/minhton/message/signoff_parent_request.h +++ b/minhton/include/minhton/message/signoff_parent_request.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_SIGNOFF_PARENT_REQUEST_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** The last node of the network, the chosen successor, sends a diff --git a/minhton/include/minhton/message/subscription_order.h b/minhton/include/minhton/message/subscription_order.h index ab62351a..b7ac8390 100644 --- a/minhton/include/minhton/message/subscription_order.h +++ b/minhton/include/minhton/message/subscription_order.h @@ -9,7 +9,7 @@ #include "minhton/algorithms/esearch/node_data.h" #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** A node can send a MessageSubscriptionOrder to subscribe or unsubscribe diff --git a/minhton/include/minhton/message/subscription_update.h b/minhton/include/minhton/message/subscription_update.h index 5d0020c3..b42c3f2b 100644 --- a/minhton/include/minhton/message/subscription_update.h +++ b/minhton/include/minhton/message/subscription_update.h @@ -9,7 +9,7 @@ #include "minhton/algorithms/esearch/node_data.h" #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** If a node's local data is modified (inserted, updated or removed), it will diff --git a/minhton/include/minhton/message/unlock_neighbor.h b/minhton/include/minhton/message/unlock_neighbor.h index 7f16b4be..d777a77a 100644 --- a/minhton/include/minhton/message/unlock_neighbor.h +++ b/minhton/include/minhton/message/unlock_neighbor.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_UNLOCK_NEIGHBOR_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" namespace minhton { /// @brief * **Usage:** Used for unlocking nodes after they were locked during a concurrent diff --git a/minhton/include/minhton/message/update_neighbors.h b/minhton/include/minhton/message/update_neighbors.h index 48712312..f197226a 100644 --- a/minhton/include/minhton/message/update_neighbors.h +++ b/minhton/include/minhton/message/update_neighbors.h @@ -8,7 +8,7 @@ #define MINHTON_MESSAGE_UPDATE_NEIGHBORS_H_ #include "minhton/message/message.h" -#include "minhton/message/serialize.h" +#include "solanet/serializer/serialize.h" using NeighborsAndRelationships = std::vector>; diff --git a/minhton/src/algorithms/CMakeLists.txt b/minhton/src/algorithms/CMakeLists.txt index 0ba93ef4..2a907854 100644 --- a/minhton/src/algorithms/CMakeLists.txt +++ b/minhton/src/algorithms/CMakeLists.txt @@ -31,12 +31,12 @@ target_include_directories(minhton_algorithms PUBLIC ${MINHTON_SOURCE_DIR}/include # TODO ) -target_link_libraries(minhton_algorithms +target_link_libraries(minhton_algorithms PUBLIC minhton_core_physical_node_info minhton_core_node_info minhton_core_routing_table - minhton_message_serialize + solanet_serialize minhton_message minhton_core_definitions minhton_core_access_container diff --git a/minhton/src/core/CMakeLists.txt b/minhton/src/core/CMakeLists.txt index d9d2636c..338ca8e4 100644 --- a/minhton/src/core/CMakeLists.txt +++ b/minhton/src/core/CMakeLists.txt @@ -8,7 +8,7 @@ target_link_libraries(minhton_core_node_info PUBLIC minhton_core_physical_node_info minhton_core_logical_node_info - minhton_message_serialize + solanet_serialize ) # LogicalNodeInfo @@ -19,7 +19,7 @@ target_include_directories(minhton_core_logical_node_info ) target_link_libraries(minhton_core_logical_node_info PUBLIC - minhton_message_serialize + solanet_serialize solanet_uuid solanet_uuid_generator PRIVATE @@ -35,7 +35,7 @@ target_include_directories(minhton_core_physical_node_info ) target_link_libraries(minhton_core_physical_node_info PUBLIC - minhton_message_serialize + solanet_serialize ) # Routing Calculations diff --git a/minhton/src/message/CMakeLists.txt b/minhton/src/message/CMakeLists.txt index c36b91c3..aae4d342 100644 --- a/minhton/src/message/CMakeLists.txt +++ b/minhton/src/message/CMakeLists.txt @@ -34,17 +34,14 @@ target_sources(minhton_message lock_neighbor_request.cpp lock_neighbor_response.cpp ) -target_link_libraries(minhton_message +target_link_libraries(minhton_message PUBLIC minhton_algorithms # For esearch/NodeData/FindQuery minhton_core_node_info minhton_core_constants - minhton_message_serialize + solanet_serialize PRIVATE minhton_exception_algorithm minhton_core_routing_calculations solanet_uuid_generator ) - -add_library(minhton_message_serialize INTERFACE ${MINHTON_SOURCE_DIR}/include/minhton/message/serialize.h) -target_link_libraries(minhton_message_serialize INTERFACE Cereal) # TODO Remove public dependency