21#include <Ice/InputStream.h>
22#include <Ice/LocalException.h>
23#include <Ice/OutgoingAsync.h>
24#include <Ice/OutputStream.h>
25#include <Ice/ValueFactory.h>
27#include <IceUtil/PopDisableWarnings.h>
28#include <IceUtil/PushDisableWarnings.h>
31#pragma warning(disable : 4458)
32#elif defined(__clang__)
33#pragma clang diagnostic ignored "-Wshadow"
34#elif defined(__GNUC__)
35#pragma GCC diagnostic ignored "-Wshadow"
38#ifndef ICE_IGNORE_VERSION
39#if ICE_INT_VERSION / 100 != 307
40#error Ice version mismatch!
42#if ICE_INT_VERSION % 100 > 50
43#error Beta header file detected
45#if ICE_INT_VERSION % 100 < 0
46#error Ice patch level mismatch!
50#ifdef ICE_CPP11_MAPPING
55 const ::IceInternal::DefaultUserExceptionFactoryInit<
57 iceC_IceStormElection_ObserverInconsistencyException_init(
58 "::IceStormElection::ObserverInconsistencyException");
60 const ::std::string iceC_IceStormElection_ReplicaObserver_ids[2] = {
62 "::IceStormElection::ReplicaObserver"};
63 const ::std::string iceC_IceStormElection_ReplicaObserver_ops[] = {
"addSubscriber",
72 const ::std::string iceC_IceStormElection_ReplicaObserver_init_name =
"init";
73 const ::std::string iceC_IceStormElection_ReplicaObserver_createTopic_name =
"createTopic";
74 const ::std::string iceC_IceStormElection_ReplicaObserver_destroyTopic_name =
"destroyTopic";
75 const ::std::string iceC_IceStormElection_ReplicaObserver_addSubscriber_name =
"addSubscriber";
76 const ::std::string iceC_IceStormElection_ReplicaObserver_removeSubscriber_name =
79 const ::std::string iceC_IceStormElection_TopicManagerSync_ids[2] = {
81 "::IceStormElection::TopicManagerSync"};
82 const ::std::string iceC_IceStormElection_TopicManagerSync_ops[] = {
"getContent",
87 const ::std::string iceC_IceStormElection_TopicManagerSync_getContent_name =
"getContent";
89 const ::std::string iceC_IceStormElection_Node_ids[2] = {
"::Ice::Object",
90 "::IceStormElection::Node"};
91 const ::std::string iceC_IceStormElection_Node_ops[] = {
"accept",
103 const ::std::string iceC_IceStormElection_Node_invitation_name =
"invitation";
104 const ::std::string iceC_IceStormElection_Node_ready_name =
"ready";
105 const ::std::string iceC_IceStormElection_Node_accept_name =
"accept";
106 const ::std::string iceC_IceStormElection_Node_areYouCoordinator_name =
"areYouCoordinator";
107 const ::std::string iceC_IceStormElection_Node_areYouThere_name =
"areYouThere";
108 const ::std::string iceC_IceStormElection_Node_sync_name =
"sync";
109 const ::std::string iceC_IceStormElection_Node_nodes_name =
"nodes";
110 const ::std::string iceC_IceStormElection_Node_query_name =
"query";
119IceStormElection::ObserverInconsistencyException::ice_staticId()
121 static const ::std::string typeId =
"::IceStormElection::ObserverInconsistencyException";
128 return ::std::binary_search(iceC_IceStormElection_ReplicaObserver_ids,
129 iceC_IceStormElection_ReplicaObserver_ids + 2,
133::std::vector<::std::string>
136 return ::std::vector<::std::string>(&iceC_IceStormElection_ReplicaObserver_ids[0],
137 &iceC_IceStormElection_ReplicaObserver_ids[2]);
143 return ice_staticId();
149 static const ::std::string typeId =
"::IceStormElection::ReplicaObserver";
155 const ::Ice::Current& current)
157 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
158 auto istr = inS.startReadParams();
159 ::IceStormElection::LogUpdate iceP_llu;
161 istr->readAll(iceP_llu, iceP_content);
163 this->init(::std::move(iceP_llu), ::std::move(iceP_content), current);
164 inS.writeEmptyParams();
170 const ::Ice::Current& current)
172 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
173 auto istr = inS.startReadParams();
174 ::IceStormElection::LogUpdate iceP_llu;
175 ::std::string iceP_name;
176 istr->readAll(iceP_llu, iceP_name);
178 this->createTopic(::std::move(iceP_llu), ::std::move(iceP_name), current);
179 inS.writeEmptyParams();
185 const ::Ice::Current& current)
187 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
188 auto istr = inS.startReadParams();
189 ::IceStormElection::LogUpdate iceP_llu;
190 ::std::string iceP_name;
191 istr->readAll(iceP_llu, iceP_name);
193 this->destroyTopic(::std::move(iceP_llu), ::std::move(iceP_name), current);
194 inS.writeEmptyParams();
200 const ::Ice::Current& current)
202 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
203 auto istr = inS.startReadParams();
204 ::IceStormElection::LogUpdate iceP_llu;
205 ::std::string iceP_topic;
206 ::IceStorm::SubscriberRecord iceP_record;
207 istr->readAll(iceP_llu, iceP_topic, iceP_record);
210 ::std::move(iceP_llu), ::std::move(iceP_topic), ::std::move(iceP_record), current);
211 inS.writeEmptyParams();
217 const ::Ice::Current& current)
219 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
220 auto istr = inS.startReadParams();
221 ::IceStormElection::LogUpdate iceP_llu;
222 ::std::string iceP_topic;
223 ::Ice::IdentitySeq iceP_subscribers;
224 istr->readAll(iceP_llu, iceP_topic, iceP_subscribers);
226 this->removeSubscriber(
227 ::std::move(iceP_llu), ::std::move(iceP_topic), ::std::move(iceP_subscribers), current);
228 inS.writeEmptyParams();
234 const ::Ice::Current& current)
236 ::std::pair<const ::std::string*, const ::std::string*> r =
237 ::std::equal_range(iceC_IceStormElection_ReplicaObserver_ops,
238 iceC_IceStormElection_ReplicaObserver_ops + 9,
240 if (r.first == r.second)
242 throw ::Ice::OperationNotExistException(
243 __FILE__, __LINE__, current.id, current.facet, current.operation);
246 switch (r.first - iceC_IceStormElection_ReplicaObserver_ops)
250 return _iceD_addSubscriber(in, current);
254 return _iceD_createTopic(in, current);
258 return _iceD_destroyTopic(in, current);
262 return _iceD_ice_id(in, current);
266 return _iceD_ice_ids(in, current);
270 return _iceD_ice_isA(in, current);
274 return _iceD_ice_ping(in, current);
278 return _iceD_init(in, current);
282 return _iceD_removeSubscriber(in, current);
287 throw ::Ice::OperationNotExistException(
288 __FILE__, __LINE__, current.id, current.facet, current.operation);
296 return ::std::binary_search(iceC_IceStormElection_TopicManagerSync_ids,
297 iceC_IceStormElection_TopicManagerSync_ids + 2,
301::std::vector<::std::string>
304 return ::std::vector<::std::string>(&iceC_IceStormElection_TopicManagerSync_ids[0],
305 &iceC_IceStormElection_TopicManagerSync_ids[2]);
311 return ice_staticId();
317 static const ::std::string typeId =
"::IceStormElection::TopicManagerSync";
323 const ::Ice::Current& current)
325 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
326 inS.readEmptyParams();
327 ::IceStormElection::LogUpdate iceP_llu;
329 this->getContent(iceP_llu, iceP_content, current);
330 auto ostr = inS.startWriteParams();
331 ostr->writeAll(iceP_llu, iceP_content);
332 inS.endWriteParams();
338 const ::Ice::Current& current)
340 ::std::pair<const ::std::string*, const ::std::string*> r =
341 ::std::equal_range(iceC_IceStormElection_TopicManagerSync_ops,
342 iceC_IceStormElection_TopicManagerSync_ops + 5,
344 if (r.first == r.second)
346 throw ::Ice::OperationNotExistException(
347 __FILE__, __LINE__, current.id, current.facet, current.operation);
350 switch (r.first - iceC_IceStormElection_TopicManagerSync_ops)
354 return _iceD_getContent(in, current);
358 return _iceD_ice_id(in, current);
362 return _iceD_ice_ids(in, current);
366 return _iceD_ice_isA(in, current);
370 return _iceD_ice_ping(in, current);
375 throw ::Ice::OperationNotExistException(
376 __FILE__, __LINE__, current.id, current.facet, current.operation);
384 return ::std::binary_search(
385 iceC_IceStormElection_Node_ids, iceC_IceStormElection_Node_ids + 2, s);
388::std::vector<::std::string>
391 return ::std::vector<::std::string>(&iceC_IceStormElection_Node_ids[0],
392 &iceC_IceStormElection_Node_ids[2]);
398 return ice_staticId();
404 static const ::std::string typeId =
"::IceStormElection::Node";
410 const ::Ice::Current& current)
412 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
413 auto istr = inS.startReadParams();
415 ::std::string iceP_gn;
416 istr->readAll(iceP_j, iceP_gn);
418 this->invitation(iceP_j, ::std::move(iceP_gn), current);
419 inS.writeEmptyParams();
426 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
427 auto istr = inS.startReadParams();
429 ::std::string iceP_gn;
430 ::std::shared_ptr<::Ice::ObjectPrx> iceP_coordinator;
432 long long int iceP_generation;
433 istr->readAll(iceP_j, iceP_gn, iceP_coordinator, iceP_max, iceP_generation);
436 ::std::move(iceP_gn),
437 ::std::move(iceP_coordinator),
441 inS.writeEmptyParams();
448 _iceCheckMode(::Ice::OperationMode::Normal, current.mode);
449 auto istr = inS.startReadParams();
451 ::std::string iceP_gn;
452 ::Ice::IntSeq iceP_forwardedInvites;
453 ::std::shared_ptr<::Ice::ObjectPrx> iceP_observer;
454 ::IceStormElection::LogUpdate iceP_llu;
456 istr->readAll(iceP_j, iceP_gn, iceP_forwardedInvites, iceP_observer, iceP_llu, iceP_max);
459 ::std::move(iceP_gn),
460 ::std::move(iceP_forwardedInvites),
461 ::std::move(iceP_observer),
462 ::std::move(iceP_llu),
465 inS.writeEmptyParams();
471 const ::Ice::Current& current)
const
473 _iceCheckMode(::Ice::OperationMode::Idempotent, current.mode);
474 inS.readEmptyParams();
475 bool ret = this->areYouCoordinator(current);
476 auto ostr = inS.startWriteParams();
478 inS.endWriteParams();
484 const ::Ice::Current& current)
const
486 _iceCheckMode(::Ice::OperationMode::Idempotent, current.mode);
487 auto istr = inS.startReadParams();
488 ::std::string iceP_gn;
490 istr->readAll(iceP_gn, iceP_j);
492 bool ret = this->areYouThere(::std::move(iceP_gn), iceP_j, current);
493 auto ostr = inS.startWriteParams();
495 inS.endWriteParams();
501 const ::Ice::Current& current)
const
503 _iceCheckMode(::Ice::OperationMode::Idempotent, current.mode);
504 inS.readEmptyParams();
505 ::std::shared_ptr<::Ice::ObjectPrx> ret = this->sync(current);
506 auto ostr = inS.startWriteParams();
508 inS.endWriteParams();
514 const ::Ice::Current& current)
const
516 _iceCheckMode(::Ice::OperationMode::Idempotent, current.mode);
517 inS.readEmptyParams();
519 auto ostr = inS.startWriteParams();
521 inS.endWriteParams();
527 const ::Ice::Current& current)
const
529 _iceCheckMode(::Ice::OperationMode::Idempotent, current.mode);
530 inS.readEmptyParams();
531 ::IceStormElection::QueryInfo ret = this->query(current);
532 auto ostr = inS.startWriteParams();
534 inS.endWriteParams();
541 ::std::pair<const ::std::string*, const ::std::string*> r = ::std::equal_range(
542 iceC_IceStormElection_Node_ops, iceC_IceStormElection_Node_ops + 12, current.operation);
543 if (r.first == r.second)
545 throw ::Ice::OperationNotExistException(
546 __FILE__, __LINE__, current.id, current.facet, current.operation);
549 switch (r.first - iceC_IceStormElection_Node_ops)
553 return _iceD_accept(in, current);
557 return _iceD_areYouCoordinator(in, current);
561 return _iceD_areYouThere(in, current);
565 return _iceD_ice_id(in, current);
569 return _iceD_ice_ids(in, current);
573 return _iceD_ice_isA(in, current);
577 return _iceD_ice_ping(in, current);
581 return _iceD_invitation(in, current);
585 return _iceD_nodes(in, current);
589 return _iceD_query(in, current);
593 return _iceD_ready(in, current);
597 return _iceD_sync(in, current);
602 throw ::Ice::OperationNotExistException(
603 __FILE__, __LINE__, current.id, current.facet, current.operation);
609IceStormElection::ReplicaObserverPrx::_iceI_init(
610 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>& outAsync,
611 const ::IceStormElection::LogUpdate& iceP_llu,
612 const ::IceStormElection::TopicContentSeq& iceP_content,
613 const ::Ice::Context& context)
615 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_init_name);
617 iceC_IceStormElection_ReplicaObserver_init_name,
618 ::Ice::OperationMode::Normal,
619 ::Ice::FormatType::DefaultFormat,
621 [&](::Ice::OutputStream* ostr) { ostr->writeAll(iceP_llu, iceP_content); },
622 [](const ::Ice::UserException& ex)
628 catch (const ::IceStormElection::ObserverInconsistencyException&)
632 catch (const ::Ice::UserException&)
639IceStormElection::ReplicaObserverPrx::_iceI_createTopic(
640 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>& outAsync,
641 const ::IceStormElection::LogUpdate& iceP_llu,
642 const ::std::string& iceP_name,
643 const ::Ice::Context& context)
645 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_createTopic_name);
647 iceC_IceStormElection_ReplicaObserver_createTopic_name,
648 ::Ice::OperationMode::Normal,
649 ::Ice::FormatType::DefaultFormat,
651 [&](::Ice::OutputStream* ostr) { ostr->writeAll(iceP_llu, iceP_name); },
652 [](const ::Ice::UserException& ex)
658 catch (const ::IceStormElection::ObserverInconsistencyException&)
662 catch (const ::Ice::UserException&)
669IceStormElection::ReplicaObserverPrx::_iceI_destroyTopic(
670 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>& outAsync,
671 const ::IceStormElection::LogUpdate& iceP_llu,
672 const ::std::string& iceP_name,
673 const ::Ice::Context& context)
675 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_destroyTopic_name);
677 iceC_IceStormElection_ReplicaObserver_destroyTopic_name,
678 ::Ice::OperationMode::Normal,
679 ::Ice::FormatType::DefaultFormat,
681 [&](::Ice::OutputStream* ostr) { ostr->writeAll(iceP_llu, iceP_name); },
682 [](const ::Ice::UserException& ex)
688 catch (const ::IceStormElection::ObserverInconsistencyException&)
692 catch (const ::Ice::UserException&)
699IceStormElection::ReplicaObserverPrx::_iceI_addSubscriber(
700 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>& outAsync,
701 const ::IceStormElection::LogUpdate& iceP_llu,
702 const ::std::string& iceP_topic,
703 const ::IceStorm::SubscriberRecord& iceP_record,
704 const ::Ice::Context& context)
706 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_addSubscriber_name);
708 iceC_IceStormElection_ReplicaObserver_addSubscriber_name,
709 ::Ice::OperationMode::Normal,
710 ::Ice::FormatType::DefaultFormat,
712 [&](::Ice::OutputStream* ostr) { ostr->writeAll(iceP_llu, iceP_topic, iceP_record); },
713 [](const ::Ice::UserException& ex)
719 catch (const ::IceStormElection::ObserverInconsistencyException&)
723 catch (const ::Ice::UserException&)
730IceStormElection::ReplicaObserverPrx::_iceI_removeSubscriber(
731 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>& outAsync,
732 const ::IceStormElection::LogUpdate& iceP_llu,
733 const ::std::string& iceP_topic,
734 const ::Ice::IdentitySeq& iceP_subscribers,
735 const ::Ice::Context& context)
737 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_removeSubscriber_name);
739 iceC_IceStormElection_ReplicaObserver_removeSubscriber_name,
740 ::Ice::OperationMode::Normal,
741 ::Ice::FormatType::DefaultFormat,
743 [&](::Ice::OutputStream* ostr) { ostr->writeAll(iceP_llu, iceP_topic, iceP_subscribers); },
744 [](const ::Ice::UserException& ex)
750 catch (const ::IceStormElection::ObserverInconsistencyException&)
754 catch (const ::Ice::UserException&)
760::std::shared_ptr<::Ice::ObjectPrx>
761IceStormElection::ReplicaObserverPrx::_newInstance()
const
763 return ::IceInternal::createProxy<ReplicaObserverPrx>();
767IceStormElection::ReplicaObserverPrx::ice_staticId()
773IceStormElection::TopicManagerSyncPrx::_iceI_getContent(
774 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<
775 ::IceStormElection::TopicManagerSync::GetContentResult>>& outAsync,
776 const ::Ice::Context& context)
778 _checkTwowayOnly(iceC_IceStormElection_TopicManagerSync_getContent_name);
779 outAsync->invoke(iceC_IceStormElection_TopicManagerSync_getContent_name,
780 ::Ice::OperationMode::Normal,
781 ::Ice::FormatType::DefaultFormat,
785 [](::Ice::InputStream* istr)
787 ::IceStormElection::TopicManagerSync::GetContentResult
v;
788 istr->readAll(
v.llu,
v.content);
793::std::shared_ptr<::Ice::ObjectPrx>
794IceStormElection::TopicManagerSyncPrx::_newInstance()
const
796 return ::IceInternal::createProxy<TopicManagerSyncPrx>();
800IceStormElection::TopicManagerSyncPrx::ice_staticId()
806IceStormElection::NodePrx::_iceI_invitation(
807 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>& outAsync,
809 const ::std::string& iceP_gn,
810 const ::Ice::Context& context)
813 iceC_IceStormElection_Node_invitation_name,
814 ::Ice::OperationMode::Normal,
815 ::Ice::FormatType::DefaultFormat,
817 [&](::Ice::OutputStream* ostr) { ostr->writeAll(iceP_j, iceP_gn); },
822IceStormElection::NodePrx::_iceI_ready(
823 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>& outAsync,
825 const ::std::string& iceP_gn,
826 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_coordinator,
828 long long int iceP_generation,
829 const ::Ice::Context& context)
832 iceC_IceStormElection_Node_ready_name,
833 ::Ice::OperationMode::Normal,
834 ::Ice::FormatType::DefaultFormat,
836 [&](::Ice::OutputStream* ostr)
837 { ostr->writeAll(iceP_j, iceP_gn, iceP_coordinator, iceP_max, iceP_generation); },
842IceStormElection::NodePrx::_iceI_accept(
843 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>& outAsync,
845 const ::std::string& iceP_gn,
846 const ::Ice::IntSeq& iceP_forwardedInvites,
847 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_observer,
848 const ::IceStormElection::LogUpdate& iceP_llu,
850 const ::Ice::Context& context)
853 iceC_IceStormElection_Node_accept_name,
854 ::Ice::OperationMode::Normal,
855 ::Ice::FormatType::DefaultFormat,
857 [&](::Ice::OutputStream* ostr) {
859 iceP_j, iceP_gn, iceP_forwardedInvites, iceP_observer, iceP_llu, iceP_max);
865IceStormElection::NodePrx::_iceI_areYouCoordinator(
866 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<bool>>& outAsync,
867 const ::Ice::Context& context)
869 _checkTwowayOnly(iceC_IceStormElection_Node_areYouCoordinator_name);
870 outAsync->invoke(iceC_IceStormElection_Node_areYouCoordinator_name,
871 ::Ice::OperationMode::Idempotent,
872 ::Ice::FormatType::DefaultFormat,
879IceStormElection::NodePrx::_iceI_areYouThere(
880 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<bool>>& outAsync,
881 const ::std::string& iceP_gn,
883 const ::Ice::Context& context)
885 _checkTwowayOnly(iceC_IceStormElection_Node_areYouThere_name);
887 iceC_IceStormElection_Node_areYouThere_name,
888 ::Ice::OperationMode::Idempotent,
889 ::Ice::FormatType::DefaultFormat,
891 [&](::Ice::OutputStream* ostr) { ostr->writeAll(iceP_gn, iceP_j); },
896IceStormElection::NodePrx::_iceI_sync(
897 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>&
899 const ::Ice::Context& context)
901 _checkTwowayOnly(iceC_IceStormElection_Node_sync_name);
902 outAsync->invoke(iceC_IceStormElection_Node_sync_name,
903 ::Ice::OperationMode::Idempotent,
904 ::Ice::FormatType::DefaultFormat,
911IceStormElection::NodePrx::_iceI_nodes(
912 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::IceStormElection::NodeInfoSeq>>&
914 const ::Ice::Context& context)
916 _checkTwowayOnly(iceC_IceStormElection_Node_nodes_name);
917 outAsync->invoke(iceC_IceStormElection_Node_nodes_name,
918 ::Ice::OperationMode::Idempotent,
919 ::Ice::FormatType::DefaultFormat,
926IceStormElection::NodePrx::_iceI_query(
927 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::IceStormElection::QueryInfo>>& outAsync,
928 const ::Ice::Context& context)
930 _checkTwowayOnly(iceC_IceStormElection_Node_query_name);
931 outAsync->invoke(iceC_IceStormElection_Node_query_name,
932 ::Ice::OperationMode::Idempotent,
933 ::Ice::FormatType::DefaultFormat,
939::std::shared_ptr<::Ice::ObjectPrx>
940IceStormElection::NodePrx::_newInstance()
const
942 return ::IceInternal::createProxy<NodePrx>();
946IceStormElection::NodePrx::ice_staticId()
960 const ::std::string iceC_IceStormElection_ReplicaObserver_init_name =
"init";
962 const ::std::string iceC_IceStormElection_ReplicaObserver_createTopic_name =
"createTopic";
964 const ::std::string iceC_IceStormElection_ReplicaObserver_destroyTopic_name =
"destroyTopic";
966 const ::std::string iceC_IceStormElection_ReplicaObserver_addSubscriber_name =
"addSubscriber";
968 const ::std::string iceC_IceStormElection_ReplicaObserver_removeSubscriber_name =
971 const ::std::string iceC_IceStormElection_TopicManagerSync_getContent_name =
"getContent";
973 const ::std::string iceC_IceStormElection_Node_invitation_name =
"invitation";
975 const ::std::string iceC_IceStormElection_Node_ready_name =
"ready";
977 const ::std::string iceC_IceStormElection_Node_accept_name =
"accept";
979 const ::std::string iceC_IceStormElection_Node_areYouCoordinator_name =
"areYouCoordinator";
981 const ::std::string iceC_IceStormElection_Node_areYouThere_name =
"areYouThere";
983 const ::std::string iceC_IceStormElection_Node_sync_name =
"sync";
985 const ::std::string iceC_IceStormElection_Node_nodes_name =
"nodes";
987 const ::std::string iceC_IceStormElection_Node_query_name =
"query";
994 const ::IceInternal::DefaultUserExceptionFactoryInit<
995 ::IceStormElection::ObserverInconsistencyException>
996 iceC_IceStormElection_ObserverInconsistencyException_init(
997 "::IceStormElection::ObserverInconsistencyException");
1002 const ::std::string& iceP_reason) :
1003 ::
Ice::UserException(),
reason(iceP_reason)
1014 return "::IceStormElection::ObserverInconsistencyException";
1032 ostr->startSlice(
"::IceStormElection::ObserverInconsistencyException", -1,
true);
1034 ::Ice::OutputStream>::write(ostr, *
this);
1042 Ice::StreamReader<::IceStormElection::ObserverInconsistencyException, ::Ice::InputStream>::read(
1053void ::IceProxy::IceStormElection::_readProxy(
1054 ::Ice::InputStream* istr,
1057 ::Ice::ObjectPrx proxy;
1065 v = new ::IceProxy::IceStormElection::ReplicaObserver;
1066 v->_copyFrom(proxy);
1070::Ice::AsyncResultPtr
1071IceProxy::IceStormElection::ReplicaObserver::_iceI_begin_init(
1072 const ::IceStormElection::LogUpdate& iceP_llu,
1073 const ::IceStormElection::TopicContentSeq& iceP_content,
1074 const ::Ice::Context& context,
1075 const ::IceInternal::CallbackBasePtr& del,
1076 const ::Ice::LocalObjectPtr& cookie,
1079 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_init_name, sync);
1080 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1081 this, iceC_IceStormElection_ReplicaObserver_init_name, del, cookie, sync);
1084 result->prepare(iceC_IceStormElection_ReplicaObserver_init_name, ::Ice::Normal, context);
1085 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1086 ostr->write(iceP_llu);
1087 ostr->write(iceP_content);
1088 result->endWriteParams();
1089 result->invoke(iceC_IceStormElection_ReplicaObserver_init_name);
1091 catch (const ::Ice::Exception& ex)
1101 ::Ice::AsyncResult::_check(result,
this, iceC_IceStormElection_ReplicaObserver_init_name);
1102 if (!result->_waitForResponse())
1106 result->_throwUserException();
1108 catch (const ::IceStormElection::ObserverInconsistencyException&)
1112 catch (const ::Ice::UserException& ex)
1114 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1117 result->_readEmptyParams();
1120::Ice::AsyncResultPtr
1121IceProxy::IceStormElection::ReplicaObserver::_iceI_begin_createTopic(
1122 const ::IceStormElection::LogUpdate& iceP_llu,
1123 const ::std::string& iceP_name,
1124 const ::Ice::Context& context,
1125 const ::IceInternal::CallbackBasePtr& del,
1126 const ::Ice::LocalObjectPtr& cookie,
1129 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_createTopic_name, sync);
1130 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1131 this, iceC_IceStormElection_ReplicaObserver_createTopic_name, del, cookie, sync);
1135 iceC_IceStormElection_ReplicaObserver_createTopic_name, ::Ice::Normal, context);
1136 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1137 ostr->write(iceP_llu);
1138 ostr->write(iceP_name);
1139 result->endWriteParams();
1140 result->invoke(iceC_IceStormElection_ReplicaObserver_createTopic_name);
1142 catch (const ::Ice::Exception& ex)
1152 ::Ice::AsyncResult::_check(
1153 result,
this, iceC_IceStormElection_ReplicaObserver_createTopic_name);
1154 if (!result->_waitForResponse())
1158 result->_throwUserException();
1160 catch (const ::IceStormElection::ObserverInconsistencyException&)
1164 catch (const ::Ice::UserException& ex)
1166 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1169 result->_readEmptyParams();
1172::Ice::AsyncResultPtr
1173IceProxy::IceStormElection::ReplicaObserver::_iceI_begin_destroyTopic(
1174 const ::IceStormElection::LogUpdate& iceP_llu,
1175 const ::std::string& iceP_name,
1176 const ::Ice::Context& context,
1177 const ::IceInternal::CallbackBasePtr& del,
1178 const ::Ice::LocalObjectPtr& cookie,
1181 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_destroyTopic_name, sync);
1182 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1183 this, iceC_IceStormElection_ReplicaObserver_destroyTopic_name, del, cookie, sync);
1187 iceC_IceStormElection_ReplicaObserver_destroyTopic_name, ::Ice::Normal, context);
1188 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1189 ostr->write(iceP_llu);
1190 ostr->write(iceP_name);
1191 result->endWriteParams();
1192 result->invoke(iceC_IceStormElection_ReplicaObserver_destroyTopic_name);
1194 catch (const ::Ice::Exception& ex)
1204 ::Ice::AsyncResult::_check(
1205 result,
this, iceC_IceStormElection_ReplicaObserver_destroyTopic_name);
1206 if (!result->_waitForResponse())
1210 result->_throwUserException();
1212 catch (const ::IceStormElection::ObserverInconsistencyException&)
1216 catch (const ::Ice::UserException& ex)
1218 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1221 result->_readEmptyParams();
1224::Ice::AsyncResultPtr
1225IceProxy::IceStormElection::ReplicaObserver::_iceI_begin_addSubscriber(
1226 const ::IceStormElection::LogUpdate& iceP_llu,
1227 const ::std::string& iceP_topic,
1228 const ::IceStorm::SubscriberRecord& iceP_record,
1229 const ::Ice::Context& context,
1230 const ::IceInternal::CallbackBasePtr& del,
1231 const ::Ice::LocalObjectPtr& cookie,
1234 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_addSubscriber_name, sync);
1235 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1236 this, iceC_IceStormElection_ReplicaObserver_addSubscriber_name, del, cookie, sync);
1240 iceC_IceStormElection_ReplicaObserver_addSubscriber_name, ::Ice::Normal, context);
1241 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1242 ostr->write(iceP_llu);
1243 ostr->write(iceP_topic);
1244 ostr->write(iceP_record);
1245 result->endWriteParams();
1246 result->invoke(iceC_IceStormElection_ReplicaObserver_addSubscriber_name);
1248 catch (const ::Ice::Exception& ex)
1258 ::Ice::AsyncResult::_check(
1259 result,
this, iceC_IceStormElection_ReplicaObserver_addSubscriber_name);
1260 if (!result->_waitForResponse())
1264 result->_throwUserException();
1266 catch (const ::IceStormElection::ObserverInconsistencyException&)
1270 catch (const ::Ice::UserException& ex)
1272 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1275 result->_readEmptyParams();
1278::Ice::AsyncResultPtr
1279IceProxy::IceStormElection::ReplicaObserver::_iceI_begin_removeSubscriber(
1280 const ::IceStormElection::LogUpdate& iceP_llu,
1281 const ::std::string& iceP_topic,
1282 const ::Ice::IdentitySeq& iceP_subscribers,
1283 const ::Ice::Context& context,
1284 const ::IceInternal::CallbackBasePtr& del,
1285 const ::Ice::LocalObjectPtr& cookie,
1288 _checkTwowayOnly(iceC_IceStormElection_ReplicaObserver_removeSubscriber_name, sync);
1289 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1290 this, iceC_IceStormElection_ReplicaObserver_removeSubscriber_name, del, cookie, sync);
1294 iceC_IceStormElection_ReplicaObserver_removeSubscriber_name, ::Ice::Normal, context);
1295 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1296 ostr->write(iceP_llu);
1297 ostr->write(iceP_topic);
1298 ostr->write(iceP_subscribers);
1299 result->endWriteParams();
1300 result->invoke(iceC_IceStormElection_ReplicaObserver_removeSubscriber_name);
1302 catch (const ::Ice::Exception& ex)
1311 const ::Ice::AsyncResultPtr& result)
1313 ::Ice::AsyncResult::_check(
1314 result,
this, iceC_IceStormElection_ReplicaObserver_removeSubscriber_name);
1315 if (!result->_waitForResponse())
1319 result->_throwUserException();
1321 catch (const ::IceStormElection::ObserverInconsistencyException&)
1325 catch (const ::Ice::UserException& ex)
1327 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1330 result->_readEmptyParams();
1333::IceProxy::Ice::Object*
1342 return ::IceStormElection::ReplicaObserver::ice_staticId();
1351void ::IceProxy::IceStormElection::_readProxy(
1352 ::Ice::InputStream* istr,
1355 ::Ice::ObjectPrx proxy;
1363 v = new ::IceProxy::IceStormElection::TopicManagerSync;
1364 v->_copyFrom(proxy);
1368::Ice::AsyncResultPtr
1369IceProxy::IceStormElection::TopicManagerSync::_iceI_begin_getContent(
1370 const ::Ice::Context& context,
1371 const ::IceInternal::CallbackBasePtr& del,
1372 const ::Ice::LocalObjectPtr& cookie,
1375 _checkTwowayOnly(iceC_IceStormElection_TopicManagerSync_getContent_name, sync);
1376 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1377 this, iceC_IceStormElection_TopicManagerSync_getContent_name, del, cookie, sync);
1381 iceC_IceStormElection_TopicManagerSync_getContent_name, ::Ice::Normal, context);
1382 result->writeEmptyParams();
1383 result->invoke(iceC_IceStormElection_TopicManagerSync_getContent_name);
1385 catch (const ::Ice::Exception& ex)
1396 const ::Ice::AsyncResultPtr& result)
1398 ::Ice::AsyncResult::_check(
1399 result,
this, iceC_IceStormElection_TopicManagerSync_getContent_name);
1400 if (!result->_waitForResponse())
1404 result->_throwUserException();
1406 catch (const ::Ice::UserException& ex)
1408 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1411 ::Ice::InputStream* istr = result->_startReadParams();
1412 istr->read(iceP_llu);
1413 istr->read(iceP_content);
1414 result->_endReadParams();
1417::IceProxy::Ice::Object*
1426 return ::IceStormElection::TopicManagerSync::ice_staticId();
1434void ::IceProxy::IceStormElection::_readProxy(
1435 ::Ice::InputStream* istr,
1438 ::Ice::ObjectPrx proxy;
1446 v = new ::IceProxy::IceStormElection::Node;
1447 v->_copyFrom(proxy);
1451::Ice::AsyncResultPtr
1452IceProxy::IceStormElection::Node::_iceI_begin_invitation(::Ice::Int iceP_j,
1453 const ::std::string& iceP_gn,
1454 const ::Ice::Context& context,
1455 const ::IceInternal::CallbackBasePtr& del,
1456 const ::Ice::LocalObjectPtr& cookie,
1459 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1460 this, iceC_IceStormElection_Node_invitation_name, del, cookie, sync);
1463 result->prepare(iceC_IceStormElection_Node_invitation_name, ::Ice::Normal, context);
1464 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1465 ostr->write(iceP_j);
1466 ostr->write(iceP_gn);
1467 result->endWriteParams();
1468 result->invoke(iceC_IceStormElection_Node_invitation_name);
1470 catch (const ::Ice::Exception& ex)
1480 _end(result, iceC_IceStormElection_Node_invitation_name);
1483::Ice::AsyncResultPtr
1484IceProxy::IceStormElection::Node::_iceI_begin_ready(::Ice::Int iceP_j,
1485 const ::std::string& iceP_gn,
1486 const ::Ice::ObjectPrx& iceP_coordinator,
1487 ::Ice::Int iceP_max,
1488 ::Ice::Long iceP_generation,
1489 const ::Ice::Context& context,
1490 const ::IceInternal::CallbackBasePtr& del,
1491 const ::Ice::LocalObjectPtr& cookie,
1494 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1495 this, iceC_IceStormElection_Node_ready_name, del, cookie, sync);
1498 result->prepare(iceC_IceStormElection_Node_ready_name, ::Ice::Normal, context);
1499 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1500 ostr->write(iceP_j);
1501 ostr->write(iceP_gn);
1502 ostr->write(iceP_coordinator);
1503 ostr->write(iceP_max);
1504 ostr->write(iceP_generation);
1505 result->endWriteParams();
1506 result->invoke(iceC_IceStormElection_Node_ready_name);
1508 catch (const ::Ice::Exception& ex)
1518 _end(result, iceC_IceStormElection_Node_ready_name);
1521::Ice::AsyncResultPtr
1522IceProxy::IceStormElection::Node::_iceI_begin_accept(::Ice::Int iceP_j,
1523 const ::std::string& iceP_gn,
1524 const ::Ice::IntSeq& iceP_forwardedInvites,
1525 const ::Ice::ObjectPrx& iceP_observer,
1526 const ::IceStormElection::LogUpdate& iceP_llu,
1527 ::Ice::Int iceP_max,
1528 const ::Ice::Context& context,
1529 const ::IceInternal::CallbackBasePtr& del,
1530 const ::Ice::LocalObjectPtr& cookie,
1533 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1534 this, iceC_IceStormElection_Node_accept_name, del, cookie, sync);
1537 result->prepare(iceC_IceStormElection_Node_accept_name, ::Ice::Normal, context);
1538 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1539 ostr->write(iceP_j);
1540 ostr->write(iceP_gn);
1541 ostr->write(iceP_forwardedInvites);
1542 ostr->write(iceP_observer);
1543 ostr->write(iceP_llu);
1544 ostr->write(iceP_max);
1545 result->endWriteParams();
1546 result->invoke(iceC_IceStormElection_Node_accept_name);
1548 catch (const ::Ice::Exception& ex)
1558 _end(result, iceC_IceStormElection_Node_accept_name);
1561::Ice::AsyncResultPtr
1562IceProxy::IceStormElection::Node::_iceI_begin_areYouCoordinator(
1563 const ::Ice::Context& context,
1564 const ::IceInternal::CallbackBasePtr& del,
1565 const ::Ice::LocalObjectPtr& cookie,
1568 _checkTwowayOnly(iceC_IceStormElection_Node_areYouCoordinator_name, sync);
1569 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1570 this, iceC_IceStormElection_Node_areYouCoordinator_name, del, cookie, sync);
1574 iceC_IceStormElection_Node_areYouCoordinator_name, ::Ice::Idempotent, context);
1575 result->writeEmptyParams();
1576 result->invoke(iceC_IceStormElection_Node_areYouCoordinator_name);
1578 catch (const ::Ice::Exception& ex)
1588 ::Ice::AsyncResult::_check(result,
this, iceC_IceStormElection_Node_areYouCoordinator_name);
1590 if (!result->_waitForResponse())
1594 result->_throwUserException();
1596 catch (const ::Ice::UserException& ex)
1598 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1601 ::Ice::InputStream* istr = result->_startReadParams();
1603 result->_endReadParams();
1607::Ice::AsyncResultPtr
1608IceProxy::IceStormElection::Node::_iceI_begin_areYouThere(const ::std::string& iceP_gn,
1610 const ::Ice::Context& context,
1611 const ::IceInternal::CallbackBasePtr& del,
1612 const ::Ice::LocalObjectPtr& cookie,
1615 _checkTwowayOnly(iceC_IceStormElection_Node_areYouThere_name, sync);
1616 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1617 this, iceC_IceStormElection_Node_areYouThere_name, del, cookie, sync);
1620 result->prepare(iceC_IceStormElection_Node_areYouThere_name, ::Ice::Idempotent, context);
1621 ::Ice::OutputStream* ostr = result->startWriteParams(::Ice::DefaultFormat);
1622 ostr->write(iceP_gn);
1623 ostr->write(iceP_j);
1624 result->endWriteParams();
1625 result->invoke(iceC_IceStormElection_Node_areYouThere_name);
1627 catch (const ::Ice::Exception& ex)
1637 ::Ice::AsyncResult::_check(result,
this, iceC_IceStormElection_Node_areYouThere_name);
1639 if (!result->_waitForResponse())
1643 result->_throwUserException();
1645 catch (const ::Ice::UserException& ex)
1647 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1650 ::Ice::InputStream* istr = result->_startReadParams();
1652 result->_endReadParams();
1656::Ice::AsyncResultPtr
1657IceProxy::IceStormElection::Node::_iceI_begin_sync(const ::Ice::Context& context,
1658 const ::IceInternal::CallbackBasePtr& del,
1659 const ::Ice::LocalObjectPtr& cookie,
1662 _checkTwowayOnly(iceC_IceStormElection_Node_sync_name, sync);
1663 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1664 this, iceC_IceStormElection_Node_sync_name, del, cookie, sync);
1667 result->prepare(iceC_IceStormElection_Node_sync_name, ::Ice::Idempotent, context);
1668 result->writeEmptyParams();
1669 result->invoke(iceC_IceStormElection_Node_sync_name);
1671 catch (const ::Ice::Exception& ex)
1681 ::Ice::AsyncResult::_check(result,
this, iceC_IceStormElection_Node_sync_name);
1682 ::Ice::ObjectPrx ret;
1683 if (!result->_waitForResponse())
1687 result->_throwUserException();
1689 catch (const ::Ice::UserException& ex)
1691 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1694 ::Ice::InputStream* istr = result->_startReadParams();
1696 result->_endReadParams();
1700::Ice::AsyncResultPtr
1701IceProxy::IceStormElection::Node::_iceI_begin_nodes(const ::Ice::Context& context,
1702 const ::IceInternal::CallbackBasePtr& del,
1703 const ::Ice::LocalObjectPtr& cookie,
1706 _checkTwowayOnly(iceC_IceStormElection_Node_nodes_name, sync);
1707 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1708 this, iceC_IceStormElection_Node_nodes_name, del, cookie, sync);
1711 result->prepare(iceC_IceStormElection_Node_nodes_name, ::Ice::Idempotent, context);
1712 result->writeEmptyParams();
1713 result->invoke(iceC_IceStormElection_Node_nodes_name);
1715 catch (const ::Ice::Exception& ex)
1725 ::Ice::AsyncResult::_check(result,
this, iceC_IceStormElection_Node_nodes_name);
1727 if (!result->_waitForResponse())
1731 result->_throwUserException();
1733 catch (const ::Ice::UserException& ex)
1735 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1738 ::Ice::InputStream* istr = result->_startReadParams();
1740 result->_endReadParams();
1744::Ice::AsyncResultPtr
1745IceProxy::IceStormElection::Node::_iceI_begin_query(const ::Ice::Context& context,
1746 const ::IceInternal::CallbackBasePtr& del,
1747 const ::Ice::LocalObjectPtr& cookie,
1750 _checkTwowayOnly(iceC_IceStormElection_Node_query_name, sync);
1751 ::IceInternal::OutgoingAsyncPtr result = new ::IceInternal::CallbackOutgoing(
1752 this, iceC_IceStormElection_Node_query_name, del, cookie, sync);
1755 result->prepare(iceC_IceStormElection_Node_query_name, ::Ice::Idempotent, context);
1756 result->writeEmptyParams();
1757 result->invoke(iceC_IceStormElection_Node_query_name);
1759 catch (const ::Ice::Exception& ex)
1766::IceStormElection::QueryInfo
1769 ::Ice::AsyncResult::_check(result,
this, iceC_IceStormElection_Node_query_name);
1771 if (!result->_waitForResponse())
1775 result->_throwUserException();
1777 catch (const ::Ice::UserException& ex)
1779 throw ::Ice::UnknownUserException(__FILE__, __LINE__, ex.ice_id());
1782 ::Ice::InputStream* istr = result->_startReadParams();
1784 result->_endReadParams();
1788::IceProxy::Ice::Object*
1797 return ::IceStormElection::Node::ice_staticId();
1812 const ::std::string iceC_IceStormElection_ReplicaObserver_ids[2] = {
1814 "::IceStormElection::ReplicaObserver"};
1821 return ::std::binary_search(iceC_IceStormElection_ReplicaObserver_ids,
1822 iceC_IceStormElection_ReplicaObserver_ids + 2,
1826::std::vector<::std::string>
1829 return ::std::vector<::std::string>(&iceC_IceStormElection_ReplicaObserver_ids[0],
1830 &iceC_IceStormElection_ReplicaObserver_ids[2]);
1842#ifdef ICE_HAS_THREAD_SAFE_LOCAL_STATIC
1843 static const ::std::string typeId =
"::IceStormElection::ReplicaObserver";
1846 return iceC_IceStormElection_ReplicaObserver_ids[1];
1852 const ::Ice::Current& current)
1854 _iceCheckMode(::Ice::Normal, current.mode);
1855 ::Ice::InputStream* istr = inS.startReadParams();
1858 istr->read(iceP_llu);
1859 istr->read(iceP_content);
1860 inS.endReadParams();
1861 this->
init(iceP_llu, iceP_content, current);
1862 inS.writeEmptyParams();
1868 const ::Ice::Current& current)
1870 _iceCheckMode(::Ice::Normal, current.mode);
1871 ::Ice::InputStream* istr = inS.startReadParams();
1873 ::std::string iceP_name;
1874 istr->read(iceP_llu);
1875 istr->read(iceP_name);
1876 inS.endReadParams();
1878 inS.writeEmptyParams();
1884 const ::Ice::Current& current)
1886 _iceCheckMode(::Ice::Normal, current.mode);
1887 ::Ice::InputStream* istr = inS.startReadParams();
1889 ::std::string iceP_name;
1890 istr->read(iceP_llu);
1891 istr->read(iceP_name);
1892 inS.endReadParams();
1894 inS.writeEmptyParams();
1900 const ::Ice::Current& current)
1902 _iceCheckMode(::Ice::Normal, current.mode);
1903 ::Ice::InputStream* istr = inS.startReadParams();
1905 ::std::string iceP_topic;
1907 istr->read(iceP_llu);
1908 istr->read(iceP_topic);
1909 istr->read(iceP_record);
1910 inS.endReadParams();
1911 this->
addSubscriber(iceP_llu, iceP_topic, iceP_record, current);
1912 inS.writeEmptyParams();
1918 const ::Ice::Current& current)
1920 _iceCheckMode(::Ice::Normal, current.mode);
1921 ::Ice::InputStream* istr = inS.startReadParams();
1923 ::std::string iceP_topic;
1924 ::Ice::IdentitySeq iceP_subscribers;
1925 istr->read(iceP_llu);
1926 istr->read(iceP_topic);
1927 istr->read(iceP_subscribers);
1928 inS.endReadParams();
1930 inS.writeEmptyParams();
1936 const ::std::string iceC_IceStormElection_ReplicaObserver_all[] = {
"addSubscriber",
1944 "removeSubscriber"};
1950 const ::Ice::Current& current)
1952 ::std::pair<const ::std::string*, const ::std::string*> r =
1953 ::std::equal_range(iceC_IceStormElection_ReplicaObserver_all,
1954 iceC_IceStormElection_ReplicaObserver_all + 9,
1956 if (r.first == r.second)
1958 throw ::Ice::OperationNotExistException(
1959 __FILE__, __LINE__, current.id, current.facet, current.operation);
1962 switch (r.first - iceC_IceStormElection_ReplicaObserver_all)
1978 return _iceD_ice_id(in, current);
1982 return _iceD_ice_ids(in, current);
1986 return _iceD_ice_isA(in, current);
1990 return _iceD_ice_ping(in, current);
2003 throw ::Ice::OperationNotExistException(
2004 __FILE__, __LINE__, current.id, current.facet, current.operation);
2013 Ice::StreamWriter<::IceStormElection::ReplicaObserver, ::Ice::OutputStream>::write(ostr, *
this);
2021 Ice::StreamReader<::IceStormElection::ReplicaObserver, ::Ice::InputStream>::read(istr, *
this);
2028 handle = ::IceStormElection::ReplicaObserverPtr::dynamicCast(v);
2047 const ::std::string iceC_IceStormElection_TopicManagerSync_ids[2] = {
2049 "::IceStormElection::TopicManagerSync"};
2056 return ::std::binary_search(iceC_IceStormElection_TopicManagerSync_ids,
2057 iceC_IceStormElection_TopicManagerSync_ids + 2,
2061::std::vector<::std::string>
2064 return ::std::vector<::std::string>(&iceC_IceStormElection_TopicManagerSync_ids[0],
2065 &iceC_IceStormElection_TopicManagerSync_ids[2]);
2077#ifdef ICE_HAS_THREAD_SAFE_LOCAL_STATIC
2078 static const ::std::string typeId =
"::IceStormElection::TopicManagerSync";
2081 return iceC_IceStormElection_TopicManagerSync_ids[1];
2087 const ::Ice::Current& current)
2089 _iceCheckMode(::Ice::Normal, current.mode);
2090 inS.readEmptyParams();
2093 this->
getContent(iceP_llu, iceP_content, current);
2094 ::Ice::OutputStream* ostr = inS.startWriteParams();
2095 ostr->write(iceP_llu);
2096 ostr->write(iceP_content);
2097 inS.endWriteParams();
2103 const ::std::string iceC_IceStormElection_TopicManagerSync_all[] = {
"getContent",
2113 const ::Ice::Current& current)
2115 ::std::pair<const ::std::string*, const ::std::string*> r =
2116 ::std::equal_range(iceC_IceStormElection_TopicManagerSync_all,
2117 iceC_IceStormElection_TopicManagerSync_all + 5,
2119 if (r.first == r.second)
2121 throw ::Ice::OperationNotExistException(
2122 __FILE__, __LINE__, current.id, current.facet, current.operation);
2125 switch (r.first - iceC_IceStormElection_TopicManagerSync_all)
2133 return _iceD_ice_id(in, current);
2137 return _iceD_ice_ids(in, current);
2141 return _iceD_ice_isA(in, current);
2145 return _iceD_ice_ping(in, current);
2150 throw ::Ice::OperationNotExistException(
2151 __FILE__, __LINE__, current.id, current.facet, current.operation);
2160 Ice::StreamWriter<::IceStormElection::TopicManagerSync, ::Ice::OutputStream>::write(ostr,
2169 Ice::StreamReader<::IceStormElection::TopicManagerSync, ::Ice::InputStream>::read(istr, *
this);
2176 handle = ::IceStormElection::TopicManagerSyncPtr::dynamicCast(v);
2195 const ::std::string iceC_IceStormElection_Node_ids[2] = {
"::Ice::Object",
2196 "::IceStormElection::Node"};
2203 return ::std::binary_search(
2204 iceC_IceStormElection_Node_ids, iceC_IceStormElection_Node_ids + 2, s);
2207::std::vector<::std::string>
2210 return ::std::vector<::std::string>(&iceC_IceStormElection_Node_ids[0],
2211 &iceC_IceStormElection_Node_ids[2]);
2223#ifdef ICE_HAS_THREAD_SAFE_LOCAL_STATIC
2224 static const ::std::string typeId =
"::IceStormElection::Node";
2227 return iceC_IceStormElection_Node_ids[1];
2233 const ::Ice::Current& current)
2235 _iceCheckMode(::Ice::Normal, current.mode);
2236 ::Ice::InputStream* istr = inS.startReadParams();
2238 ::std::string iceP_gn;
2240 istr->read(iceP_gn);
2241 inS.endReadParams();
2243 inS.writeEmptyParams();
2250 _iceCheckMode(::Ice::Normal, current.mode);
2251 ::Ice::InputStream* istr = inS.startReadParams();
2253 ::std::string iceP_gn;
2254 ::Ice::ObjectPrx iceP_coordinator;
2255 ::Ice::Int iceP_max;
2256 ::Ice::Long iceP_generation;
2258 istr->read(iceP_gn);
2259 istr->read(iceP_coordinator);
2260 istr->read(iceP_max);
2261 istr->read(iceP_generation);
2262 inS.endReadParams();
2263 this->
ready(iceP_j, iceP_gn, iceP_coordinator, iceP_max, iceP_generation, current);
2264 inS.writeEmptyParams();
2271 _iceCheckMode(::Ice::Normal, current.mode);
2272 ::Ice::InputStream* istr = inS.startReadParams();
2274 ::std::string iceP_gn;
2275 ::Ice::IntSeq iceP_forwardedInvites;
2276 ::Ice::ObjectPrx iceP_observer;
2278 ::Ice::Int iceP_max;
2280 istr->read(iceP_gn);
2281 istr->read(iceP_forwardedInvites);
2282 istr->read(iceP_observer);
2283 istr->read(iceP_llu);
2284 istr->read(iceP_max);
2285 inS.endReadParams();
2287 iceP_j, iceP_gn, iceP_forwardedInvites, iceP_observer, iceP_llu, iceP_max, current);
2288 inS.writeEmptyParams();
2294 const ::Ice::Current& current)
const
2296 _iceCheckMode(::Ice::Idempotent, current.mode);
2297 inS.readEmptyParams();
2299 ::Ice::OutputStream* ostr = inS.startWriteParams();
2301 inS.endWriteParams();
2307 const ::Ice::Current& current)
const
2309 _iceCheckMode(::Ice::Idempotent, current.mode);
2310 ::Ice::InputStream* istr = inS.startReadParams();
2311 ::std::string iceP_gn;
2313 istr->read(iceP_gn);
2315 inS.endReadParams();
2316 bool ret = this->
areYouThere(iceP_gn, iceP_j, current);
2317 ::Ice::OutputStream* ostr = inS.startWriteParams();
2319 inS.endWriteParams();
2325 const ::Ice::Current& current)
const
2327 _iceCheckMode(::Ice::Idempotent, current.mode);
2328 inS.readEmptyParams();
2329 ::Ice::ObjectPrx ret = this->sync(current);
2330 ::Ice::OutputStream* ostr = inS.startWriteParams();
2332 inS.endWriteParams();
2338 const ::Ice::Current& current)
const
2340 _iceCheckMode(::Ice::Idempotent, current.mode);
2341 inS.readEmptyParams();
2343 ::Ice::OutputStream* ostr = inS.startWriteParams();
2345 inS.endWriteParams();
2351 const ::Ice::Current& current)
const
2353 _iceCheckMode(::Ice::Idempotent, current.mode);
2354 inS.readEmptyParams();
2356 ::Ice::OutputStream* ostr = inS.startWriteParams();
2358 inS.endWriteParams();
2364 const ::std::string iceC_IceStormElection_Node_all[] = {
"accept",
2365 "areYouCoordinator",
2382 ::std::pair<const ::std::string*, const ::std::string*> r = ::std::equal_range(
2383 iceC_IceStormElection_Node_all, iceC_IceStormElection_Node_all + 12, current.operation);
2384 if (r.first == r.second)
2386 throw ::Ice::OperationNotExistException(
2387 __FILE__, __LINE__, current.id, current.facet, current.operation);
2390 switch (r.first - iceC_IceStormElection_Node_all)
2406 return _iceD_ice_id(in, current);
2410 return _iceD_ice_ids(in, current);
2414 return _iceD_ice_isA(in, current);
2418 return _iceD_ice_ping(in, current);
2443 throw ::Ice::OperationNotExistException(
2444 __FILE__, __LINE__, current.id, current.facet, current.operation);
2453 Ice::StreamWriter<::IceStormElection::Node, ::Ice::OutputStream>::write(ostr, *
this);
2461 Ice::StreamReader<::IceStormElection::Node, ::Ice::InputStream>::read(istr, *
this);
2468 handle = ::IceStormElection::NodePtr::dynamicCast(v);
::IceStormElection::NodeInfoSeq end_nodes(const ::Ice::AsyncResultPtr &)
void end_ready(const ::Ice::AsyncResultPtr &)
void end_invitation(const ::Ice::AsyncResultPtr &)
void end_accept(const ::Ice::AsyncResultPtr &)
virtual::IceProxy::Ice::Object * _newInstance() const
::IceStormElection::QueryInfo end_query(const ::Ice::AsyncResultPtr &)
::Ice::ObjectPrx end_sync(const ::Ice::AsyncResultPtr &)
bool end_areYouThere(const ::Ice::AsyncResultPtr &)
static const ::std::string & ice_staticId()
bool end_areYouCoordinator(const ::Ice::AsyncResultPtr &)
void end_addSubscriber(const ::Ice::AsyncResultPtr &)
void end_removeSubscriber(const ::Ice::AsyncResultPtr &)
void end_destroyTopic(const ::Ice::AsyncResultPtr &)
void end_createTopic(const ::Ice::AsyncResultPtr &)
virtual::IceProxy::Ice::Object * _newInstance() const
void end_init(const ::Ice::AsyncResultPtr &)
static const ::std::string & ice_staticId()
void end_getContent(::IceStormElection::LogUpdate &iceP_llu, ::IceStormElection::TopicContentSeq &iceP_content, const ::Ice::AsyncResultPtr &)
virtual::IceProxy::Ice::Object * _newInstance() const
static const ::std::string & ice_staticId()
Thrown if an observer detects an inconsistency.
virtual ~ObserverInconsistencyException()
virtual::std::string ice_id() const
string reason
The reason for the inconsistency.
ObserverInconsistencyException()
virtual void _writeImpl(::Ice::OutputStream *) const
virtual void ice_throw() const
virtual ObserverInconsistencyException * ice_clone() const
virtual void _readImpl(::Ice::InputStream *)
virtual const ::std::string & ice_id(const ::Ice::Current &=::Ice::emptyCurrent) const
virtual bool _iceDispatch(::IceInternal::Incoming &, const ::Ice::Current &)
bool _iceD_query(::IceInternal::Incoming &, const ::Ice::Current &) const
bool _iceD_sync(::IceInternal::Incoming &, const ::Ice::Current &) const
bool _iceD_areYouThere(::IceInternal::Incoming &, const ::Ice::Current &) const
bool _iceD_areYouCoordinator(::IceInternal::Incoming &, const ::Ice::Current &) const
virtual void _iceWriteImpl(::Ice::OutputStream *) const
bool _iceD_accept(::IceInternal::Incoming &, const ::Ice::Current &)
bool _iceD_invitation(::IceInternal::Incoming &, const ::Ice::Current &)
bool _iceD_ready(::IceInternal::Incoming &, const ::Ice::Current &)
idempotent QueryInfo query()
Get the query information for the given node.
virtual ::std::vector<::std::string > ice_ids(const ::Ice::Current &=::Ice::emptyCurrent) const
virtual void _iceReadImpl(::Ice::InputStream *)
idempotent NodeInfoSeq nodes()
Get the replication group information.
bool _iceD_nodes(::IceInternal::Incoming &, const ::Ice::Current &) const
void invitation(int j, string gn)
Invite the node into a group with the given coordinator and group name.
void ready(int j, string gn, Object *coordinator, int max, long generation)
Call from the group coordinator to a node to inform the node that the replica group is active.
void accept(int j, string gn, Ice::IntSeq forwardedInvites, Object *observer, LogUpdate llu, int max)
Called to accept an invitation into the given group.
virtual bool ice_isA(const ::std::string &, const ::Ice::Current &=::Ice::emptyCurrent) const
idempotent bool areYouThere(string gn, int j)
Determine if the node is a member of the given group with the given coordinator.
static const ::std::string & ice_staticId()
idempotent bool areYouCoordinator()
Determine if this node is a coordinator.
bool _iceD_removeSubscriber(::IceInternal::Incoming &, const ::Ice::Current &)
virtual const ::std::string & ice_id(const ::Ice::Current &=::Ice::emptyCurrent) const
virtual bool _iceDispatch(::IceInternal::Incoming &, const ::Ice::Current &)
bool _iceD_init(::IceInternal::Incoming &, const ::Ice::Current &)
void destroyTopic(LogUpdate llu, string name)
Destroy the topic with the given name.
virtual void _iceWriteImpl(::Ice::OutputStream *) const
virtual ~ReplicaObserver()
void removeSubscriber(LogUpdate llu, string topic, Ice::IdentitySeq subscribers)
Remove a subscriber from a topic.
bool _iceD_addSubscriber(::IceInternal::Incoming &, const ::Ice::Current &)
void init(LogUpdate llu, TopicContentSeq content)
Initialize the observer.
bool _iceD_destroyTopic(::IceInternal::Incoming &, const ::Ice::Current &)
virtual ::std::vector<::std::string > ice_ids(const ::Ice::Current &=::Ice::emptyCurrent) const
virtual void _iceReadImpl(::Ice::InputStream *)
void addSubscriber(LogUpdate llu, string topic, IceStorm::SubscriberRecord record)
Add a subscriber to a topic.
virtual bool ice_isA(const ::std::string &, const ::Ice::Current &=::Ice::emptyCurrent) const
bool _iceD_createTopic(::IceInternal::Incoming &, const ::Ice::Current &)
static const ::std::string & ice_staticId()
void createTopic(LogUpdate llu, string name)
Create the topic with the given name.
Interface used to sync topics.
virtual const ::std::string & ice_id(const ::Ice::Current &=::Ice::emptyCurrent) const
virtual bool _iceDispatch(::IceInternal::Incoming &, const ::Ice::Current &)
bool _iceD_getContent(::IceInternal::Incoming &, const ::Ice::Current &)
void getContent(out LogUpdate llu, out TopicContentSeq content)
Retrieve the topic content.
virtual void _iceWriteImpl(::Ice::OutputStream *) const
virtual ::std::vector<::std::string > ice_ids(const ::Ice::Current &=::Ice::emptyCurrent) const
virtual void _iceReadImpl(::Ice::InputStream *)
virtual ~TopicManagerSync()
virtual bool ice_isA(const ::std::string &, const ::Ice::Current &=::Ice::emptyCurrent) const
static const ::std::string & ice_staticId()
::IceProxy::Ice::Object * upCast(::IceProxy::IceStormElection::ReplicaObserver *)
::IceInternal::Handle<::IceStormElection::Node > NodePtr
::std::vector<::IceStormElection::NodeInfo > NodeInfoSeq
A sequence of node info.
::IceInternal::Handle<::IceStormElection::TopicManagerSync > TopicManagerSyncPtr
void _icePatchObjectPtr(ReplicaObserverPtr &, const ::Ice::ObjectPtr &)
::std::vector<::IceStormElection::TopicContent > TopicContentSeq
A sequence of topic content.
::Ice::Object * upCast(::IceStormElection::ReplicaObserver *)
::IceInternal::Handle<::IceStormElection::ReplicaObserver > ReplicaObserverPtr
double v(double t, double v0, double a0, double j)
A struct used for marking the last log update.
Used to store persistent information for persistent subscribers.