20 #include <boost/uuid/uuid.hpp> 22 #include "hazelcast/util/export.h" 23 #include "hazelcast/util/type_traits.h" 24 #include "hazelcast/util/noop.h" 26 #if defined(WIN32) || defined(_WIN32) || defined(WIN64) || defined(_WIN64) 28 #pragma warning(disable: 4251) //for dll export 34 class membership_event;
35 class initial_membership_event;
39 class ClientClusterServiceImpl;
59 friend class spi::impl::ClientClusterServiceImpl;
65 template<
typename Handler,
66 typename = util::enable_if_rvalue_ref_t<Handler &&>>
68 joined_ = std::forward<Handler>(h);
75 template<
typename Handler,
76 typename = util::enable_if_rvalue_ref_t<Handler &&>>
78 on_joined(std::forward<Handler>(h));
79 return std::move(*
this);
86 template<
typename Handler,
87 typename = util::enable_if_rvalue_ref_t<Handler &&>>
89 left_ = std::forward<Handler>(h);
96 template<
typename Handler,
97 typename = util::enable_if_rvalue_ref_t<Handler &&>>
99 on_left(std::forward<Handler>(h));
100 return std::move(*
this);
107 template<
typename Handler,
108 typename = util::enable_if_rvalue_ref_t<Handler &&>>
110 init_ = std::forward<Handler>(h);
117 template<
typename Handler,
118 typename = util::enable_if_rvalue_ref_t<Handler &&>>
120 on_init(std::forward<Handler>(h));
121 return std::move(*
this);
125 using handler_t = std::function<void(const membership_event &)>;
126 using init_handler_t = std::function<void(const initial_membership_event &)>;
128 handler_t left_{ util::noop<const membership_event &> },
129 joined_{ util::noop<const membership_event &> };
130 init_handler_t init_{};
135 #if defined(WIN32) || defined(_WIN32) || defined(WIN64) || defined(_WIN64) membership_listener & on_init(Handler &&h) &
Set an handler function to be invoked once when this listener is registered.
Definition: membership_listener.h:109
membership_listener & on_joined(Handler &&h) &
Set an handler function to be invoked when a new member joins the cluster.
Definition: membership_listener.h:67
Cluster membership listener.
Definition: membership_listener.h:57
membership_listener && on_init(Handler &&h) &&
Set an handler function to be invoked once when this listener is registered.
Definition: membership_listener.h:119
membership_listener && on_left(Handler &&h) &&
Set an handler function to be invoked when an existing member leaves the cluster. ...
Definition: membership_listener.h:98
membership_listener & on_left(Handler &&h) &
Set an handler function to be invoked when an existing member leaves the cluster. ...
Definition: membership_listener.h:88
membership_listener && on_joined(Handler &&h) &&
Set an handler function to be invoked when a new member joins the cluster.
Definition: membership_listener.h:77
Hazelcast cluster interface.
Definition: cluster.h:36