SOLA
Loading...
Searching...
No Matches
search_exact.h
1// Copyright The SOLA Contributors
2//
3// Licensed under the MIT License.
4// For details on the licensing terms, see the LICENSE file.
5// SPDX-License-Identifier: MIT
6
7#ifndef MINHTON_MESSAGE_SEARCH_EXACT_H_
8#define MINHTON_MESSAGE_SEARCH_EXACT_H_
9
10#include "minhton/message/message.h"
11#include "minhton/message/se_types.h"
12#include "solanet/serializer/serialize.h"
13
14namespace minhton {
19class MessageSearchExact : public MinhtonMessage<MessageSearchExact> {
20public:
27 MessageSearchExact(MinhtonMessageHeader header, NodeInfo destination_node,
28 std::shared_ptr<MessageSEVariant> query, bool notify_about_failure = false);
29
30 minhton::NodeInfo getDestinationNode() const;
31 std::shared_ptr<MessageSEVariant> getQuery() const;
32 bool getNotifyAboutFailure() const;
33
34 SERIALIZE(header_, destination_node_, query_, notify_about_failure_);
35
36 MessageSearchExact() = default;
37
38private:
39 friend MinhtonMessage;
40
43
45 bool validateImpl() const;
46
50 minhton::NodeInfo destination_node_;
51
55 std::shared_ptr<MessageSEVariant> query_;
56
57 bool notify_about_failure_ = false;
58};
59} // namespace minhton
60
61#endif
Usage: A node wants to send a message to another node in the network, but does not know the physical ...
Definition search_exact.h:19
Definition message_header.h:24
Definition message.h:28
Definition node_info.h:24
Definition minhton_watchdog_ns3.cpp:24