38 NeighborCallbackFct fct = NeighborCallbackFct{},
bool auto_start =
true);
67 void processSignal(
Signal signal);
69 void initFSM(minhton::FSMState &init_state);
71 FSMState getFsmState()
const;
73 std::shared_ptr<minhton::RoutingInformation> getRoutingInformation();
75 void insert(
const std::vector<Entry> &data);
76 void update(
const std::vector<Entry> &data);
77 void remove(
const std::vector<std::string> &keys);
79 std::future<FindResult> find(
const std::string &query);
80 std::future<FindResult> find(
const FindQuery &query);
84 std::shared_ptr<minhton::MessageSEVariant> query);
87 std::shared_ptr<AccessContainer> getAccessContainer()
const {
return access_; };
101 void send(
const MessageVariant &msg);
110 void prepareSending(
const MessageVariant &msg_variant);
117 void triggerTimeout(
const TimeoutType &timeout_type);
137 void recv(
const MessageVariant &msg);
149 bool prepareReceiving(
const MessageVariant &msg_variant);
168 void start(
const JoinInfo &info,
bool auto_connect =
false);
171 std::shared_ptr<AccessContainer> access_;
177 std::shared_ptr<minhton::ProcedureInfo> procedure_info_;
180 bool verbose_ =
true;
186 uint16_t getTimeoutLength(
const TimeoutType &timeout_type)
const;
193 void setTimeout(TimeoutType timeout_type);
199 std::shared_ptr<minhton::RoutingInformation> routing_info_;
207 std::unique_ptr<LogicContainer> logic_;
209 NeighborCallbackFct neighbor_update_fct_;
211 NodeInfo replacing_node_;