21 #ifndef __IceStorm_Election_h__
22 #define __IceStorm_Election_h__
24 #include <Ice/BuiltinSequences.h>
25 #include <Ice/Comparable.h>
26 #include <Ice/Exception.h>
27 #include <Ice/ExceptionHelpers.h>
28 #include <Ice/FactoryTableInit.h>
29 #include <Ice/GCObject.h>
30 #include <Ice/Identity.h>
31 #include <Ice/Incoming.h>
32 #include <Ice/LocalObject.h>
33 #include <Ice/Object.h>
34 #include <Ice/ObjectF.h>
35 #include <Ice/Optional.h>
36 #include <Ice/Proxy.h>
37 #include <Ice/ProxyF.h>
38 #include <Ice/StreamHelpers.h>
39 #include <Ice/Value.h>
40 #include <Ice/ValueF.h>
43 #include <IceUtil/PushDisableWarnings.h>
44 #include <IceUtil/ScopedArray.h>
45 #include <IceUtil/UndefSysMacros.h>
47 #ifndef ICE_IGNORE_VERSION
48 #if ICE_INT_VERSION / 100 != 307
49 #error Ice version mismatch!
51 #if ICE_INT_VERSION % 100 > 50
52 #error Beta header file detected
54 #if ICE_INT_VERSION % 100 < 0
55 #error Ice patch level mismatch!
59 #ifdef ICE_CPP11_MAPPING // C++11 mapping
64 class ReplicaObserver;
66 class TopicManagerSync;
81 std::tuple<const ::Ice::Identity&, const ::IceStorm::SubscriberRecordSeq&>
88 using TopicContentSeq = ::std::vector<::IceStormElection::TopicContent>;
90 class ObserverInconsistencyException :
91 public ::Ice::UserExceptionHelper<ObserverInconsistencyException, ::Ice::UserException>
105 std::tuple<const ::std::string&>
111 static const ::std::string& ice_staticId();
116 static ObserverInconsistencyException _iceS_ObserverInconsistencyException_init;
129 ::std::shared_ptr<::IceStormElection::NodePrx>
n;
131 std::tuple<const int&, const ::std::shared_ptr<::IceStormElection::NodePrx>&>
134 return std::tie(
id,
n);
138 using NodeInfoSeq = ::std::vector<::IceStormElection::NodeInfo>;
145 std::tuple<const int&, const ::IceStormElection::LogUpdate&>
148 return std::tie(
id,
llu);
152 using GroupInfoSeq = ::std::vector<::IceStormElection::GroupInfo>;
159 ::std::shared_ptr<::Ice::ObjectPrx>
replica;
164 std::tuple<
const int&,
166 const ::std::string&,
167 const ::std::shared_ptr<::Ice::ObjectPrx>&,
177 using Ice::operator<;
178 using Ice::operator<=;
179 using Ice::operator>;
180 using Ice::operator>=;
181 using Ice::operator==;
182 using Ice::operator!=;
189 class ReplicaObserver :
public virtual ::Ice::Object
194 virtual bool ice_isA(::std::string, const ::Ice::Current&)
const override;
195 virtual ::std::vector<::std::string>
ice_ids(const ::Ice::Current&)
const override;
196 virtual ::std::string
ice_id(const ::Ice::Current&)
const override;
202 const ::Ice::Current&) = 0;
203 bool _iceD_init(::IceInternal::Incoming&, const ::Ice::Current&);
216 const ::Ice::Current&) = 0;
222 const ::Ice::Current&) = 0;
225 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&)
override;
228 class TopicManagerSync :
public virtual ::Ice::Object
233 virtual bool ice_isA(::std::string, const ::Ice::Current&)
const override;
234 virtual ::std::vector<::std::string>
ice_ids(const ::Ice::Current&)
const override;
235 virtual ::std::string
ice_id(const ::Ice::Current&)
const override;
239 struct GetContentResult
247 const ::Ice::Current&) = 0;
250 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&)
override;
253 class Node :
public virtual ::Ice::Object
258 virtual bool ice_isA(::std::string, const ::Ice::Current&)
const override;
259 virtual ::std::vector<::std::string>
ice_ids(const ::Ice::Current&)
const override;
260 virtual ::std::string
ice_id(const ::Ice::Current&)
const override;
264 virtual void invitation(
int, ::std::string, const ::Ice::Current&) = 0;
267 virtual void ready(
int,
269 ::std::shared_ptr<::Ice::ObjectPrx>,
272 const ::Ice::Current&) = 0;
273 bool _iceD_ready(::IceInternal::Incoming&, const ::Ice::Current&);
278 ::std::shared_ptr<::Ice::ObjectPrx>,
281 const ::Ice::Current&) = 0;
282 bool _iceD_accept(::IceInternal::Incoming&, const ::Ice::Current&);
287 virtual bool areYouThere(::std::string,
int, const ::Ice::Current&)
const = 0;
290 virtual ::std::shared_ptr<::Ice::ObjectPrx>
sync(const ::Ice::Current&)
const = 0;
291 bool _iceD_sync(::IceInternal::Incoming&, const ::Ice::Current&)
const;
294 bool _iceD_nodes(::IceInternal::Incoming&, const ::Ice::Current&)
const;
296 virtual ::IceStormElection::QueryInfo
query(const ::Ice::Current&)
const = 0;
297 bool _iceD_query(::IceInternal::Incoming&, const ::Ice::Current&)
const;
299 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&)
override;
307 class ReplicaObserverPrx :
public virtual ::Ice::Proxy<ReplicaObserverPrx, ::Ice::ObjectPrx>
311 init(const ::IceStormElection::LogUpdate& iceP_llu,
313 const ::Ice::Context& context = Ice::noExplicitContext)
315 _makePromiseOutgoing<void>(
true,
317 &IceStormElection::ReplicaObserverPrx::_iceI_init,
324 template <
template <
typename>
class P = ::std::promise>
326 initAsync(const ::IceStormElection::LogUpdate& iceP_llu,
328 const ::Ice::Context& context = Ice::noExplicitContext)
329 -> decltype(::std::declval<P<void>>().get_future())
331 return _makePromiseOutgoing<void, P>(
false,
333 &IceStormElection::ReplicaObserverPrx::_iceI_init,
339 ::std::function<void()>
340 initAsync(const ::IceStormElection::LogUpdate& iceP_llu,
342 ::std::function<
void()> response,
343 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
344 ::std::function<
void(
bool)> sent =
nullptr,
345 const ::Ice::Context& context = Ice::noExplicitContext)
347 return _makeLamdaOutgoing<void>(response,
351 &IceStormElection::ReplicaObserverPrx::_iceI_init,
357 void _iceI_init(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
358 const ::IceStormElection::LogUpdate&,
360 const ::Ice::Context&);
363 createTopic(const ::IceStormElection::LogUpdate& iceP_llu,
364 const ::std::string& iceP_name,
365 const ::Ice::Context& context = Ice::noExplicitContext)
367 _makePromiseOutgoing<void>(
true,
369 &IceStormElection::ReplicaObserverPrx::_iceI_createTopic,
376 template <
template <
typename>
class P = ::std::promise>
378 createTopicAsync(const ::IceStormElection::LogUpdate& iceP_llu,
379 const ::std::string& iceP_name,
380 const ::Ice::Context& context = Ice::noExplicitContext)
381 -> decltype(::std::declval<P<void>>().get_future())
383 return _makePromiseOutgoing<void, P>(
386 &IceStormElection::ReplicaObserverPrx::_iceI_createTopic,
392 ::std::function<void()>
393 createTopicAsync(const ::IceStormElection::LogUpdate& iceP_llu,
394 const ::std::string& iceP_name,
395 ::std::function<
void()> response,
396 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
397 ::std::function<
void(
bool)> sent =
nullptr,
398 const ::Ice::Context& context = Ice::noExplicitContext)
400 return _makeLamdaOutgoing<void>(
405 &IceStormElection::ReplicaObserverPrx::_iceI_createTopic,
411 void _iceI_createTopic(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
412 const ::IceStormElection::LogUpdate&,
413 const ::std::string&,
414 const ::Ice::Context&);
417 destroyTopic(const ::IceStormElection::LogUpdate& iceP_llu,
418 const ::std::string& iceP_name,
419 const ::Ice::Context& context = Ice::noExplicitContext)
421 _makePromiseOutgoing<void>(
true,
423 &IceStormElection::ReplicaObserverPrx::_iceI_destroyTopic,
430 template <
template <
typename>
class P = ::std::promise>
432 destroyTopicAsync(const ::IceStormElection::LogUpdate& iceP_llu,
433 const ::std::string& iceP_name,
434 const ::Ice::Context& context = Ice::noExplicitContext)
435 -> decltype(::std::declval<P<void>>().get_future())
437 return _makePromiseOutgoing<void, P>(
440 &IceStormElection::ReplicaObserverPrx::_iceI_destroyTopic,
446 ::std::function<void()>
447 destroyTopicAsync(const ::IceStormElection::LogUpdate& iceP_llu,
448 const ::std::string& iceP_name,
449 ::std::function<
void()> response,
450 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
451 ::std::function<
void(
bool)> sent =
nullptr,
452 const ::Ice::Context& context = Ice::noExplicitContext)
454 return _makeLamdaOutgoing<void>(
459 &IceStormElection::ReplicaObserverPrx::_iceI_destroyTopic,
465 void _iceI_destroyTopic(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
466 const ::IceStormElection::LogUpdate&,
467 const ::std::string&,
468 const ::Ice::Context&);
471 addSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
472 const ::std::string& iceP_topic,
473 const ::IceStorm::SubscriberRecord& iceP_record,
474 const ::Ice::Context& context = Ice::noExplicitContext)
476 _makePromiseOutgoing<void>(
true,
478 &IceStormElection::ReplicaObserverPrx::_iceI_addSubscriber,
486 template <
template <
typename>
class P = ::std::promise>
488 addSubscriberAsync(const ::IceStormElection::LogUpdate& iceP_llu,
489 const ::std::string& iceP_topic,
490 const ::IceStorm::SubscriberRecord& iceP_record,
491 const ::Ice::Context& context = Ice::noExplicitContext)
492 -> decltype(::std::declval<P<void>>().get_future())
494 return _makePromiseOutgoing<void, P>(
497 &IceStormElection::ReplicaObserverPrx::_iceI_addSubscriber,
504 ::std::function<void()>
505 addSubscriberAsync(const ::IceStormElection::LogUpdate& iceP_llu,
506 const ::std::string& iceP_topic,
507 const ::IceStorm::SubscriberRecord& iceP_record,
508 ::std::function<
void()> response,
509 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
510 ::std::function<
void(
bool)> sent =
nullptr,
511 const ::Ice::Context& context = Ice::noExplicitContext)
513 return _makeLamdaOutgoing<void>(
518 &IceStormElection::ReplicaObserverPrx::_iceI_addSubscriber,
525 void _iceI_addSubscriber(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
526 const ::IceStormElection::LogUpdate&,
527 const ::std::string&,
528 const ::IceStorm::SubscriberRecord&,
529 const ::Ice::Context&);
532 removeSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
533 const ::std::string& iceP_topic,
534 const ::Ice::IdentitySeq& iceP_subscribers,
535 const ::Ice::Context& context = Ice::noExplicitContext)
537 _makePromiseOutgoing<void>(
540 &IceStormElection::ReplicaObserverPrx::_iceI_removeSubscriber,
548 template <
template <
typename>
class P = ::std::promise>
550 removeSubscriberAsync(const ::IceStormElection::LogUpdate& iceP_llu,
551 const ::std::string& iceP_topic,
552 const ::Ice::IdentitySeq& iceP_subscribers,
553 const ::Ice::Context& context = Ice::noExplicitContext)
554 -> decltype(::std::declval<P<void>>().get_future())
556 return _makePromiseOutgoing<void, P>(
559 &IceStormElection::ReplicaObserverPrx::_iceI_removeSubscriber,
566 ::std::function<void()>
567 removeSubscriberAsync(const ::IceStormElection::LogUpdate& iceP_llu,
568 const ::std::string& iceP_topic,
569 const ::Ice::IdentitySeq& iceP_subscribers,
570 ::std::function<
void()> response,
571 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
572 ::std::function<
void(
bool)> sent =
nullptr,
573 const ::Ice::Context& context = Ice::noExplicitContext)
575 return _makeLamdaOutgoing<void>(
580 &IceStormElection::ReplicaObserverPrx::_iceI_removeSubscriber,
587 void _iceI_removeSubscriber(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
588 const ::IceStormElection::LogUpdate&,
589 const ::std::string&,
590 const ::Ice::IdentitySeq&,
591 const ::Ice::Context&);
593 static const ::std::string& ice_staticId();
597 friend ::std::shared_ptr<ReplicaObserverPrx> IceInternal::createProxy<ReplicaObserverPrx>();
599 virtual ::std::shared_ptr<::Ice::ObjectPrx> _newInstance()
const override;
602 class TopicManagerSyncPrx :
public virtual ::Ice::Proxy<TopicManagerSyncPrx, ::Ice::ObjectPrx>
608 const ::Ice::Context& context = Ice::noExplicitContext)
611 _makePromiseOutgoing<::IceStormElection::TopicManagerSync::GetContentResult>(
612 true,
this, &IceStormElection::TopicManagerSyncPrx::_iceI_getContent, context)
614 iceP_llu = ::std::move(result.llu);
615 iceP_content = ::std::move(result.content);
618 template <
template <
typename>
class P = ::std::promise>
620 getContentAsync(const ::Ice::Context& context = Ice::noExplicitContext)
621 -> decltype(::std::declval<P<::IceStormElection::TopicManagerSync::GetContentResult>>()
624 return _makePromiseOutgoing<::IceStormElection::TopicManagerSync::GetContentResult, P>(
625 false,
this, &IceStormElection::TopicManagerSyncPrx::_iceI_getContent, context);
628 ::std::function<void()>
631 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
632 ::std::function<
void(
bool)> sent =
nullptr,
633 const ::Ice::Context& context = Ice::noExplicitContext)
636 [response](::IceStormElection::TopicManagerSync::GetContentResult&& result)
637 { response(::std::move(result.llu), ::std::move(result.content)); };
638 return _makeLamdaOutgoing<::IceStormElection::TopicManagerSync::GetContentResult>(
643 &IceStormElection::TopicManagerSyncPrx::_iceI_getContent,
647 void _iceI_getContent(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<
648 ::IceStormElection::TopicManagerSync::GetContentResult>>&,
649 const ::Ice::Context&);
651 static const ::std::string& ice_staticId();
655 friend ::std::shared_ptr<TopicManagerSyncPrx>
656 IceInternal::createProxy<TopicManagerSyncPrx>();
658 virtual ::std::shared_ptr<::Ice::ObjectPrx> _newInstance()
const override;
661 class NodePrx :
public virtual ::Ice::Proxy<NodePrx, ::Ice::ObjectPrx>
665 invitation(
int iceP_j,
666 const ::std::string& iceP_gn,
667 const ::Ice::Context& context = Ice::noExplicitContext)
669 _makePromiseOutgoing<void>(
670 true,
this, &IceStormElection::NodePrx::_iceI_invitation, iceP_j, iceP_gn, context)
674 template <
template <
typename>
class P = ::std::promise>
676 invitationAsync(
int iceP_j,
677 const ::std::string& iceP_gn,
678 const ::Ice::Context& context = Ice::noExplicitContext)
679 -> decltype(::std::declval<P<void>>().get_future())
681 return _makePromiseOutgoing<void, P>(
false,
683 &IceStormElection::NodePrx::_iceI_invitation,
689 ::std::function<void()>
690 invitationAsync(
int iceP_j,
691 const ::std::string& iceP_gn,
692 ::std::function<
void()> response,
693 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
694 ::std::function<
void(
bool)> sent =
nullptr,
695 const ::Ice::Context& context = Ice::noExplicitContext)
697 return _makeLamdaOutgoing<void>(response,
701 &IceStormElection::NodePrx::_iceI_invitation,
707 void _iceI_invitation(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
709 const ::std::string&,
710 const ::Ice::Context&);
714 const ::std::string& iceP_gn,
715 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_coordinator,
717 long long int iceP_generation,
718 const ::Ice::Context& context = Ice::noExplicitContext)
720 _makePromiseOutgoing<void>(
true,
722 &IceStormElection::NodePrx::_iceI_ready,
732 template <
template <
typename>
class P = ::std::promise>
734 readyAsync(
int iceP_j,
735 const ::std::string& iceP_gn,
736 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_coordinator,
738 long long int iceP_generation,
739 const ::Ice::Context& context = Ice::noExplicitContext)
740 -> decltype(::std::declval<P<void>>().get_future())
742 return _makePromiseOutgoing<void, P>(
false,
744 &IceStormElection::NodePrx::_iceI_ready,
753 ::std::function<void()>
754 readyAsync(
int iceP_j,
755 const ::std::string& iceP_gn,
756 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_coordinator,
758 long long int iceP_generation,
759 ::std::function<
void()> response,
760 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
761 ::std::function<
void(
bool)> sent =
nullptr,
762 const ::Ice::Context& context = Ice::noExplicitContext)
764 return _makeLamdaOutgoing<void>(response,
768 &IceStormElection::NodePrx::_iceI_ready,
777 void _iceI_ready(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
779 const ::std::string&,
780 const ::std::shared_ptr<::Ice::ObjectPrx>&,
783 const ::Ice::Context&);
787 const ::std::string& iceP_gn,
788 const ::Ice::IntSeq& iceP_forwardedInvites,
789 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_observer,
790 const ::IceStormElection::LogUpdate& iceP_llu,
792 const ::Ice::Context& context = Ice::noExplicitContext)
794 _makePromiseOutgoing<void>(
true,
796 &IceStormElection::NodePrx::_iceI_accept,
799 iceP_forwardedInvites,
807 template <
template <
typename>
class P = ::std::promise>
809 acceptAsync(
int iceP_j,
810 const ::std::string& iceP_gn,
811 const ::Ice::IntSeq& iceP_forwardedInvites,
812 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_observer,
813 const ::IceStormElection::LogUpdate& iceP_llu,
815 const ::Ice::Context& context = Ice::noExplicitContext)
816 -> decltype(::std::declval<P<void>>().get_future())
818 return _makePromiseOutgoing<void, P>(
false,
820 &IceStormElection::NodePrx::_iceI_accept,
823 iceP_forwardedInvites,
830 ::std::function<void()>
831 acceptAsync(
int iceP_j,
832 const ::std::string& iceP_gn,
833 const ::Ice::IntSeq& iceP_forwardedInvites,
834 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_observer,
835 const ::IceStormElection::LogUpdate& iceP_llu,
837 ::std::function<
void()> response,
838 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
839 ::std::function<
void(
bool)> sent =
nullptr,
840 const ::Ice::Context& context = Ice::noExplicitContext)
842 return _makeLamdaOutgoing<void>(response,
846 &IceStormElection::NodePrx::_iceI_accept,
849 iceP_forwardedInvites,
856 void _iceI_accept(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
858 const ::std::string&,
859 const ::Ice::IntSeq&,
860 const ::std::shared_ptr<::Ice::ObjectPrx>&,
861 const ::IceStormElection::LogUpdate&,
863 const ::Ice::Context&);
866 areYouCoordinator(const ::Ice::Context& context = Ice::noExplicitContext)
868 return _makePromiseOutgoing<bool>(
869 true,
this, &IceStormElection::NodePrx::_iceI_areYouCoordinator, context)
873 template <
template <
typename>
class P = ::std::promise>
875 areYouCoordinatorAsync(const ::Ice::Context& context = Ice::noExplicitContext)
876 -> decltype(::std::declval<P<bool>>().get_future())
878 return _makePromiseOutgoing<bool, P>(
879 false,
this, &IceStormElection::NodePrx::_iceI_areYouCoordinator, context);
882 ::std::function<void()>
883 areYouCoordinatorAsync(::std::function<
void(
bool)> response,
884 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
885 ::std::function<
void(
bool)> sent =
nullptr,
886 const ::Ice::Context& context = Ice::noExplicitContext)
888 return _makeLamdaOutgoing<bool>(response,
892 &IceStormElection::NodePrx::_iceI_areYouCoordinator,
896 void _iceI_areYouCoordinator(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<bool>>&,
897 const ::Ice::Context&);
900 areYouThere(const ::std::string& iceP_gn,
902 const ::Ice::Context& context = Ice::noExplicitContext)
904 return _makePromiseOutgoing<bool>(
true,
906 &IceStormElection::NodePrx::_iceI_areYouThere,
913 template <
template <
typename>
class P = ::std::promise>
915 areYouThereAsync(const ::std::string& iceP_gn,
917 const ::Ice::Context& context = Ice::noExplicitContext)
918 -> decltype(::std::declval<P<bool>>().get_future())
920 return _makePromiseOutgoing<bool, P>(
false,
922 &IceStormElection::NodePrx::_iceI_areYouThere,
928 ::std::function<void()>
929 areYouThereAsync(const ::std::string& iceP_gn,
931 ::std::function<
void(
bool)> response,
932 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
933 ::std::function<
void(
bool)> sent =
nullptr,
934 const ::Ice::Context& context = Ice::noExplicitContext)
936 return _makeLamdaOutgoing<bool>(response,
940 &IceStormElection::NodePrx::_iceI_areYouThere,
946 void _iceI_areYouThere(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<bool>>&,
947 const ::std::string&,
949 const ::Ice::Context&);
951 ::std::shared_ptr<::Ice::ObjectPrx>
952 sync(const ::Ice::Context& context = Ice::noExplicitContext)
954 return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(
955 true,
this, &IceStormElection::NodePrx::_iceI_sync, context)
959 template <
template <
typename>
class P = ::std::promise>
961 syncAsync(const ::Ice::Context& context = Ice::noExplicitContext)
962 -> decltype(::std::declval<P<::std::shared_ptr<::Ice::ObjectPrx>>>().get_future())
964 return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>, P>(
965 false,
this, &IceStormElection::NodePrx::_iceI_sync, context);
968 ::std::function<void()>
969 syncAsync(::std::function<
void(::std::shared_ptr<::Ice::ObjectPrx>)> response,
970 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
971 ::std::function<
void(
bool)> sent =
nullptr,
972 const ::Ice::Context& context = Ice::noExplicitContext)
974 return _makeLamdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(
975 response, ex, sent,
this, &IceStormElection::NodePrx::_iceI_sync, context);
978 void _iceI_sync(const ::std::shared_ptr<
979 ::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>&,
980 const ::Ice::Context&);
983 nodes(const ::Ice::Context& context = Ice::noExplicitContext)
985 return _makePromiseOutgoing<::IceStormElection::NodeInfoSeq>(
986 true,
this, &IceStormElection::NodePrx::_iceI_nodes, context)
990 template <
template <
typename>
class P = ::std::promise>
992 nodesAsync(const ::Ice::Context& context = Ice::noExplicitContext)
993 -> decltype(::std::declval<P<::IceStormElection::NodeInfoSeq>>().get_future())
995 return _makePromiseOutgoing<::IceStormElection::NodeInfoSeq, P>(
996 false,
this, &IceStormElection::NodePrx::_iceI_nodes, context);
999 ::std::function<void()>
1001 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
1002 ::std::function<
void(
bool)> sent =
nullptr,
1003 const ::Ice::Context& context = Ice::noExplicitContext)
1005 return _makeLamdaOutgoing<::IceStormElection::NodeInfoSeq>(
1006 response, ex, sent,
this, &IceStormElection::NodePrx::_iceI_nodes, context);
1009 void _iceI_nodes(const ::std::shared_ptr<
1010 ::IceInternal::OutgoingAsyncT<::IceStormElection::NodeInfoSeq>>&,
1011 const ::Ice::Context&);
1014 query(const ::Ice::Context& context = Ice::noExplicitContext)
1016 return _makePromiseOutgoing<::IceStormElection::QueryInfo>(
1017 true,
this, &IceStormElection::NodePrx::_iceI_query, context)
1021 template <
template <
typename>
class P = ::std::promise>
1023 queryAsync(const ::Ice::Context& context = Ice::noExplicitContext)
1024 -> decltype(::std::declval<P<::IceStormElection::QueryInfo>>().get_future())
1026 return _makePromiseOutgoing<::IceStormElection::QueryInfo, P>(
1027 false,
this, &IceStormElection::NodePrx::_iceI_query, context);
1030 ::std::function<void()>
1032 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
1033 ::std::function<
void(
bool)> sent =
nullptr,
1034 const ::Ice::Context& context = Ice::noExplicitContext)
1036 return _makeLamdaOutgoing<::IceStormElection::QueryInfo>(
1037 response, ex, sent,
this, &IceStormElection::NodePrx::_iceI_query, context);
1041 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::IceStormElection::QueryInfo>>&,
1042 const ::Ice::Context&);
1044 static const ::std::string& ice_staticId();
1048 friend ::std::shared_ptr<NodePrx> IceInternal::createProxy<NodePrx>();
1050 virtual ::std::shared_ptr<::Ice::ObjectPrx> _newInstance()
const override;
1061 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
1062 static const int minWireSize = 3;
1063 static const bool fixedLength =
false;
1066 template <
typename S>
1072 istr->readAll(
v.id,
v.records);
1076 template <
typename S>
1082 istr->readAll(
v.reason);
1089 static const StreamHelperCategory helper = StreamHelperCategoryEnum;
1090 static const int minValue = 0;
1091 static const int maxValue = 3;
1092 static const int minWireSize = 1;
1093 static const bool fixedLength =
false;
1099 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
1100 static const int minWireSize = 6;
1101 static const bool fixedLength =
false;
1104 template <
typename S>
1110 istr->readAll(
v.id,
v.n);
1117 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
1118 static const int minWireSize = 20;
1119 static const bool fixedLength =
true;
1122 template <
typename S>
1128 istr->readAll(
v.id,
v.llu);
1135 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
1136 static const int minWireSize = 17;
1137 static const bool fixedLength =
false;
1140 template <
typename S>
1146 istr->readAll(
v.id,
v.coord,
v.group,
v.replica,
v.state,
v.up,
v.max);
1161 using NodePtr = ::std::shared_ptr<Node>;
1162 using NodePrxPtr = ::std::shared_ptr<NodePrx>;
1166 #else // C++98 mapping
1191 class ReplicaObserver;
1194 typedef ::IceInternal::ProxyHandle<::IceProxy::IceStormElection::ReplicaObserver>
1202 typedef ::IceInternal::ProxyHandle<::IceProxy::IceStormElection::TopicManagerSync>
1209 typedef ::IceInternal::Handle<::IceStormElection::Node>
NodePtr;
1210 typedef ::IceInternal::ProxyHandle<::IceProxy::IceStormElection::Node>
NodePrx;
1282 if (llu != rhs_.llu)
1300 else if (rhs_.id <
id)
1308 else if (rhs_.llu < llu)
1368 typedef ::IceUtil::Handle<Callback_ReplicaObserver_createTopic_Base>
1375 typedef ::IceUtil::Handle<Callback_ReplicaObserver_destroyTopic_Base>
1382 typedef ::IceUtil::Handle<Callback_ReplicaObserver_addSubscriber_Base>
1386 public virtual ::IceInternal::CallbackBase
1390 typedef ::IceUtil::Handle<Callback_ReplicaObserver_removeSubscriber_Base>
1397 typedef ::IceUtil::Handle<Callback_TopicManagerSync_getContent_Base>
1422 typedef ::IceUtil::Handle<Callback_Node_areYouCoordinator_Base>
1454 class ReplicaObserver :
public virtual ::Ice::Proxy<ReplicaObserver, ::IceProxy::Ice::Object>
1458 init(const ::IceStormElection::LogUpdate& iceP_llu,
1460 const ::Ice::Context& context = ::Ice::noExplicitContext)
1462 end_init(_iceI_begin_init(
1463 iceP_llu, iceP_content, context, ::IceInternal::dummyCallback, 0,
true));
1466 ::Ice::AsyncResultPtr
1469 const ::Ice::Context& context = ::Ice::noExplicitContext)
1471 return _iceI_begin_init(
1472 iceP_llu, iceP_content, context, ::IceInternal::dummyCallback, 0);
1475 ::Ice::AsyncResultPtr
1478 const ::Ice::CallbackPtr& del,
1479 const ::Ice::LocalObjectPtr& cookie = 0)
1481 return _iceI_begin_init(iceP_llu, iceP_content, ::Ice::noExplicitContext, del, cookie);
1484 ::Ice::AsyncResultPtr
1487 const ::Ice::Context& context,
1488 const ::Ice::CallbackPtr& del,
1489 const ::Ice::LocalObjectPtr& cookie = 0)
1491 return _iceI_begin_init(iceP_llu, iceP_content, context, del, cookie);
1494 ::Ice::AsyncResultPtr
1498 const ::Ice::LocalObjectPtr& cookie = 0)
1500 return _iceI_begin_init(iceP_llu, iceP_content, ::Ice::noExplicitContext, del, cookie);
1503 ::Ice::AsyncResultPtr
1506 const ::Ice::Context& context,
1508 const ::Ice::LocalObjectPtr& cookie = 0)
1510 return _iceI_begin_init(iceP_llu, iceP_content, context, del, cookie);
1513 void end_init(const ::Ice::AsyncResultPtr&);
1516 ::Ice::AsyncResultPtr _iceI_begin_init(const ::IceStormElection::LogUpdate&,
1518 const ::Ice::Context&,
1519 const ::IceInternal::CallbackBasePtr&,
1520 const ::Ice::LocalObjectPtr& cookie = 0,
1526 const ::std::string& iceP_name,
1527 const ::Ice::Context& context = ::Ice::noExplicitContext)
1529 end_createTopic(_iceI_begin_createTopic(
1530 iceP_llu, iceP_name, context, ::IceInternal::dummyCallback, 0,
true));
1533 ::Ice::AsyncResultPtr
1535 const ::std::string& iceP_name,
1536 const ::Ice::Context& context = ::Ice::noExplicitContext)
1538 return _iceI_begin_createTopic(
1539 iceP_llu, iceP_name, context, ::IceInternal::dummyCallback, 0);
1542 ::Ice::AsyncResultPtr
1544 const ::std::string& iceP_name,
1545 const ::Ice::CallbackPtr& del,
1546 const ::Ice::LocalObjectPtr& cookie = 0)
1548 return _iceI_begin_createTopic(
1549 iceP_llu, iceP_name, ::Ice::noExplicitContext, del, cookie);
1552 ::Ice::AsyncResultPtr
1554 const ::std::string& iceP_name,
1555 const ::Ice::Context& context,
1556 const ::Ice::CallbackPtr& del,
1557 const ::Ice::LocalObjectPtr& cookie = 0)
1559 return _iceI_begin_createTopic(iceP_llu, iceP_name, context, del, cookie);
1562 ::Ice::AsyncResultPtr
1564 const ::std::string& iceP_name,
1566 const ::Ice::LocalObjectPtr& cookie = 0)
1568 return _iceI_begin_createTopic(
1569 iceP_llu, iceP_name, ::Ice::noExplicitContext, del, cookie);
1572 ::Ice::AsyncResultPtr
1574 const ::std::string& iceP_name,
1575 const ::Ice::Context& context,
1577 const ::Ice::LocalObjectPtr& cookie = 0)
1579 return _iceI_begin_createTopic(iceP_llu, iceP_name, context, del, cookie);
1582 void end_createTopic(const ::Ice::AsyncResultPtr&);
1585 ::Ice::AsyncResultPtr _iceI_begin_createTopic(const ::IceStormElection::LogUpdate&,
1586 const ::std::string&,
1587 const ::Ice::Context&,
1588 const ::IceInternal::CallbackBasePtr&,
1589 const ::Ice::LocalObjectPtr& cookie = 0,
1595 const ::std::string& iceP_name,
1596 const ::Ice::Context& context = ::Ice::noExplicitContext)
1598 end_destroyTopic(_iceI_begin_destroyTopic(
1599 iceP_llu, iceP_name, context, ::IceInternal::dummyCallback, 0,
true));
1602 ::Ice::AsyncResultPtr
1604 const ::std::string& iceP_name,
1605 const ::Ice::Context& context = ::Ice::noExplicitContext)
1607 return _iceI_begin_destroyTopic(
1608 iceP_llu, iceP_name, context, ::IceInternal::dummyCallback, 0);
1611 ::Ice::AsyncResultPtr
1613 const ::std::string& iceP_name,
1614 const ::Ice::CallbackPtr& del,
1615 const ::Ice::LocalObjectPtr& cookie = 0)
1617 return _iceI_begin_destroyTopic(
1618 iceP_llu, iceP_name, ::Ice::noExplicitContext, del, cookie);
1621 ::Ice::AsyncResultPtr
1623 const ::std::string& iceP_name,
1624 const ::Ice::Context& context,
1625 const ::Ice::CallbackPtr& del,
1626 const ::Ice::LocalObjectPtr& cookie = 0)
1628 return _iceI_begin_destroyTopic(iceP_llu, iceP_name, context, del, cookie);
1631 ::Ice::AsyncResultPtr
1633 const ::std::string& iceP_name,
1635 const ::Ice::LocalObjectPtr& cookie = 0)
1637 return _iceI_begin_destroyTopic(
1638 iceP_llu, iceP_name, ::Ice::noExplicitContext, del, cookie);
1641 ::Ice::AsyncResultPtr
1643 const ::std::string& iceP_name,
1644 const ::Ice::Context& context,
1646 const ::Ice::LocalObjectPtr& cookie = 0)
1648 return _iceI_begin_destroyTopic(iceP_llu, iceP_name, context, del, cookie);
1651 void end_destroyTopic(const ::Ice::AsyncResultPtr&);
1654 ::Ice::AsyncResultPtr _iceI_begin_destroyTopic(const ::IceStormElection::LogUpdate&,
1655 const ::std::string&,
1656 const ::Ice::Context&,
1657 const ::IceInternal::CallbackBasePtr&,
1658 const ::Ice::LocalObjectPtr& cookie = 0,
1664 const ::std::string& iceP_topic,
1665 const ::IceStorm::SubscriberRecord& iceP_record,
1666 const ::Ice::Context& context = ::Ice::noExplicitContext)
1668 end_addSubscriber(_iceI_begin_addSubscriber(
1669 iceP_llu, iceP_topic, iceP_record, context, ::IceInternal::dummyCallback, 0,
true));
1672 ::Ice::AsyncResultPtr
1674 const ::std::string& iceP_topic,
1675 const ::IceStorm::SubscriberRecord& iceP_record,
1676 const ::Ice::Context& context = ::Ice::noExplicitContext)
1678 return _iceI_begin_addSubscriber(
1679 iceP_llu, iceP_topic, iceP_record, context, ::IceInternal::dummyCallback, 0);
1682 ::Ice::AsyncResultPtr
1684 const ::std::string& iceP_topic,
1685 const ::IceStorm::SubscriberRecord& iceP_record,
1686 const ::Ice::CallbackPtr& del,
1687 const ::Ice::LocalObjectPtr& cookie = 0)
1689 return _iceI_begin_addSubscriber(
1690 iceP_llu, iceP_topic, iceP_record, ::Ice::noExplicitContext, del, cookie);
1693 ::Ice::AsyncResultPtr
1695 const ::std::string& iceP_topic,
1696 const ::IceStorm::SubscriberRecord& iceP_record,
1697 const ::Ice::Context& context,
1698 const ::Ice::CallbackPtr& del,
1699 const ::Ice::LocalObjectPtr& cookie = 0)
1701 return _iceI_begin_addSubscriber(
1702 iceP_llu, iceP_topic, iceP_record, context, del, cookie);
1705 ::Ice::AsyncResultPtr
1707 const ::IceStormElection::LogUpdate& iceP_llu,
1708 const ::std::string& iceP_topic,
1709 const ::IceStorm::SubscriberRecord& iceP_record,
1711 const ::Ice::LocalObjectPtr& cookie = 0)
1713 return _iceI_begin_addSubscriber(
1714 iceP_llu, iceP_topic, iceP_record, ::Ice::noExplicitContext, del, cookie);
1717 ::Ice::AsyncResultPtr
1719 const ::IceStormElection::LogUpdate& iceP_llu,
1720 const ::std::string& iceP_topic,
1721 const ::IceStorm::SubscriberRecord& iceP_record,
1722 const ::Ice::Context& context,
1724 const ::Ice::LocalObjectPtr& cookie = 0)
1726 return _iceI_begin_addSubscriber(
1727 iceP_llu, iceP_topic, iceP_record, context, del, cookie);
1730 void end_addSubscriber(const ::Ice::AsyncResultPtr&);
1733 ::Ice::AsyncResultPtr _iceI_begin_addSubscriber(const ::IceStormElection::LogUpdate&,
1734 const ::std::string&,
1735 const ::IceStorm::SubscriberRecord&,
1736 const ::Ice::Context&,
1737 const ::IceInternal::CallbackBasePtr&,
1738 const ::Ice::LocalObjectPtr& cookie = 0,
1744 const ::std::string& iceP_topic,
1745 const ::Ice::IdentitySeq& iceP_subscribers,
1746 const ::Ice::Context& context = ::Ice::noExplicitContext)
1748 end_removeSubscriber(_iceI_begin_removeSubscriber(iceP_llu,
1752 ::IceInternal::dummyCallback,
1757 ::Ice::AsyncResultPtr
1759 const ::std::string& iceP_topic,
1760 const ::Ice::IdentitySeq& iceP_subscribers,
1761 const ::Ice::Context& context = ::Ice::noExplicitContext)
1763 return _iceI_begin_removeSubscriber(
1764 iceP_llu, iceP_topic, iceP_subscribers, context, ::IceInternal::dummyCallback, 0);
1767 ::Ice::AsyncResultPtr
1769 const ::std::string& iceP_topic,
1770 const ::Ice::IdentitySeq& iceP_subscribers,
1771 const ::Ice::CallbackPtr& del,
1772 const ::Ice::LocalObjectPtr& cookie = 0)
1774 return _iceI_begin_removeSubscriber(
1775 iceP_llu, iceP_topic, iceP_subscribers, ::Ice::noExplicitContext, del, cookie);
1778 ::Ice::AsyncResultPtr
1780 const ::std::string& iceP_topic,
1781 const ::Ice::IdentitySeq& iceP_subscribers,
1782 const ::Ice::Context& context,
1783 const ::Ice::CallbackPtr& del,
1784 const ::Ice::LocalObjectPtr& cookie = 0)
1786 return _iceI_begin_removeSubscriber(
1787 iceP_llu, iceP_topic, iceP_subscribers, context, del, cookie);
1790 ::Ice::AsyncResultPtr
1792 const ::IceStormElection::LogUpdate& iceP_llu,
1793 const ::std::string& iceP_topic,
1794 const ::Ice::IdentitySeq& iceP_subscribers,
1796 const ::Ice::LocalObjectPtr& cookie = 0)
1798 return _iceI_begin_removeSubscriber(
1799 iceP_llu, iceP_topic, iceP_subscribers, ::Ice::noExplicitContext, del, cookie);
1802 ::Ice::AsyncResultPtr
1804 const ::IceStormElection::LogUpdate& iceP_llu,
1805 const ::std::string& iceP_topic,
1806 const ::Ice::IdentitySeq& iceP_subscribers,
1807 const ::Ice::Context& context,
1809 const ::Ice::LocalObjectPtr& cookie = 0)
1811 return _iceI_begin_removeSubscriber(
1812 iceP_llu, iceP_topic, iceP_subscribers, context, del, cookie);
1815 void end_removeSubscriber(const ::Ice::AsyncResultPtr&);
1818 ::Ice::AsyncResultPtr _iceI_begin_removeSubscriber(const ::IceStormElection::LogUpdate&,
1819 const ::std::string&,
1820 const ::Ice::IdentitySeq&,
1821 const ::Ice::Context&,
1822 const ::IceInternal::CallbackBasePtr&,
1823 const ::Ice::LocalObjectPtr& cookie = 0,
1827 static const ::std::string& ice_staticId();
1830 virtual ::IceProxy::Ice::Object* _newInstance()
const;
1833 class TopicManagerSync :
public virtual ::Ice::Proxy<TopicManagerSync, ::IceProxy::Ice::Object>
1839 const ::Ice::Context& context = ::Ice::noExplicitContext)
1841 end_getContent(iceP_llu,
1843 _iceI_begin_getContent(context, ::IceInternal::dummyCallback, 0,
true));
1846 ::Ice::AsyncResultPtr
1849 return _iceI_begin_getContent(context, ::IceInternal::dummyCallback, 0);
1852 ::Ice::AsyncResultPtr
1855 return _iceI_begin_getContent(::Ice::noExplicitContext, del, cookie);
1858 ::Ice::AsyncResultPtr
1860 const ::Ice::CallbackPtr& del,
1861 const ::Ice::LocalObjectPtr& cookie = 0)
1863 return _iceI_begin_getContent(context, del, cookie);
1866 ::Ice::AsyncResultPtr
1868 const ::Ice::LocalObjectPtr& cookie = 0)
1870 return _iceI_begin_getContent(::Ice::noExplicitContext, del, cookie);
1873 ::Ice::AsyncResultPtr
1876 const ::Ice::LocalObjectPtr& cookie = 0)
1878 return _iceI_begin_getContent(context, del, cookie);
1883 const ::Ice::AsyncResultPtr&);
1886 ::Ice::AsyncResultPtr _iceI_begin_getContent(const ::Ice::Context&,
1887 const ::IceInternal::CallbackBasePtr&,
1888 const ::Ice::LocalObjectPtr& cookie = 0,
1892 static const ::std::string& ice_staticId();
1895 virtual ::IceProxy::Ice::Object* _newInstance()
const;
1898 class Node :
public virtual ::Ice::Proxy<Node, ::IceProxy::Ice::Object>
1903 const ::std::string& iceP_gn,
1904 const ::Ice::Context& context = ::Ice::noExplicitContext)
1906 end_invitation(_iceI_begin_invitation(
1907 iceP_j, iceP_gn, context, ::IceInternal::dummyCallback, 0,
true));
1910 ::Ice::AsyncResultPtr
1912 const ::std::string& iceP_gn,
1913 const ::Ice::Context& context = ::Ice::noExplicitContext)
1915 return _iceI_begin_invitation(
1916 iceP_j, iceP_gn, context, ::IceInternal::dummyCallback, 0);
1919 ::Ice::AsyncResultPtr
1921 const ::std::string& iceP_gn,
1922 const ::Ice::CallbackPtr& del,
1923 const ::Ice::LocalObjectPtr& cookie = 0)
1925 return _iceI_begin_invitation(iceP_j, iceP_gn, ::Ice::noExplicitContext, del, cookie);
1928 ::Ice::AsyncResultPtr
1930 const ::std::string& iceP_gn,
1931 const ::Ice::Context& context,
1932 const ::Ice::CallbackPtr& del,
1933 const ::Ice::LocalObjectPtr& cookie = 0)
1935 return _iceI_begin_invitation(iceP_j, iceP_gn, context, del, cookie);
1938 ::Ice::AsyncResultPtr
1940 const ::std::string& iceP_gn,
1942 const ::Ice::LocalObjectPtr& cookie = 0)
1944 return _iceI_begin_invitation(iceP_j, iceP_gn, ::Ice::noExplicitContext, del, cookie);
1947 ::Ice::AsyncResultPtr
1949 const ::std::string& iceP_gn,
1950 const ::Ice::Context& context,
1952 const ::Ice::LocalObjectPtr& cookie = 0)
1954 return _iceI_begin_invitation(iceP_j, iceP_gn, context, del, cookie);
1957 void end_invitation(const ::Ice::AsyncResultPtr&);
1960 ::Ice::AsyncResultPtr _iceI_begin_invitation(::
Ice::Int,
1961 const ::std::string&,
1962 const ::Ice::Context&,
1963 const ::IceInternal::CallbackBasePtr&,
1964 const ::Ice::LocalObjectPtr& cookie = 0,
1970 const ::std::string& iceP_gn,
1971 const ::Ice::ObjectPrx& iceP_coordinator,
1974 const ::Ice::Context& context = ::Ice::noExplicitContext)
1976 end_ready(_iceI_begin_ready(iceP_j,
1982 ::IceInternal::dummyCallback,
1987 ::Ice::AsyncResultPtr
1989 const ::std::string& iceP_gn,
1990 const ::Ice::ObjectPrx& iceP_coordinator,
1993 const ::Ice::Context& context = ::Ice::noExplicitContext)
1995 return _iceI_begin_ready(iceP_j,
2001 ::IceInternal::dummyCallback,
2005 ::Ice::AsyncResultPtr
2007 const ::std::string& iceP_gn,
2008 const ::Ice::ObjectPrx& iceP_coordinator,
2011 const ::Ice::CallbackPtr& del,
2012 const ::Ice::LocalObjectPtr& cookie = 0)
2014 return _iceI_begin_ready(iceP_j,
2019 ::Ice::noExplicitContext,
2024 ::Ice::AsyncResultPtr
2026 const ::std::string& iceP_gn,
2027 const ::Ice::ObjectPrx& iceP_coordinator,
2030 const ::Ice::Context& context,
2031 const ::Ice::CallbackPtr& del,
2032 const ::Ice::LocalObjectPtr& cookie = 0)
2034 return _iceI_begin_ready(
2035 iceP_j, iceP_gn, iceP_coordinator, iceP_max, iceP_generation, context, del, cookie);
2038 ::Ice::AsyncResultPtr
2040 const ::std::string& iceP_gn,
2041 const ::Ice::ObjectPrx& iceP_coordinator,
2045 const ::Ice::LocalObjectPtr& cookie = 0)
2047 return _iceI_begin_ready(iceP_j,
2052 ::Ice::noExplicitContext,
2057 ::Ice::AsyncResultPtr
2059 const ::std::string& iceP_gn,
2060 const ::Ice::ObjectPrx& iceP_coordinator,
2063 const ::Ice::Context& context,
2065 const ::Ice::LocalObjectPtr& cookie = 0)
2067 return _iceI_begin_ready(
2068 iceP_j, iceP_gn, iceP_coordinator, iceP_max, iceP_generation, context, del, cookie);
2071 void end_ready(const ::Ice::AsyncResultPtr&);
2074 ::Ice::AsyncResultPtr _iceI_begin_ready(::
Ice::Int,
2075 const ::std::string&,
2076 const ::Ice::ObjectPrx&,
2079 const ::Ice::Context&,
2080 const ::IceInternal::CallbackBasePtr&,
2081 const ::Ice::LocalObjectPtr& cookie = 0,
2087 const ::std::string& iceP_gn,
2088 const ::Ice::IntSeq& iceP_forwardedInvites,
2089 const ::Ice::ObjectPrx& iceP_observer,
2090 const ::IceStormElection::LogUpdate& iceP_llu,
2092 const ::Ice::Context& context = ::Ice::noExplicitContext)
2094 end_accept(_iceI_begin_accept(iceP_j,
2096 iceP_forwardedInvites,
2101 ::IceInternal::dummyCallback,
2106 ::Ice::AsyncResultPtr
2108 const ::std::string& iceP_gn,
2109 const ::Ice::IntSeq& iceP_forwardedInvites,
2110 const ::Ice::ObjectPrx& iceP_observer,
2111 const ::IceStormElection::LogUpdate& iceP_llu,
2113 const ::Ice::Context& context = ::Ice::noExplicitContext)
2115 return _iceI_begin_accept(iceP_j,
2117 iceP_forwardedInvites,
2122 ::IceInternal::dummyCallback,
2126 ::Ice::AsyncResultPtr
2128 const ::std::string& iceP_gn,
2129 const ::Ice::IntSeq& iceP_forwardedInvites,
2130 const ::Ice::ObjectPrx& iceP_observer,
2131 const ::IceStormElection::LogUpdate& iceP_llu,
2133 const ::Ice::CallbackPtr& del,
2134 const ::Ice::LocalObjectPtr& cookie = 0)
2136 return _iceI_begin_accept(iceP_j,
2138 iceP_forwardedInvites,
2142 ::Ice::noExplicitContext,
2147 ::Ice::AsyncResultPtr
2149 const ::std::string& iceP_gn,
2150 const ::Ice::IntSeq& iceP_forwardedInvites,
2151 const ::Ice::ObjectPrx& iceP_observer,
2152 const ::IceStormElection::LogUpdate& iceP_llu,
2154 const ::Ice::Context& context,
2155 const ::Ice::CallbackPtr& del,
2156 const ::Ice::LocalObjectPtr& cookie = 0)
2158 return _iceI_begin_accept(iceP_j,
2160 iceP_forwardedInvites,
2169 ::Ice::AsyncResultPtr
2171 const ::std::string& iceP_gn,
2172 const ::Ice::IntSeq& iceP_forwardedInvites,
2173 const ::Ice::ObjectPrx& iceP_observer,
2174 const ::IceStormElection::LogUpdate& iceP_llu,
2177 const ::Ice::LocalObjectPtr& cookie = 0)
2179 return _iceI_begin_accept(iceP_j,
2181 iceP_forwardedInvites,
2185 ::Ice::noExplicitContext,
2190 ::Ice::AsyncResultPtr
2192 const ::std::string& iceP_gn,
2193 const ::Ice::IntSeq& iceP_forwardedInvites,
2194 const ::Ice::ObjectPrx& iceP_observer,
2195 const ::IceStormElection::LogUpdate& iceP_llu,
2197 const ::Ice::Context& context,
2199 const ::Ice::LocalObjectPtr& cookie = 0)
2201 return _iceI_begin_accept(iceP_j,
2203 iceP_forwardedInvites,
2212 void end_accept(const ::Ice::AsyncResultPtr&);
2215 ::Ice::AsyncResultPtr _iceI_begin_accept(::
Ice::Int,
2216 const ::std::string&,
2217 const ::Ice::IntSeq&,
2218 const ::Ice::ObjectPrx&,
2219 const ::IceStormElection::LogUpdate&,
2221 const ::Ice::Context&,
2222 const ::IceInternal::CallbackBasePtr&,
2223 const ::Ice::LocalObjectPtr& cookie = 0,
2230 return end_areYouCoordinator(
2231 _iceI_begin_areYouCoordinator(context, ::IceInternal::dummyCallback, 0,
true));
2234 ::Ice::AsyncResultPtr
2237 return _iceI_begin_areYouCoordinator(context, ::IceInternal::dummyCallback, 0);
2240 ::Ice::AsyncResultPtr
2242 const ::Ice::LocalObjectPtr& cookie = 0)
2244 return _iceI_begin_areYouCoordinator(::Ice::noExplicitContext, del, cookie);
2247 ::Ice::AsyncResultPtr
2249 const ::Ice::CallbackPtr& del,
2250 const ::Ice::LocalObjectPtr& cookie = 0)
2252 return _iceI_begin_areYouCoordinator(context, del, cookie);
2255 ::Ice::AsyncResultPtr
2257 const ::Ice::LocalObjectPtr& cookie = 0)
2259 return _iceI_begin_areYouCoordinator(::Ice::noExplicitContext, del, cookie);
2262 ::Ice::AsyncResultPtr
2265 const ::Ice::LocalObjectPtr& cookie = 0)
2267 return _iceI_begin_areYouCoordinator(context, del, cookie);
2270 bool end_areYouCoordinator(const ::Ice::AsyncResultPtr&);
2273 ::Ice::AsyncResultPtr _iceI_begin_areYouCoordinator(const ::Ice::Context&,
2274 const ::IceInternal::CallbackBasePtr&,
2275 const ::Ice::LocalObjectPtr& cookie = 0,
2282 const ::Ice::Context& context = ::Ice::noExplicitContext)
2284 return end_areYouThere(_iceI_begin_areYouThere(
2285 iceP_gn, iceP_j, context, ::IceInternal::dummyCallback, 0,
true));
2288 ::Ice::AsyncResultPtr
2291 const ::Ice::Context& context = ::Ice::noExplicitContext)
2293 return _iceI_begin_areYouThere(
2294 iceP_gn, iceP_j, context, ::IceInternal::dummyCallback, 0);
2297 ::Ice::AsyncResultPtr
2300 const ::Ice::CallbackPtr& del,
2301 const ::Ice::LocalObjectPtr& cookie = 0)
2303 return _iceI_begin_areYouThere(iceP_gn, iceP_j, ::Ice::noExplicitContext, del, cookie);
2306 ::Ice::AsyncResultPtr
2309 const ::Ice::Context& context,
2310 const ::Ice::CallbackPtr& del,
2311 const ::Ice::LocalObjectPtr& cookie = 0)
2313 return _iceI_begin_areYouThere(iceP_gn, iceP_j, context, del, cookie);
2316 ::Ice::AsyncResultPtr
2320 const ::Ice::LocalObjectPtr& cookie = 0)
2322 return _iceI_begin_areYouThere(iceP_gn, iceP_j, ::Ice::noExplicitContext, del, cookie);
2325 ::Ice::AsyncResultPtr
2328 const ::Ice::Context& context,
2330 const ::Ice::LocalObjectPtr& cookie = 0)
2332 return _iceI_begin_areYouThere(iceP_gn, iceP_j, context, del, cookie);
2335 bool end_areYouThere(const ::Ice::AsyncResultPtr&);
2338 ::Ice::AsyncResultPtr _iceI_begin_areYouThere(const ::std::string&,
2340 const ::Ice::Context&,
2341 const ::IceInternal::CallbackBasePtr&,
2342 const ::Ice::LocalObjectPtr& cookie = 0,
2347 sync(const ::Ice::Context& context = ::Ice::noExplicitContext)
2349 return end_sync(_iceI_begin_sync(context, ::IceInternal::dummyCallback, 0,
true));
2352 ::Ice::AsyncResultPtr
2353 begin_sync(const ::Ice::Context& context = ::Ice::noExplicitContext)
2355 return _iceI_begin_sync(context, ::IceInternal::dummyCallback, 0);
2358 ::Ice::AsyncResultPtr
2359 begin_sync(const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0)
2361 return _iceI_begin_sync(::Ice::noExplicitContext, del, cookie);
2364 ::Ice::AsyncResultPtr
2366 const ::Ice::CallbackPtr& del,
2367 const ::Ice::LocalObjectPtr& cookie = 0)
2369 return _iceI_begin_sync(context, del, cookie);
2372 ::Ice::AsyncResultPtr
2374 const ::Ice::LocalObjectPtr& cookie = 0)
2376 return _iceI_begin_sync(::Ice::noExplicitContext, del, cookie);
2379 ::Ice::AsyncResultPtr
2382 const ::Ice::LocalObjectPtr& cookie = 0)
2384 return _iceI_begin_sync(context, del, cookie);
2387 ::Ice::ObjectPrx end_sync(const ::Ice::AsyncResultPtr&);
2390 ::Ice::AsyncResultPtr _iceI_begin_sync(const ::Ice::Context&,
2391 const ::IceInternal::CallbackBasePtr&,
2392 const ::Ice::LocalObjectPtr& cookie = 0,
2397 nodes(const ::Ice::Context& context = ::Ice::noExplicitContext)
2399 return end_nodes(_iceI_begin_nodes(context, ::IceInternal::dummyCallback, 0,
true));
2402 ::Ice::AsyncResultPtr
2405 return _iceI_begin_nodes(context, ::IceInternal::dummyCallback, 0);
2408 ::Ice::AsyncResultPtr
2409 begin_nodes(const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0)
2411 return _iceI_begin_nodes(::Ice::noExplicitContext, del, cookie);
2414 ::Ice::AsyncResultPtr
2416 const ::Ice::CallbackPtr& del,
2417 const ::Ice::LocalObjectPtr& cookie = 0)
2419 return _iceI_begin_nodes(context, del, cookie);
2422 ::Ice::AsyncResultPtr
2424 const ::Ice::LocalObjectPtr& cookie = 0)
2426 return _iceI_begin_nodes(::Ice::noExplicitContext, del, cookie);
2429 ::Ice::AsyncResultPtr
2432 const ::Ice::LocalObjectPtr& cookie = 0)
2434 return _iceI_begin_nodes(context, del, cookie);
2440 ::Ice::AsyncResultPtr _iceI_begin_nodes(const ::Ice::Context&,
2441 const ::IceInternal::CallbackBasePtr&,
2442 const ::Ice::LocalObjectPtr& cookie = 0,
2447 query(const ::Ice::Context& context = ::Ice::noExplicitContext)
2449 return end_query(_iceI_begin_query(context, ::IceInternal::dummyCallback, 0,
true));
2452 ::Ice::AsyncResultPtr
2455 return _iceI_begin_query(context, ::IceInternal::dummyCallback, 0);
2458 ::Ice::AsyncResultPtr
2459 begin_query(const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0)
2461 return _iceI_begin_query(::Ice::noExplicitContext, del, cookie);
2464 ::Ice::AsyncResultPtr
2466 const ::Ice::CallbackPtr& del,
2467 const ::Ice::LocalObjectPtr& cookie = 0)
2469 return _iceI_begin_query(context, del, cookie);
2472 ::Ice::AsyncResultPtr
2474 const ::Ice::LocalObjectPtr& cookie = 0)
2476 return _iceI_begin_query(::Ice::noExplicitContext, del, cookie);
2479 ::Ice::AsyncResultPtr
2482 const ::Ice::LocalObjectPtr& cookie = 0)
2484 return _iceI_begin_query(context, del, cookie);
2490 ::Ice::AsyncResultPtr _iceI_begin_query(const ::Ice::Context&,
2491 const ::IceInternal::CallbackBasePtr&,
2492 const ::Ice::LocalObjectPtr& cookie = 0,
2496 static const ::std::string& ice_staticId();
2499 virtual ::IceProxy::Ice::Object* _newInstance()
const;
2507 class ReplicaObserver :
public virtual ::Ice::Object
2515 virtual bool ice_isA(const ::std::string&,
2516 const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2517 virtual ::std::vector<::std::string>
2518 ice_ids(const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2519 virtual const ::std::string&
ice_id(const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2523 virtual void init(const ::IceStormElection::LogUpdate&,
2525 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2526 bool _iceD_init(::IceInternal::Incoming&, const ::Ice::Current&);
2528 virtual void createTopic(const ::IceStormElection::LogUpdate&,
2529 const ::std::string&,
2530 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2533 virtual void destroyTopic(const ::IceStormElection::LogUpdate&,
2534 const ::std::string&,
2535 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2538 virtual void addSubscriber(const ::IceStormElection::LogUpdate&,
2539 const ::std::string&,
2540 const ::IceStorm::SubscriberRecord&,
2541 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2545 const ::std::string&,
2546 const ::Ice::IdentitySeq&,
2547 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2550 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&);
2560 return static_cast<const ::Ice::Object&
>(lhs) ==
static_cast<const ::Ice::Object&
>(rhs);
2566 return static_cast<const ::Ice::Object&
>(lhs) <
static_cast<const ::Ice::Object&
>(rhs);
2569 class TopicManagerSync :
public virtual ::Ice::Object
2577 virtual bool ice_isA(const ::std::string&,
2578 const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2579 virtual ::std::vector<::std::string>
2580 ice_ids(const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2581 virtual const ::std::string&
ice_id(const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2587 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2590 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&);
2600 return static_cast<const ::Ice::Object&
>(lhs) ==
static_cast<const ::Ice::Object&
>(rhs);
2606 return static_cast<const ::Ice::Object&
>(lhs) <
static_cast<const ::Ice::Object&
>(rhs);
2609 class Node :
public virtual ::Ice::Object
2617 virtual bool ice_isA(const ::std::string&,
2618 const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2619 virtual ::std::vector<::std::string>
2620 ice_ids(const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2621 virtual const ::std::string&
ice_id(const ::Ice::Current& = ::Ice::emptyCurrent)
const;
2626 const ::std::string&,
2627 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2631 const ::std::string&,
2632 const ::Ice::ObjectPrx&,
2635 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2636 bool _iceD_ready(::IceInternal::Incoming&, const ::Ice::Current&);
2639 const ::std::string&,
2640 const ::Ice::IntSeq&,
2641 const ::Ice::ObjectPrx&,
2642 const ::IceStormElection::LogUpdate&,
2644 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2645 bool _iceD_accept(::IceInternal::Incoming&, const ::Ice::Current&);
2647 virtual bool areYouCoordinator(const ::Ice::Current& = ::Ice::emptyCurrent)
const = 0;
2652 const ::Ice::Current& = ::Ice::emptyCurrent)
const = 0;
2655 virtual ::Ice::ObjectPrx
sync(const ::Ice::Current& = ::Ice::emptyCurrent)
const = 0;
2656 bool _iceD_sync(::IceInternal::Incoming&, const ::Ice::Current&)
const;
2659 nodes(const ::Ice::Current& = ::Ice::emptyCurrent)
const = 0;
2660 bool _iceD_nodes(::IceInternal::Incoming&, const ::Ice::Current&)
const;
2662 virtual ::IceStormElection::QueryInfo
2663 query(const ::Ice::Current& = ::Ice::emptyCurrent)
const = 0;
2664 bool _iceD_query(::IceInternal::Incoming&, const ::Ice::Current&)
const;
2666 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&);
2676 return static_cast<const ::Ice::Object&
>(lhs) ==
static_cast<const ::Ice::Object&
>(rhs);
2682 return static_cast<const ::Ice::Object&
>(lhs) <
static_cast<const ::Ice::Object&
>(rhs);
2693 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
2694 static const int minWireSize = 3;
2695 static const bool fixedLength =
false;
2698 template <
typename S>
2702 write(S* ostr, const ::IceStormElection::TopicContent&
v)
2705 ostr->write(
v.records);
2709 template <
typename S>
2716 istr->read(
v.records);
2723 static const StreamHelperCategory helper = StreamHelperCategoryUserException;
2726 template <
typename S>
2730 write(S* ostr, const ::IceStormElection::ObserverInconsistencyException&
v)
2732 ostr->write(
v.reason);
2736 template <
typename S>
2742 istr->read(
v.reason);
2749 static const StreamHelperCategory helper = StreamHelperCategoryEnum;
2750 static const int minValue = 0;
2751 static const int maxValue = 3;
2752 static const int minWireSize = 1;
2753 static const bool fixedLength =
false;
2759 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
2760 static const int minWireSize = 6;
2761 static const bool fixedLength =
false;
2764 template <
typename S>
2768 write(S* ostr, const ::IceStormElection::NodeInfo&
v)
2775 template <
typename S>
2789 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
2790 static const int minWireSize = 20;
2791 static const bool fixedLength =
true;
2794 template <
typename S>
2798 write(S* ostr, const ::IceStormElection::GroupInfo&
v)
2805 template <
typename S>
2819 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
2820 static const int minWireSize = 17;
2821 static const bool fixedLength =
false;
2824 template <
typename S>
2828 write(S* ostr, const ::IceStormElection::QueryInfo&
v)
2831 ostr->write(
v.coord);
2832 ostr->write(
v.group);
2833 ostr->write(
v.replica);
2834 ostr->write(
v.state);
2840 template <
typename S>
2847 istr->read(
v.coord);
2848 istr->read(
v.group);
2849 istr->read(
v.replica);
2850 istr->read(
v.state);
2864 public ::IceInternal::TwowayCallbackNC<T>
2874 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
2882 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
2885 proxy->end_init(result);
2887 catch (const ::Ice::Exception& ex)
2889 ::IceInternal::CallbackNC<T>::exception(result, ex);
2894 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
2906 void (
T::*excb)(const ::Ice::Exception&),
2907 void (
T::*sentcb)(
bool) = 0)
2915 void (
T::*excb)(const ::Ice::Exception&),
2916 void (
T::*sentcb)(
bool) = 0)
2925 void (
T::*excb)(const ::Ice::Exception&),
2926 void (
T::*sentcb)(
bool) = 0)
2934 void (
T::*excb)(const ::Ice::Exception&),
2935 void (
T::*sentcb)(
bool) = 0)
2940 template <
class T,
typename CT>
2943 public ::IceInternal::TwowayCallback<T, CT>
2948 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
2949 typedef void (
T::*
Sent)(bool,
const CT&);
2953 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
2961 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
2964 proxy->end_init(result);
2966 catch (const ::Ice::Exception& ex)
2968 ::IceInternal::Callback<T, CT>::exception(result, ex);
2973 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
2974 CT::dynamicCast(result->getCookie()));
2982 template <
class T,
typename CT>
2985 void (
T::*cb)(
const CT&),
2986 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
2987 void (
T::*sentcb)(
bool,
const CT&) = 0)
2992 template <
class T,
typename CT>
2995 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
2996 void (
T::*sentcb)(
bool,
const CT&) = 0)
3001 template <
class T,
typename CT>
3004 void (
T::*cb)(
const CT&),
3005 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3006 void (
T::*sentcb)(
bool,
const CT&) = 0)
3011 template <
class T,
typename CT>
3014 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3015 void (
T::*sentcb)(
bool,
const CT&) = 0)
3023 public ::IceInternal::TwowayCallbackNC<T>
3036 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
3044 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3047 proxy->end_createTopic(result);
3049 catch (const ::Ice::Exception& ex)
3051 ::IceInternal::CallbackNC<T>::exception(result, ex);
3056 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3068 void (
T::*excb)(const ::Ice::Exception&),
3069 void (
T::*sentcb)(
bool) = 0)
3077 void (
T::*excb)(const ::Ice::Exception&),
3078 void (
T::*sentcb)(
bool) = 0)
3087 void (
T::*excb)(const ::Ice::Exception&),
3088 void (
T::*sentcb)(
bool) = 0)
3096 void (
T::*excb)(const ::Ice::Exception&),
3097 void (
T::*sentcb)(
bool) = 0)
3102 template <
class T,
typename CT>
3105 public ::IceInternal::TwowayCallback<T, CT>
3110 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
3111 typedef void (
T::*
Sent)(bool,
const CT&);
3118 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3126 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3129 proxy->end_createTopic(result);
3131 catch (const ::Ice::Exception& ex)
3133 ::IceInternal::Callback<T, CT>::exception(result, ex);
3138 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3139 CT::dynamicCast(result->getCookie()));
3147 template <
class T,
typename CT>
3150 void (
T::*cb)(
const CT&),
3151 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3152 void (
T::*sentcb)(
bool,
const CT&) = 0)
3157 template <
class T,
typename CT>
3160 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3161 void (
T::*sentcb)(
bool,
const CT&) = 0)
3166 template <
class T,
typename CT>
3169 void (
T::*cb)(
const CT&),
3170 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3171 void (
T::*sentcb)(
bool,
const CT&) = 0)
3176 template <
class T,
typename CT>
3179 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3180 void (
T::*sentcb)(
bool,
const CT&) = 0)
3188 public ::IceInternal::TwowayCallbackNC<T>
3201 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
3209 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3212 proxy->end_destroyTopic(result);
3214 catch (const ::Ice::Exception& ex)
3216 ::IceInternal::CallbackNC<T>::exception(result, ex);
3221 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3233 void (
T::*excb)(const ::Ice::Exception&),
3234 void (
T::*sentcb)(
bool) = 0)
3242 void (
T::*excb)(const ::Ice::Exception&),
3243 void (
T::*sentcb)(
bool) = 0)
3252 void (
T::*excb)(const ::Ice::Exception&),
3253 void (
T::*sentcb)(
bool) = 0)
3261 void (
T::*excb)(const ::Ice::Exception&),
3262 void (
T::*sentcb)(
bool) = 0)
3267 template <
class T,
typename CT>
3270 public ::IceInternal::TwowayCallback<T, CT>
3275 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
3276 typedef void (
T::*
Sent)(bool,
const CT&);
3283 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3291 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3294 proxy->end_destroyTopic(result);
3296 catch (const ::Ice::Exception& ex)
3298 ::IceInternal::Callback<T, CT>::exception(result, ex);
3303 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3304 CT::dynamicCast(result->getCookie()));
3312 template <
class T,
typename CT>
3315 void (
T::*cb)(
const CT&),
3316 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3317 void (
T::*sentcb)(
bool,
const CT&) = 0)
3322 template <
class T,
typename CT>
3325 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3326 void (
T::*sentcb)(
bool,
const CT&) = 0)
3331 template <
class T,
typename CT>
3334 void (
T::*cb)(
const CT&),
3335 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3336 void (
T::*sentcb)(
bool,
const CT&) = 0)
3341 template <
class T,
typename CT>
3344 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3345 void (
T::*sentcb)(
bool,
const CT&) = 0)
3353 public ::IceInternal::TwowayCallbackNC<T>
3366 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
3374 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3377 proxy->end_addSubscriber(result);
3379 catch (const ::Ice::Exception& ex)
3381 ::IceInternal::CallbackNC<T>::exception(result, ex);
3386 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3398 void (
T::*excb)(const ::Ice::Exception&),
3399 void (
T::*sentcb)(
bool) = 0)
3407 void (
T::*excb)(const ::Ice::Exception&),
3408 void (
T::*sentcb)(
bool) = 0)
3417 void (
T::*excb)(const ::Ice::Exception&),
3418 void (
T::*sentcb)(
bool) = 0)
3426 void (
T::*excb)(const ::Ice::Exception&),
3427 void (
T::*sentcb)(
bool) = 0)
3432 template <
class T,
typename CT>
3435 public ::IceInternal::TwowayCallback<T, CT>
3440 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
3441 typedef void (
T::*
Sent)(bool,
const CT&);
3448 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3456 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3459 proxy->end_addSubscriber(result);
3461 catch (const ::Ice::Exception& ex)
3463 ::IceInternal::Callback<T, CT>::exception(result, ex);
3468 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3469 CT::dynamicCast(result->getCookie()));
3477 template <
class T,
typename CT>
3480 void (
T::*cb)(
const CT&),
3481 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3482 void (
T::*sentcb)(
bool,
const CT&) = 0)
3487 template <
class T,
typename CT>
3490 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3491 void (
T::*sentcb)(
bool,
const CT&) = 0)
3496 template <
class T,
typename CT>
3499 void (
T::*cb)(
const CT&),
3500 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3501 void (
T::*sentcb)(
bool,
const CT&) = 0)
3506 template <
class T,
typename CT>
3509 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3510 void (
T::*sentcb)(
bool,
const CT&) = 0)
3518 public ::IceInternal::TwowayCallbackNC<T>
3531 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
3539 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3542 proxy->end_removeSubscriber(result);
3544 catch (const ::Ice::Exception& ex)
3546 ::IceInternal::CallbackNC<T>::exception(result, ex);
3551 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3563 void (
T::*excb)(const ::Ice::Exception&),
3564 void (
T::*sentcb)(
bool) = 0)
3572 void (
T::*excb)(const ::Ice::Exception&),
3573 void (
T::*sentcb)(
bool) = 0)
3582 void (
T::*excb)(const ::Ice::Exception&),
3583 void (
T::*sentcb)(
bool) = 0)
3591 void (
T::*excb)(const ::Ice::Exception&),
3592 void (
T::*sentcb)(
bool) = 0)
3597 template <
class T,
typename CT>
3600 public ::IceInternal::TwowayCallback<T, CT>
3605 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
3606 typedef void (
T::*
Sent)(bool,
const CT&);
3613 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3621 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3624 proxy->end_removeSubscriber(result);
3626 catch (const ::Ice::Exception& ex)
3628 ::IceInternal::Callback<T, CT>::exception(result, ex);
3633 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3634 CT::dynamicCast(result->getCookie()));
3642 template <
class T,
typename CT>
3645 void (
T::*cb)(
const CT&),
3646 void (
T::*excb)(const ::Ice::Exception&,
3648 void (
T::*sentcb)(
bool,
const CT&) = 0)
3653 template <
class T,
typename CT>
3656 void (
T::*excb)(const ::Ice::Exception&,
3658 void (
T::*sentcb)(
bool,
const CT&) = 0)
3663 template <
class T,
typename CT>
3666 void (
T::*cb)(
const CT&),
3667 void (
T::*excb)(const ::Ice::Exception&,
3669 void (
T::*sentcb)(
bool,
const CT&) = 0)
3674 template <
class T,
typename CT>
3677 void (
T::*excb)(const ::Ice::Exception&,
3679 void (
T::*sentcb)(
bool,
const CT&) = 0)
3687 public ::IceInternal::TwowayCallbackNC<T>
3694 typedef void (
T::*
Response)(const ::IceStormElection::LogUpdate&,
3701 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
3709 ::IceStormElection::TopicManagerSyncPrx::uncheckedCast(result->getProxy());
3714 proxy->end_getContent(iceP_llu, iceP_content, result);
3716 catch (const ::Ice::Exception& ex)
3718 ::IceInternal::CallbackNC<T>::exception(result, ex);
3723 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(iceP_llu, iceP_content);
3735 void (
T::*cb)(const ::IceStormElection::LogUpdate&,
3737 void (
T::*excb)(const ::Ice::Exception&),
3738 void (
T::*sentcb)(
bool) = 0)
3747 void (
T::*cb)(const ::IceStormElection::LogUpdate&,
3749 void (
T::*excb)(const ::Ice::Exception&),
3750 void (
T::*sentcb)(
bool) = 0)
3755 template <
class T,
typename CT>
3758 public ::IceInternal::TwowayCallback<T, CT>
3763 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
3764 typedef void (
T::*
Sent)(bool,
const CT&);
3765 typedef void (
T::*
Response)(const ::IceStormElection::LogUpdate&,
3773 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3781 ::IceStormElection::TopicManagerSyncPrx::uncheckedCast(result->getProxy());
3786 proxy->end_getContent(iceP_llu, iceP_content, result);
3788 catch (const ::Ice::Exception& ex)
3790 ::IceInternal::Callback<T, CT>::exception(result, ex);
3795 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3796 iceP_llu, iceP_content, CT::dynamicCast(result->getCookie()));
3804 template <
class T,
typename CT>
3808 void (
T::*cb)(const ::IceStormElection::LogUpdate&,
3811 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3812 void (
T::*sentcb)(
bool,
const CT&) = 0)
3817 template <
class T,
typename CT>
3821 void (
T::*cb)(const ::IceStormElection::LogUpdate&,
3824 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3825 void (
T::*sentcb)(
bool,
const CT&) = 0)
3833 public ::IceInternal::OnewayCallbackNC<T>
3843 ::
IceInternal::OnewayCallbackNC<
T>(obj, cb, excb, sentcb)
3852 void (
T::*excb)(const ::Ice::Exception&),
3853 void (
T::*sentcb)(
bool) = 0)
3861 void (
T::*excb)(const ::Ice::Exception&),
3862 void (
T::*sentcb)(
bool) = 0)
3871 void (
T::*excb)(const ::Ice::Exception&),
3872 void (
T::*sentcb)(
bool) = 0)
3880 void (
T::*excb)(const ::Ice::Exception&),
3881 void (
T::*sentcb)(
bool) = 0)
3886 template <
class T,
typename CT>
3889 public ::IceInternal::OnewayCallback<T, CT>
3894 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
3895 typedef void (
T::*
Sent)(bool,
const CT&);
3899 ::
IceInternal::OnewayCallback<
T, CT>(obj, cb, excb, sentcb)
3904 template <
class T,
typename CT>
3907 void (
T::*cb)(
const CT&),
3908 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3909 void (
T::*sentcb)(
bool,
const CT&) = 0)
3914 template <
class T,
typename CT>
3917 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3918 void (
T::*sentcb)(
bool,
const CT&) = 0)
3923 template <
class T,
typename CT>
3926 void (
T::*cb)(
const CT&),
3927 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3928 void (
T::*sentcb)(
bool,
const CT&) = 0)
3933 template <
class T,
typename CT>
3936 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
3937 void (
T::*sentcb)(
bool,
const CT&) = 0)
3945 public ::IceInternal::OnewayCallbackNC<T>
3955 ::
IceInternal::OnewayCallbackNC<
T>(obj, cb, excb, sentcb)
3964 void (
T::*excb)(const ::Ice::Exception&),
3965 void (
T::*sentcb)(
bool) = 0)
3973 void (
T::*excb)(const ::Ice::Exception&),
3974 void (
T::*sentcb)(
bool) = 0)
3983 void (
T::*excb)(const ::Ice::Exception&),
3984 void (
T::*sentcb)(
bool) = 0)
3992 void (
T::*excb)(const ::Ice::Exception&),
3993 void (
T::*sentcb)(
bool) = 0)
3998 template <
class T,
typename CT>
4001 public ::IceInternal::OnewayCallback<T, CT>
4006 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
4007 typedef void (
T::*
Sent)(bool,
const CT&);
4011 ::
IceInternal::OnewayCallback<
T, CT>(obj, cb, excb, sentcb)
4016 template <
class T,
typename CT>
4019 void (
T::*cb)(
const CT&),
4020 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4021 void (
T::*sentcb)(
bool,
const CT&) = 0)
4026 template <
class T,
typename CT>
4029 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4030 void (
T::*sentcb)(
bool,
const CT&) = 0)
4035 template <
class T,
typename CT>
4038 void (
T::*cb)(
const CT&),
4039 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4040 void (
T::*sentcb)(
bool,
const CT&) = 0)
4045 template <
class T,
typename CT>
4048 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4049 void (
T::*sentcb)(
bool,
const CT&) = 0)
4057 public ::IceInternal::OnewayCallbackNC<T>
4067 ::
IceInternal::OnewayCallbackNC<
T>(obj, cb, excb, sentcb)
4076 void (
T::*excb)(const ::Ice::Exception&),
4077 void (
T::*sentcb)(
bool) = 0)
4085 void (
T::*excb)(const ::Ice::Exception&),
4086 void (
T::*sentcb)(
bool) = 0)
4095 void (
T::*excb)(const ::Ice::Exception&),
4096 void (
T::*sentcb)(
bool) = 0)
4104 void (
T::*excb)(const ::Ice::Exception&),
4105 void (
T::*sentcb)(
bool) = 0)
4110 template <
class T,
typename CT>
4113 public ::IceInternal::OnewayCallback<T, CT>
4118 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
4119 typedef void (
T::*
Sent)(bool,
const CT&);
4123 ::
IceInternal::OnewayCallback<
T, CT>(obj, cb, excb, sentcb)
4128 template <
class T,
typename CT>
4131 void (
T::*cb)(
const CT&),
4132 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4133 void (
T::*sentcb)(
bool,
const CT&) = 0)
4138 template <
class T,
typename CT>
4141 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4142 void (
T::*sentcb)(
bool,
const CT&) = 0)
4147 template <
class T,
typename CT>
4150 void (
T::*cb)(
const CT&),
4151 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4152 void (
T::*sentcb)(
bool,
const CT&) = 0)
4157 template <
class T,
typename CT>
4160 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4161 void (
T::*sentcb)(
bool,
const CT&) = 0)
4169 public ::IceInternal::TwowayCallbackNC<T>
4182 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
4190 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4194 ret = proxy->end_areYouCoordinator(result);
4196 catch (const ::Ice::Exception& ex)
4198 ::IceInternal::CallbackNC<T>::exception(result, ex);
4203 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(
ret);
4214 void (
T::*cb)(
bool),
4215 void (
T::*excb)(const ::Ice::Exception&),
4216 void (
T::*sentcb)(
bool) = 0)
4224 void (
T::*cb)(
bool),
4225 void (
T::*excb)(const ::Ice::Exception&),
4226 void (
T::*sentcb)(
bool) = 0)
4231 template <
class T,
typename CT>
4234 public ::IceInternal::TwowayCallback<T, CT>
4239 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
4240 typedef void (
T::*
Sent)(bool,
const CT&);
4244 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4252 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4256 ret = proxy->end_areYouCoordinator(result);
4258 catch (const ::Ice::Exception& ex)
4260 ::IceInternal::Callback<T, CT>::exception(result, ex);
4265 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4266 ret, CT::dynamicCast(result->getCookie()));
4274 template <
class T,
typename CT>
4277 void (
T::*cb)(
bool,
const CT&),
4278 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4279 void (
T::*sentcb)(
bool,
const CT&) = 0)
4284 template <
class T,
typename CT>
4287 void (
T::*cb)(
bool,
const CT&),
4288 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4289 void (
T::*sentcb)(
bool,
const CT&) = 0)
4297 public ::IceInternal::TwowayCallbackNC<T>
4307 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
4315 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4319 ret = proxy->end_areYouThere(result);
4321 catch (const ::Ice::Exception& ex)
4323 ::IceInternal::CallbackNC<T>::exception(result, ex);
4328 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(
ret);
4339 void (
T::*cb)(
bool),
4340 void (
T::*excb)(const ::Ice::Exception&),
4341 void (
T::*sentcb)(
bool) = 0)
4349 void (
T::*cb)(
bool),
4350 void (
T::*excb)(const ::Ice::Exception&),
4351 void (
T::*sentcb)(
bool) = 0)
4356 template <
class T,
typename CT>
4359 public ::IceInternal::TwowayCallback<T, CT>
4364 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
4365 typedef void (
T::*
Sent)(bool,
const CT&);
4369 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4377 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4381 ret = proxy->end_areYouThere(result);
4383 catch (const ::Ice::Exception& ex)
4385 ::IceInternal::Callback<T, CT>::exception(result, ex);
4390 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4391 ret, CT::dynamicCast(result->getCookie()));
4399 template <
class T,
typename CT>
4402 void (
T::*cb)(
bool,
const CT&),
4403 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4404 void (
T::*sentcb)(
bool,
const CT&) = 0)
4409 template <
class T,
typename CT>
4412 void (
T::*cb)(
bool,
const CT&),
4413 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4414 void (
T::*sentcb)(
bool,
const CT&) = 0)
4422 public ::IceInternal::TwowayCallbackNC<T>
4432 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
4440 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4441 ::Ice::ObjectPrx
ret;
4444 ret = proxy->end_sync(result);
4446 catch (const ::Ice::Exception& ex)
4448 ::IceInternal::CallbackNC<T>::exception(result, ex);
4453 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(
ret);
4464 void (
T::*cb)(const ::Ice::ObjectPrx&),
4465 void (
T::*excb)(const ::Ice::Exception&),
4466 void (
T::*sentcb)(
bool) = 0)
4474 void (
T::*cb)(const ::Ice::ObjectPrx&),
4475 void (
T::*excb)(const ::Ice::Exception&),
4476 void (
T::*sentcb)(
bool) = 0)
4481 template <
class T,
typename CT>
4484 public ::IceInternal::TwowayCallback<T, CT>
4489 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
4490 typedef void (
T::*
Sent)(bool,
const CT&);
4491 typedef void (
T::*
Response)(const ::Ice::ObjectPrx&,
const CT&);
4494 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4502 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4503 ::Ice::ObjectPrx
ret;
4506 ret = proxy->end_sync(result);
4508 catch (const ::Ice::Exception& ex)
4510 ::IceInternal::Callback<T, CT>::exception(result, ex);
4515 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4516 ret, CT::dynamicCast(result->getCookie()));
4524 template <
class T,
typename CT>
4527 void (
T::*cb)(const ::Ice::ObjectPrx&,
const CT&),
4528 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4529 void (
T::*sentcb)(
bool,
const CT&) = 0)
4534 template <
class T,
typename CT>
4537 void (
T::*cb)(const ::Ice::ObjectPrx&,
const CT&),
4538 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4539 void (
T::*sentcb)(
bool,
const CT&) = 0)
4547 public ::IceInternal::TwowayCallbackNC<T>
4557 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
4565 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4569 ret = proxy->end_nodes(result);
4571 catch (const ::Ice::Exception& ex)
4573 ::IceInternal::CallbackNC<T>::exception(result, ex);
4578 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(
ret);
4590 void (
T::*excb)(const ::Ice::Exception&),
4591 void (
T::*sentcb)(
bool) = 0)
4600 void (
T::*excb)(const ::Ice::Exception&),
4601 void (
T::*sentcb)(
bool) = 0)
4606 template <
class T,
typename CT>
4609 public ::IceInternal::TwowayCallback<T, CT>
4614 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
4615 typedef void (
T::*
Sent)(bool,
const CT&);
4619 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4627 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4631 ret = proxy->end_nodes(result);
4633 catch (const ::Ice::Exception& ex)
4635 ::IceInternal::Callback<T, CT>::exception(result, ex);
4640 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4641 ret, CT::dynamicCast(result->getCookie()));
4649 template <
class T,
typename CT>
4653 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4654 void (
T::*sentcb)(
bool,
const CT&) = 0)
4659 template <
class T,
typename CT>
4663 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4664 void (
T::*sentcb)(
bool,
const CT&) = 0)
4672 public ::IceInternal::TwowayCallbackNC<T>
4679 typedef void (
T::*
Response)(const ::IceStormElection::QueryInfo&);
4682 ::
IceInternal::TwowayCallbackNC<
T>(obj, cb != 0, excb, sentcb), _response(cb)
4690 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4694 ret = proxy->end_query(result);
4696 catch (const ::Ice::Exception& ex)
4698 ::IceInternal::CallbackNC<T>::exception(result, ex);
4703 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(
ret);
4714 void (
T::*cb)(const ::IceStormElection::QueryInfo&),
4715 void (
T::*excb)(const ::Ice::Exception&),
4716 void (
T::*sentcb)(
bool) = 0)
4724 void (
T::*cb)(const ::IceStormElection::QueryInfo&),
4725 void (
T::*excb)(const ::Ice::Exception&),
4726 void (
T::*sentcb)(
bool) = 0)
4731 template <
class T,
typename CT>
4734 public ::IceInternal::TwowayCallback<T, CT>
4739 typedef void (
T::*
Exception)(const ::Ice::Exception&,
const CT&);
4740 typedef void (
T::*
Sent)(bool,
const CT&);
4741 typedef void (
T::*
Response)(const ::IceStormElection::QueryInfo&,
const CT&);
4744 ::
IceInternal::TwowayCallback<
T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4752 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4756 ret = proxy->end_query(result);
4758 catch (const ::Ice::Exception& ex)
4760 ::IceInternal::Callback<T, CT>::exception(result, ex);
4765 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4766 ret, CT::dynamicCast(result->getCookie()));
4774 template <
class T,
typename CT>
4777 void (
T::*cb)(const ::IceStormElection::QueryInfo&,
const CT&),
4778 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4779 void (
T::*sentcb)(
bool,
const CT&) = 0)
4784 template <
class T,
typename CT>
4787 void (
T::*cb)(const ::IceStormElection::QueryInfo&,
const CT&),
4788 void (
T::*excb)(const ::Ice::Exception&,
const CT&),
4789 void (
T::*sentcb)(
bool,
const CT&) = 0)
4798 #include <IceUtil/PopDisableWarnings.h>