Election.h
Go to the documentation of this file.
1// **********************************************************************
2//
3// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4//
5// This copy of Ice is licensed to you under the terms described in the
6// ICE_LICENSE file included in this distribution.
7//
8// **********************************************************************
9//
10// Ice version 3.7.0
11//
12// <auto-generated>
13//
14// Generated from file `Election.ice'
15//
16// Warning: do not edit this file.
17//
18// </auto-generated>
19//
20
21#ifndef __IceStorm_Election_h__
22#define __IceStorm_Election_h__
23
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>
41#include <IceStorm/LLURecord.h>
43#include <IceUtil/PushDisableWarnings.h>
44#include <IceUtil/ScopedArray.h>
45#include <IceUtil/UndefSysMacros.h>
46
47#ifndef ICE_IGNORE_VERSION
48#if ICE_INT_VERSION / 100 != 307
49#error Ice version mismatch!
50#endif
51#if ICE_INT_VERSION % 100 > 50
52#error Beta header file detected
53#endif
54#if ICE_INT_VERSION % 100 < 0
55#error Ice patch level mismatch!
56#endif
57#endif
58
59#ifdef ICE_CPP11_MAPPING // C++11 mapping
60
61namespace IceStormElection
62{
63
64 class ReplicaObserver;
66 class TopicManagerSync;
68 class Node;
69 class NodePrx;
70
71} // namespace IceStormElection
72
73namespace IceStormElection
74{
75
76 struct TopicContent
77 {
78 ::Ice::Identity id;
80
81 std::tuple<const ::Ice::Identity&, const ::IceStorm::SubscriberRecordSeq&>
82 ice_tuple() const
83 {
84 return std::tie(id, records);
85 }
86 };
87
88 using TopicContentSeq = ::std::vector<::IceStormElection::TopicContent>;
89
91 public ::Ice::UserExceptionHelper<ObserverInconsistencyException, ::Ice::UserException>
92 {
93 public:
95
97
99
100 ObserverInconsistencyException(const ::std::string& iceP_reason) :
101 reason(::std::move(iceP_reason))
102 {
103 }
104
105 std::tuple<const ::std::string&>
106 ice_tuple() const
107 {
108 return std::tie(reason);
109 }
110
111 static const ::std::string& ice_staticId();
112
113 ::std::string reason;
114 };
115
116 static ObserverInconsistencyException _iceS_ObserverInconsistencyException_init;
117
118 enum class NodeState : unsigned char
119 {
124 };
125
126 struct NodeInfo
127 {
128 int id;
129 ::std::shared_ptr<::IceStormElection::NodePrx> n;
130
131 std::tuple<const int&, const ::std::shared_ptr<::IceStormElection::NodePrx>&>
132 ice_tuple() const
133 {
134 return std::tie(id, n);
135 }
136 };
137
138 using NodeInfoSeq = ::std::vector<::IceStormElection::NodeInfo>;
139
140 struct GroupInfo
141 {
142 int id;
143 ::IceStormElection::LogUpdate llu;
144
145 std::tuple<const int&, const ::IceStormElection::LogUpdate&>
146 ice_tuple() const
147 {
148 return std::tie(id, llu);
149 }
150 };
151
152 using GroupInfoSeq = ::std::vector<::IceStormElection::GroupInfo>;
153
154 struct QueryInfo
155 {
156 int id;
157 int coord;
158 ::std::string group;
159 ::std::shared_ptr<::Ice::ObjectPrx> replica;
162 int max;
163
164 std::tuple<const int&,
165 const int&,
166 const ::std::string&,
167 const ::std::shared_ptr<::Ice::ObjectPrx>&,
168 const ::IceStormElection::NodeState&,
169 const ::IceStormElection::GroupInfoSeq&,
170 const int&>
171 ice_tuple() const
172 {
173 return std::tie(id, coord, group, replica, state, up, max);
174 }
175 };
176
177 using Ice::operator<;
178 using Ice::operator<=;
179 using Ice::operator>;
180 using Ice::operator>=;
181 using Ice::operator==;
182 using Ice::operator!=;
183
184} // namespace IceStormElection
185
186namespace IceStormElection
187{
188
189 class ReplicaObserver : public virtual ::Ice::Object
190 {
191 public:
193
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;
197
198 static const ::std::string& ice_staticId();
199
200 virtual void init(::IceStormElection::LogUpdate,
202 const ::Ice::Current&) = 0;
203 bool _iceD_init(::IceInternal::Incoming&, const ::Ice::Current&);
204
205 virtual void
206 createTopic(::IceStormElection::LogUpdate, ::std::string, const ::Ice::Current&) = 0;
207 bool _iceD_createTopic(::IceInternal::Incoming&, const ::Ice::Current&);
208
209 virtual void
210 destroyTopic(::IceStormElection::LogUpdate, ::std::string, const ::Ice::Current&) = 0;
211 bool _iceD_destroyTopic(::IceInternal::Incoming&, const ::Ice::Current&);
212
213 virtual void addSubscriber(::IceStormElection::LogUpdate,
214 ::std::string,
215 ::IceStorm::SubscriberRecord,
216 const ::Ice::Current&) = 0;
217 bool _iceD_addSubscriber(::IceInternal::Incoming&, const ::Ice::Current&);
218
219 virtual void removeSubscriber(::IceStormElection::LogUpdate,
220 ::std::string,
221 ::Ice::IdentitySeq,
222 const ::Ice::Current&) = 0;
223 bool _iceD_removeSubscriber(::IceInternal::Incoming&, const ::Ice::Current&);
224
225 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&) override;
226 };
227
228 class TopicManagerSync : public virtual ::Ice::Object
229 {
230 public:
232
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;
236
237 static const ::std::string& ice_staticId();
238
239 struct GetContentResult
240 {
241 ::IceStormElection::LogUpdate llu;
243 };
244
245 virtual void getContent(::IceStormElection::LogUpdate&,
247 const ::Ice::Current&) = 0;
248 bool _iceD_getContent(::IceInternal::Incoming&, const ::Ice::Current&);
249
250 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&) override;
251 };
252
253 class Node : public virtual ::Ice::Object
254 {
255 public:
256 using ProxyType = NodePrx;
257
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;
261
262 static const ::std::string& ice_staticId();
263
264 virtual void invitation(int, ::std::string, const ::Ice::Current&) = 0;
265 bool _iceD_invitation(::IceInternal::Incoming&, const ::Ice::Current&);
266
267 virtual void ready(int,
268 ::std::string,
269 ::std::shared_ptr<::Ice::ObjectPrx>,
270 int,
271 long long int,
272 const ::Ice::Current&) = 0;
273 bool _iceD_ready(::IceInternal::Incoming&, const ::Ice::Current&);
274
275 virtual void accept(int,
276 ::std::string,
277 ::Ice::IntSeq,
278 ::std::shared_ptr<::Ice::ObjectPrx>,
279 ::IceStormElection::LogUpdate,
280 int,
281 const ::Ice::Current&) = 0;
282 bool _iceD_accept(::IceInternal::Incoming&, const ::Ice::Current&);
283
284 virtual bool areYouCoordinator(const ::Ice::Current&) const = 0;
285 bool _iceD_areYouCoordinator(::IceInternal::Incoming&, const ::Ice::Current&) const;
286
287 virtual bool areYouThere(::std::string, int, const ::Ice::Current&) const = 0;
288 bool _iceD_areYouThere(::IceInternal::Incoming&, const ::Ice::Current&) const;
289
290 virtual ::std::shared_ptr<::Ice::ObjectPrx> sync(const ::Ice::Current&) const = 0;
291 bool _iceD_sync(::IceInternal::Incoming&, const ::Ice::Current&) const;
292
293 virtual ::IceStormElection::NodeInfoSeq nodes(const ::Ice::Current&) const = 0;
294 bool _iceD_nodes(::IceInternal::Incoming&, const ::Ice::Current&) const;
295
296 virtual ::IceStormElection::QueryInfo query(const ::Ice::Current&) const = 0;
297 bool _iceD_query(::IceInternal::Incoming&, const ::Ice::Current&) const;
298
299 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&) override;
300 };
301
302} // namespace IceStormElection
303
304namespace IceStormElection
305{
306
307 class ReplicaObserverPrx : public virtual ::Ice::Proxy<ReplicaObserverPrx, ::Ice::ObjectPrx>
308 {
309 public:
310 void
311 init(const ::IceStormElection::LogUpdate& iceP_llu,
312 const ::IceStormElection::TopicContentSeq& iceP_content,
313 const ::Ice::Context& context = Ice::noExplicitContext)
314 {
315 _makePromiseOutgoing<void>(true,
316 this,
317 &IceStormElection::ReplicaObserverPrx::_iceI_init,
318 iceP_llu,
319 iceP_content,
320 context)
321 .get();
322 }
323
324 template <template <typename> class P = ::std::promise>
325 auto
326 initAsync(const ::IceStormElection::LogUpdate& iceP_llu,
327 const ::IceStormElection::TopicContentSeq& iceP_content,
328 const ::Ice::Context& context = Ice::noExplicitContext)
329 -> decltype(::std::declval<P<void>>().get_future())
330 {
331 return _makePromiseOutgoing<void, P>(false,
332 this,
333 &IceStormElection::ReplicaObserverPrx::_iceI_init,
334 iceP_llu,
335 iceP_content,
336 context);
337 }
338
339 ::std::function<void()>
340 initAsync(const ::IceStormElection::LogUpdate& iceP_llu,
341 const ::IceStormElection::TopicContentSeq& iceP_content,
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)
346 {
347 return _makeLamdaOutgoing<void>(response,
348 ex,
349 sent,
350 this,
351 &IceStormElection::ReplicaObserverPrx::_iceI_init,
352 iceP_llu,
353 iceP_content,
354 context);
355 }
356
357 void _iceI_init(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
358 const ::IceStormElection::LogUpdate&,
359 const ::IceStormElection::TopicContentSeq&,
360 const ::Ice::Context&);
361
362 void
363 createTopic(const ::IceStormElection::LogUpdate& iceP_llu,
364 const ::std::string& iceP_name,
365 const ::Ice::Context& context = Ice::noExplicitContext)
366 {
367 _makePromiseOutgoing<void>(true,
368 this,
369 &IceStormElection::ReplicaObserverPrx::_iceI_createTopic,
370 iceP_llu,
371 iceP_name,
372 context)
373 .get();
374 }
375
376 template <template <typename> class P = ::std::promise>
377 auto
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())
382 {
383 return _makePromiseOutgoing<void, P>(
384 false,
385 this,
386 &IceStormElection::ReplicaObserverPrx::_iceI_createTopic,
387 iceP_llu,
388 iceP_name,
389 context);
390 }
391
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)
399 {
400 return _makeLamdaOutgoing<void>(
401 response,
402 ex,
403 sent,
404 this,
405 &IceStormElection::ReplicaObserverPrx::_iceI_createTopic,
406 iceP_llu,
407 iceP_name,
408 context);
409 }
410
411 void _iceI_createTopic(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
412 const ::IceStormElection::LogUpdate&,
413 const ::std::string&,
414 const ::Ice::Context&);
415
416 void
417 destroyTopic(const ::IceStormElection::LogUpdate& iceP_llu,
418 const ::std::string& iceP_name,
419 const ::Ice::Context& context = Ice::noExplicitContext)
420 {
421 _makePromiseOutgoing<void>(true,
422 this,
423 &IceStormElection::ReplicaObserverPrx::_iceI_destroyTopic,
424 iceP_llu,
425 iceP_name,
426 context)
427 .get();
428 }
429
430 template <template <typename> class P = ::std::promise>
431 auto
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())
436 {
437 return _makePromiseOutgoing<void, P>(
438 false,
439 this,
440 &IceStormElection::ReplicaObserverPrx::_iceI_destroyTopic,
441 iceP_llu,
442 iceP_name,
443 context);
444 }
445
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)
453 {
454 return _makeLamdaOutgoing<void>(
455 response,
456 ex,
457 sent,
458 this,
459 &IceStormElection::ReplicaObserverPrx::_iceI_destroyTopic,
460 iceP_llu,
461 iceP_name,
462 context);
463 }
464
465 void _iceI_destroyTopic(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
466 const ::IceStormElection::LogUpdate&,
467 const ::std::string&,
468 const ::Ice::Context&);
469
470 void
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)
475 {
476 _makePromiseOutgoing<void>(true,
477 this,
478 &IceStormElection::ReplicaObserverPrx::_iceI_addSubscriber,
479 iceP_llu,
480 iceP_topic,
481 iceP_record,
482 context)
483 .get();
484 }
485
486 template <template <typename> class P = ::std::promise>
487 auto
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())
493 {
494 return _makePromiseOutgoing<void, P>(
495 false,
496 this,
497 &IceStormElection::ReplicaObserverPrx::_iceI_addSubscriber,
498 iceP_llu,
499 iceP_topic,
500 iceP_record,
501 context);
502 }
503
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)
512 {
513 return _makeLamdaOutgoing<void>(
514 response,
515 ex,
516 sent,
517 this,
518 &IceStormElection::ReplicaObserverPrx::_iceI_addSubscriber,
519 iceP_llu,
520 iceP_topic,
521 iceP_record,
522 context);
523 }
524
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&);
530
531 void
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)
536 {
537 _makePromiseOutgoing<void>(
538 true,
539 this,
540 &IceStormElection::ReplicaObserverPrx::_iceI_removeSubscriber,
541 iceP_llu,
542 iceP_topic,
543 iceP_subscribers,
544 context)
545 .get();
546 }
547
548 template <template <typename> class P = ::std::promise>
549 auto
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())
555 {
556 return _makePromiseOutgoing<void, P>(
557 false,
558 this,
559 &IceStormElection::ReplicaObserverPrx::_iceI_removeSubscriber,
560 iceP_llu,
561 iceP_topic,
562 iceP_subscribers,
563 context);
564 }
565
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)
574 {
575 return _makeLamdaOutgoing<void>(
576 response,
577 ex,
578 sent,
579 this,
580 &IceStormElection::ReplicaObserverPrx::_iceI_removeSubscriber,
581 iceP_llu,
582 iceP_topic,
583 iceP_subscribers,
584 context);
585 }
586
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&);
592
593 static const ::std::string& ice_staticId();
594
595 protected:
596 ReplicaObserverPrx() = default;
597 friend ::std::shared_ptr<ReplicaObserverPrx> IceInternal::createProxy<ReplicaObserverPrx>();
598
599 virtual ::std::shared_ptr<::Ice::ObjectPrx> _newInstance() const override;
600 };
601
602 class TopicManagerSyncPrx : public virtual ::Ice::Proxy<TopicManagerSyncPrx, ::Ice::ObjectPrx>
603 {
604 public:
605 void
606 getContent(::IceStormElection::LogUpdate& iceP_llu,
608 const ::Ice::Context& context = Ice::noExplicitContext)
609 {
610 auto result =
611 _makePromiseOutgoing<::IceStormElection::TopicManagerSync::GetContentResult>(
612 true, this, &IceStormElection::TopicManagerSyncPrx::_iceI_getContent, context)
613 .get();
614 iceP_llu = ::std::move(result.llu);
615 iceP_content = ::std::move(result.content);
616 }
617
618 template <template <typename> class P = ::std::promise>
619 auto
620 getContentAsync(const ::Ice::Context& context = Ice::noExplicitContext)
621 -> decltype(::std::declval<P<::IceStormElection::TopicManagerSync::GetContentResult>>()
622 .get_future())
623 {
624 return _makePromiseOutgoing<::IceStormElection::TopicManagerSync::GetContentResult, P>(
625 false, this, &IceStormElection::TopicManagerSyncPrx::_iceI_getContent, context);
626 }
627
628 ::std::function<void()>
629 getContentAsync(::std::function<void(::IceStormElection::LogUpdate,
631 ::std::function<void(::std::exception_ptr)> ex = nullptr,
632 ::std::function<void(bool)> sent = nullptr,
633 const ::Ice::Context& context = Ice::noExplicitContext)
634 {
635 auto responseCb =
636 [response](::IceStormElection::TopicManagerSync::GetContentResult&& result)
637 { response(::std::move(result.llu), ::std::move(result.content)); };
638 return _makeLamdaOutgoing<::IceStormElection::TopicManagerSync::GetContentResult>(
639 responseCb,
640 ex,
641 sent,
642 this,
643 &IceStormElection::TopicManagerSyncPrx::_iceI_getContent,
644 context);
645 }
646
647 void _iceI_getContent(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<
648 ::IceStormElection::TopicManagerSync::GetContentResult>>&,
649 const ::Ice::Context&);
650
651 static const ::std::string& ice_staticId();
652
653 protected:
654 TopicManagerSyncPrx() = default;
655 friend ::std::shared_ptr<TopicManagerSyncPrx>
656 IceInternal::createProxy<TopicManagerSyncPrx>();
657
658 virtual ::std::shared_ptr<::Ice::ObjectPrx> _newInstance() const override;
659 };
660
661 class NodePrx : public virtual ::Ice::Proxy<NodePrx, ::Ice::ObjectPrx>
662 {
663 public:
664 void
665 invitation(int iceP_j,
666 const ::std::string& iceP_gn,
667 const ::Ice::Context& context = Ice::noExplicitContext)
668 {
669 _makePromiseOutgoing<void>(
670 true, this, &IceStormElection::NodePrx::_iceI_invitation, iceP_j, iceP_gn, context)
671 .get();
672 }
673
674 template <template <typename> class P = ::std::promise>
675 auto
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())
680 {
681 return _makePromiseOutgoing<void, P>(false,
682 this,
683 &IceStormElection::NodePrx::_iceI_invitation,
684 iceP_j,
685 iceP_gn,
686 context);
687 }
688
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)
696 {
697 return _makeLamdaOutgoing<void>(response,
698 ex,
699 sent,
700 this,
701 &IceStormElection::NodePrx::_iceI_invitation,
702 iceP_j,
703 iceP_gn,
704 context);
705 }
706
707 void _iceI_invitation(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
708 int,
709 const ::std::string&,
710 const ::Ice::Context&);
711
712 void
713 ready(int iceP_j,
714 const ::std::string& iceP_gn,
715 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_coordinator,
716 int iceP_max,
717 long long int iceP_generation,
718 const ::Ice::Context& context = Ice::noExplicitContext)
719 {
720 _makePromiseOutgoing<void>(true,
721 this,
722 &IceStormElection::NodePrx::_iceI_ready,
723 iceP_j,
724 iceP_gn,
725 iceP_coordinator,
726 iceP_max,
727 iceP_generation,
728 context)
729 .get();
730 }
731
732 template <template <typename> class P = ::std::promise>
733 auto
734 readyAsync(int iceP_j,
735 const ::std::string& iceP_gn,
736 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_coordinator,
737 int iceP_max,
738 long long int iceP_generation,
739 const ::Ice::Context& context = Ice::noExplicitContext)
740 -> decltype(::std::declval<P<void>>().get_future())
741 {
742 return _makePromiseOutgoing<void, P>(false,
743 this,
744 &IceStormElection::NodePrx::_iceI_ready,
745 iceP_j,
746 iceP_gn,
747 iceP_coordinator,
748 iceP_max,
749 iceP_generation,
750 context);
751 }
752
753 ::std::function<void()>
754 readyAsync(int iceP_j,
755 const ::std::string& iceP_gn,
756 const ::std::shared_ptr<::Ice::ObjectPrx>& iceP_coordinator,
757 int iceP_max,
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)
763 {
764 return _makeLamdaOutgoing<void>(response,
765 ex,
766 sent,
767 this,
768 &IceStormElection::NodePrx::_iceI_ready,
769 iceP_j,
770 iceP_gn,
771 iceP_coordinator,
772 iceP_max,
773 iceP_generation,
774 context);
775 }
776
777 void _iceI_ready(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
778 int,
779 const ::std::string&,
780 const ::std::shared_ptr<::Ice::ObjectPrx>&,
781 int,
782 long long int,
783 const ::Ice::Context&);
784
785 void
786 accept(int iceP_j,
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,
791 int iceP_max,
792 const ::Ice::Context& context = Ice::noExplicitContext)
793 {
794 _makePromiseOutgoing<void>(true,
795 this,
796 &IceStormElection::NodePrx::_iceI_accept,
797 iceP_j,
798 iceP_gn,
799 iceP_forwardedInvites,
800 iceP_observer,
801 iceP_llu,
802 iceP_max,
803 context)
804 .get();
805 }
806
807 template <template <typename> class P = ::std::promise>
808 auto
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,
814 int iceP_max,
815 const ::Ice::Context& context = Ice::noExplicitContext)
816 -> decltype(::std::declval<P<void>>().get_future())
817 {
818 return _makePromiseOutgoing<void, P>(false,
819 this,
820 &IceStormElection::NodePrx::_iceI_accept,
821 iceP_j,
822 iceP_gn,
823 iceP_forwardedInvites,
824 iceP_observer,
825 iceP_llu,
826 iceP_max,
827 context);
828 }
829
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,
836 int iceP_max,
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)
841 {
842 return _makeLamdaOutgoing<void>(response,
843 ex,
844 sent,
845 this,
846 &IceStormElection::NodePrx::_iceI_accept,
847 iceP_j,
848 iceP_gn,
849 iceP_forwardedInvites,
850 iceP_observer,
851 iceP_llu,
852 iceP_max,
853 context);
854 }
855
856 void _iceI_accept(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
857 int,
858 const ::std::string&,
859 const ::Ice::IntSeq&,
860 const ::std::shared_ptr<::Ice::ObjectPrx>&,
861 const ::IceStormElection::LogUpdate&,
862 int,
863 const ::Ice::Context&);
864
865 bool
866 areYouCoordinator(const ::Ice::Context& context = Ice::noExplicitContext)
867 {
868 return _makePromiseOutgoing<bool>(
869 true, this, &IceStormElection::NodePrx::_iceI_areYouCoordinator, context)
870 .get();
871 }
872
873 template <template <typename> class P = ::std::promise>
874 auto
875 areYouCoordinatorAsync(const ::Ice::Context& context = Ice::noExplicitContext)
876 -> decltype(::std::declval<P<bool>>().get_future())
877 {
878 return _makePromiseOutgoing<bool, P>(
879 false, this, &IceStormElection::NodePrx::_iceI_areYouCoordinator, context);
880 }
881
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)
887 {
888 return _makeLamdaOutgoing<bool>(response,
889 ex,
890 sent,
891 this,
892 &IceStormElection::NodePrx::_iceI_areYouCoordinator,
893 context);
894 }
895
896 void _iceI_areYouCoordinator(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<bool>>&,
897 const ::Ice::Context&);
898
899 bool
900 areYouThere(const ::std::string& iceP_gn,
901 int iceP_j,
902 const ::Ice::Context& context = Ice::noExplicitContext)
903 {
904 return _makePromiseOutgoing<bool>(true,
905 this,
906 &IceStormElection::NodePrx::_iceI_areYouThere,
907 iceP_gn,
908 iceP_j,
909 context)
910 .get();
911 }
912
913 template <template <typename> class P = ::std::promise>
914 auto
915 areYouThereAsync(const ::std::string& iceP_gn,
916 int iceP_j,
917 const ::Ice::Context& context = Ice::noExplicitContext)
918 -> decltype(::std::declval<P<bool>>().get_future())
919 {
920 return _makePromiseOutgoing<bool, P>(false,
921 this,
922 &IceStormElection::NodePrx::_iceI_areYouThere,
923 iceP_gn,
924 iceP_j,
925 context);
926 }
927
928 ::std::function<void()>
929 areYouThereAsync(const ::std::string& iceP_gn,
930 int iceP_j,
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)
935 {
936 return _makeLamdaOutgoing<bool>(response,
937 ex,
938 sent,
939 this,
940 &IceStormElection::NodePrx::_iceI_areYouThere,
941 iceP_gn,
942 iceP_j,
943 context);
944 }
945
946 void _iceI_areYouThere(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<bool>>&,
947 const ::std::string&,
948 int,
949 const ::Ice::Context&);
950
951 ::std::shared_ptr<::Ice::ObjectPrx>
952 sync(const ::Ice::Context& context = Ice::noExplicitContext)
953 {
954 return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(
955 true, this, &IceStormElection::NodePrx::_iceI_sync, context)
956 .get();
957 }
958
959 template <template <typename> class P = ::std::promise>
960 auto
961 syncAsync(const ::Ice::Context& context = Ice::noExplicitContext)
962 -> decltype(::std::declval<P<::std::shared_ptr<::Ice::ObjectPrx>>>().get_future())
963 {
964 return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>, P>(
965 false, this, &IceStormElection::NodePrx::_iceI_sync, context);
966 }
967
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)
973 {
974 return _makeLamdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(
975 response, ex, sent, this, &IceStormElection::NodePrx::_iceI_sync, context);
976 }
977
978 void _iceI_sync(const ::std::shared_ptr<
979 ::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>&,
980 const ::Ice::Context&);
981
983 nodes(const ::Ice::Context& context = Ice::noExplicitContext)
984 {
985 return _makePromiseOutgoing<::IceStormElection::NodeInfoSeq>(
986 true, this, &IceStormElection::NodePrx::_iceI_nodes, context)
987 .get();
988 }
989
990 template <template <typename> class P = ::std::promise>
991 auto
992 nodesAsync(const ::Ice::Context& context = Ice::noExplicitContext)
993 -> decltype(::std::declval<P<::IceStormElection::NodeInfoSeq>>().get_future())
994 {
995 return _makePromiseOutgoing<::IceStormElection::NodeInfoSeq, P>(
996 false, this, &IceStormElection::NodePrx::_iceI_nodes, context);
997 }
998
999 ::std::function<void()>
1000 nodesAsync(::std::function<void(::IceStormElection::NodeInfoSeq)> response,
1001 ::std::function<void(::std::exception_ptr)> ex = nullptr,
1002 ::std::function<void(bool)> sent = nullptr,
1003 const ::Ice::Context& context = Ice::noExplicitContext)
1004 {
1005 return _makeLamdaOutgoing<::IceStormElection::NodeInfoSeq>(
1006 response, ex, sent, this, &IceStormElection::NodePrx::_iceI_nodes, context);
1007 }
1008
1009 void _iceI_nodes(const ::std::shared_ptr<
1010 ::IceInternal::OutgoingAsyncT<::IceStormElection::NodeInfoSeq>>&,
1011 const ::Ice::Context&);
1012
1013 ::IceStormElection::QueryInfo
1014 query(const ::Ice::Context& context = Ice::noExplicitContext)
1015 {
1016 return _makePromiseOutgoing<::IceStormElection::QueryInfo>(
1017 true, this, &IceStormElection::NodePrx::_iceI_query, context)
1018 .get();
1019 }
1020
1021 template <template <typename> class P = ::std::promise>
1022 auto
1023 queryAsync(const ::Ice::Context& context = Ice::noExplicitContext)
1024 -> decltype(::std::declval<P<::IceStormElection::QueryInfo>>().get_future())
1025 {
1026 return _makePromiseOutgoing<::IceStormElection::QueryInfo, P>(
1027 false, this, &IceStormElection::NodePrx::_iceI_query, context);
1028 }
1029
1030 ::std::function<void()>
1031 queryAsync(::std::function<void(::IceStormElection::QueryInfo)> response,
1032 ::std::function<void(::std::exception_ptr)> ex = nullptr,
1033 ::std::function<void(bool)> sent = nullptr,
1034 const ::Ice::Context& context = Ice::noExplicitContext)
1035 {
1036 return _makeLamdaOutgoing<::IceStormElection::QueryInfo>(
1037 response, ex, sent, this, &IceStormElection::NodePrx::_iceI_query, context);
1038 }
1039
1040 void _iceI_query(
1041 const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::IceStormElection::QueryInfo>>&,
1042 const ::Ice::Context&);
1043
1044 static const ::std::string& ice_staticId();
1045
1046 protected:
1047 NodePrx() = default;
1048 friend ::std::shared_ptr<NodePrx> IceInternal::createProxy<NodePrx>();
1049
1050 virtual ::std::shared_ptr<::Ice::ObjectPrx> _newInstance() const override;
1051 };
1052
1053} // namespace IceStormElection
1054
1055namespace Ice
1056{
1057
1058 template <>
1059 struct StreamableTraits<::IceStormElection::TopicContent>
1060 {
1061 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
1062 static const int minWireSize = 3;
1063 static const bool fixedLength = false;
1064 };
1065
1066 template <typename S>
1067 struct StreamReader<::IceStormElection::TopicContent, S>
1068 {
1069 static void
1070 read(S* istr, ::IceStormElection::TopicContent& v)
1071 {
1072 istr->readAll(v.id, v.records);
1073 }
1074 };
1075
1076 template <typename S>
1077 struct StreamReader<::IceStormElection::ObserverInconsistencyException, S>
1078 {
1079 static void
1080 read(S* istr, ::IceStormElection::ObserverInconsistencyException& v)
1081 {
1082 istr->readAll(v.reason);
1083 }
1084 };
1085
1086 template <>
1087 struct StreamableTraits<::IceStormElection::NodeState>
1088 {
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;
1094 };
1095
1096 template <>
1097 struct StreamableTraits<::IceStormElection::NodeInfo>
1098 {
1099 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
1100 static const int minWireSize = 6;
1101 static const bool fixedLength = false;
1102 };
1103
1104 template <typename S>
1105 struct StreamReader<::IceStormElection::NodeInfo, S>
1106 {
1107 static void
1108 read(S* istr, ::IceStormElection::NodeInfo& v)
1109 {
1110 istr->readAll(v.id, v.n);
1111 }
1112 };
1113
1114 template <>
1115 struct StreamableTraits<::IceStormElection::GroupInfo>
1116 {
1117 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
1118 static const int minWireSize = 20;
1119 static const bool fixedLength = true;
1120 };
1121
1122 template <typename S>
1123 struct StreamReader<::IceStormElection::GroupInfo, S>
1124 {
1125 static void
1126 read(S* istr, ::IceStormElection::GroupInfo& v)
1127 {
1128 istr->readAll(v.id, v.llu);
1129 }
1130 };
1131
1132 template <>
1133 struct StreamableTraits<::IceStormElection::QueryInfo>
1134 {
1135 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
1136 static const int minWireSize = 17;
1137 static const bool fixedLength = false;
1138 };
1139
1140 template <typename S>
1141 struct StreamReader<::IceStormElection::QueryInfo, S>
1142 {
1143 static void
1144 read(S* istr, ::IceStormElection::QueryInfo& v)
1145 {
1146 istr->readAll(v.id, v.coord, v.group, v.replica, v.state, v.up, v.max);
1147 }
1148 };
1149
1150} // namespace Ice
1151
1152namespace IceStormElection
1153{
1154
1155 using ReplicaObserverPtr = ::std::shared_ptr<ReplicaObserver>;
1156 using ReplicaObserverPrxPtr = ::std::shared_ptr<ReplicaObserverPrx>;
1157
1158 using TopicManagerSyncPtr = ::std::shared_ptr<TopicManagerSync>;
1159 using TopicManagerSyncPrxPtr = ::std::shared_ptr<TopicManagerSyncPrx>;
1160
1161 using NodePtr = ::std::shared_ptr<Node>;
1162 using NodePrxPtr = ::std::shared_ptr<NodePrx>;
1163
1164} // namespace IceStormElection
1165
1166#else // C++98 mapping
1167
1169{
1170
1171 class ReplicaObserver;
1172 void _readProxy(::Ice::InputStream*,
1174 ::IceProxy::Ice::Object* upCast(::IceProxy::IceStormElection::ReplicaObserver*);
1175
1176 class TopicManagerSync;
1177 void _readProxy(::Ice::InputStream*,
1179 ::IceProxy::Ice::Object* upCast(::IceProxy::IceStormElection::TopicManagerSync*);
1180
1181 class Node;
1182 void _readProxy(::Ice::InputStream*,
1184 ::IceProxy::Ice::Object* upCast(::IceProxy::IceStormElection::Node*);
1185
1186} // namespace IceProxy::IceStormElection
1187
1188namespace IceStormElection
1189{
1190
1191 class ReplicaObserver;
1193 typedef ::IceInternal::Handle<::IceStormElection::ReplicaObserver> ReplicaObserverPtr;
1194 typedef ::IceInternal::ProxyHandle<::IceProxy::IceStormElection::ReplicaObserver>
1197 void _icePatchObjectPtr(ReplicaObserverPtr&, const ::Ice::ObjectPtr&);
1198
1199 class TopicManagerSync;
1201 typedef ::IceInternal::Handle<::IceStormElection::TopicManagerSync> TopicManagerSyncPtr;
1202 typedef ::IceInternal::ProxyHandle<::IceProxy::IceStormElection::TopicManagerSync>
1205 void _icePatchObjectPtr(TopicManagerSyncPtr&, const ::Ice::ObjectPtr&);
1206
1207 class Node;
1208 ::Ice::Object* upCast(::IceStormElection::Node*);
1209 typedef ::IceInternal::Handle<::IceStormElection::Node> NodePtr;
1210 typedef ::IceInternal::ProxyHandle<::IceProxy::IceStormElection::Node> NodePrx;
1212 void _icePatchObjectPtr(NodePtr&, const ::Ice::ObjectPtr&);
1213
1214} // namespace IceStormElection
1215
1216namespace IceStormElection
1217{
1218
1219 struct TopicContent
1220 {
1221 ::Ice::Identity id;
1223 };
1224
1225 typedef ::std::vector<::IceStormElection::TopicContent> TopicContentSeq;
1226
1227 class ObserverInconsistencyException : public ::Ice::UserException
1228 {
1229 public:
1233
1234 explicit ObserverInconsistencyException(const ::std::string&);
1235 virtual ~ObserverInconsistencyException() throw();
1236
1237 virtual ::std::string ice_id() const;
1239 virtual void ice_throw() const;
1240
1241 ::std::string reason;
1242
1243 protected:
1244 virtual void _writeImpl(::Ice::OutputStream*) const;
1245 virtual void _readImpl(::Ice::InputStream*);
1246 };
1247
1248 static ObserverInconsistencyException _iceS_ObserverInconsistencyException_init;
1249
1257
1258 struct NodeInfo
1259 {
1260 ::Ice::Int id;
1262 };
1263
1264 typedef ::std::vector<::IceStormElection::NodeInfo> NodeInfoSeq;
1265
1266 struct GroupInfo
1267 {
1268 ::Ice::Int id;
1270
1271 bool
1272 operator==(const GroupInfo& rhs_) const
1273 {
1274 if (this == &rhs_)
1275 {
1276 return true;
1277 }
1278 if (id != rhs_.id)
1279 {
1280 return false;
1281 }
1282 if (llu != rhs_.llu)
1283 {
1284 return false;
1285 }
1286 return true;
1287 }
1288
1289 bool
1290 operator<(const GroupInfo& rhs_) const
1291 {
1292 if (this == &rhs_)
1293 {
1294 return false;
1295 }
1296 if (id < rhs_.id)
1297 {
1298 return true;
1299 }
1300 else if (rhs_.id < id)
1301 {
1302 return false;
1303 }
1304 if (llu < rhs_.llu)
1305 {
1306 return true;
1307 }
1308 else if (rhs_.llu < llu)
1309 {
1310 return false;
1311 }
1312 return false;
1313 }
1314
1315 bool
1316 operator!=(const GroupInfo& rhs_) const
1317 {
1318 return !operator==(rhs_);
1319 }
1320
1321 bool
1322 operator<=(const GroupInfo& rhs_) const
1323 {
1324 return operator<(rhs_) || operator==(rhs_);
1325 }
1326
1327 bool
1328 operator>(const GroupInfo& rhs_) const
1329 {
1330 return !operator<(rhs_) && !operator==(rhs_);
1331 }
1332
1333 bool
1334 operator>=(const GroupInfo& rhs_) const
1335 {
1336 return !operator<(rhs_);
1337 }
1338 };
1339
1340 typedef ::std::vector<::IceStormElection::GroupInfo> GroupInfoSeq;
1341
1342 struct QueryInfo
1343 {
1344 ::Ice::Int id;
1345 ::Ice::Int coord;
1346 ::std::string group;
1347 ::Ice::ObjectPrx replica;
1350 ::Ice::Int max;
1351 };
1352
1353} // namespace IceStormElection
1354
1355namespace IceStormElection
1356{
1357
1358 class Callback_ReplicaObserver_init_Base : public virtual ::IceInternal::CallbackBase
1359 {
1360 };
1361
1362 typedef ::IceUtil::Handle<Callback_ReplicaObserver_init_Base> Callback_ReplicaObserver_initPtr;
1363
1364 class Callback_ReplicaObserver_createTopic_Base : public virtual ::IceInternal::CallbackBase
1365 {
1366 };
1367
1368 typedef ::IceUtil::Handle<Callback_ReplicaObserver_createTopic_Base>
1370
1371 class Callback_ReplicaObserver_destroyTopic_Base : public virtual ::IceInternal::CallbackBase
1372 {
1373 };
1374
1375 typedef ::IceUtil::Handle<Callback_ReplicaObserver_destroyTopic_Base>
1377
1378 class Callback_ReplicaObserver_addSubscriber_Base : public virtual ::IceInternal::CallbackBase
1379 {
1380 };
1381
1382 typedef ::IceUtil::Handle<Callback_ReplicaObserver_addSubscriber_Base>
1384
1386 public virtual ::IceInternal::CallbackBase
1387 {
1388 };
1389
1390 typedef ::IceUtil::Handle<Callback_ReplicaObserver_removeSubscriber_Base>
1392
1393 class Callback_TopicManagerSync_getContent_Base : public virtual ::IceInternal::CallbackBase
1394 {
1395 };
1396
1397 typedef ::IceUtil::Handle<Callback_TopicManagerSync_getContent_Base>
1399
1400 class Callback_Node_invitation_Base : public virtual ::IceInternal::CallbackBase
1401 {
1402 };
1403
1404 typedef ::IceUtil::Handle<Callback_Node_invitation_Base> Callback_Node_invitationPtr;
1405
1406 class Callback_Node_ready_Base : public virtual ::IceInternal::CallbackBase
1407 {
1408 };
1409
1410 typedef ::IceUtil::Handle<Callback_Node_ready_Base> Callback_Node_readyPtr;
1411
1412 class Callback_Node_accept_Base : public virtual ::IceInternal::CallbackBase
1413 {
1414 };
1415
1416 typedef ::IceUtil::Handle<Callback_Node_accept_Base> Callback_Node_acceptPtr;
1417
1418 class Callback_Node_areYouCoordinator_Base : public virtual ::IceInternal::CallbackBase
1419 {
1420 };
1421
1422 typedef ::IceUtil::Handle<Callback_Node_areYouCoordinator_Base>
1424
1425 class Callback_Node_areYouThere_Base : public virtual ::IceInternal::CallbackBase
1426 {
1427 };
1428
1429 typedef ::IceUtil::Handle<Callback_Node_areYouThere_Base> Callback_Node_areYouTherePtr;
1430
1431 class Callback_Node_sync_Base : public virtual ::IceInternal::CallbackBase
1432 {
1433 };
1434
1435 typedef ::IceUtil::Handle<Callback_Node_sync_Base> Callback_Node_syncPtr;
1436
1437 class Callback_Node_nodes_Base : public virtual ::IceInternal::CallbackBase
1438 {
1439 };
1440
1441 typedef ::IceUtil::Handle<Callback_Node_nodes_Base> Callback_Node_nodesPtr;
1442
1443 class Callback_Node_query_Base : public virtual ::IceInternal::CallbackBase
1444 {
1445 };
1446
1447 typedef ::IceUtil::Handle<Callback_Node_query_Base> Callback_Node_queryPtr;
1448
1449} // namespace IceStormElection
1450
1452{
1453
1454 class ReplicaObserver : public virtual ::Ice::Proxy<ReplicaObserver, ::IceProxy::Ice::Object>
1455 {
1456 public:
1457 void
1458 init(const ::IceStormElection::LogUpdate& iceP_llu,
1459 const ::IceStormElection::TopicContentSeq& iceP_content,
1460 const ::Ice::Context& context = ::Ice::noExplicitContext)
1461 {
1462 end_init(_iceI_begin_init(
1463 iceP_llu, iceP_content, context, ::IceInternal::dummyCallback, 0, true));
1464 }
1465
1466 ::Ice::AsyncResultPtr
1467 begin_init(const ::IceStormElection::LogUpdate& iceP_llu,
1468 const ::IceStormElection::TopicContentSeq& iceP_content,
1469 const ::Ice::Context& context = ::Ice::noExplicitContext)
1470 {
1471 return _iceI_begin_init(
1472 iceP_llu, iceP_content, context, ::IceInternal::dummyCallback, 0);
1473 }
1474
1475 ::Ice::AsyncResultPtr
1476 begin_init(const ::IceStormElection::LogUpdate& iceP_llu,
1477 const ::IceStormElection::TopicContentSeq& iceP_content,
1478 const ::Ice::CallbackPtr& del,
1479 const ::Ice::LocalObjectPtr& cookie = 0)
1480 {
1481 return _iceI_begin_init(iceP_llu, iceP_content, ::Ice::noExplicitContext, del, cookie);
1482 }
1483
1484 ::Ice::AsyncResultPtr
1485 begin_init(const ::IceStormElection::LogUpdate& iceP_llu,
1486 const ::IceStormElection::TopicContentSeq& iceP_content,
1487 const ::Ice::Context& context,
1488 const ::Ice::CallbackPtr& del,
1489 const ::Ice::LocalObjectPtr& cookie = 0)
1490 {
1491 return _iceI_begin_init(iceP_llu, iceP_content, context, del, cookie);
1492 }
1493
1494 ::Ice::AsyncResultPtr
1495 begin_init(const ::IceStormElection::LogUpdate& iceP_llu,
1496 const ::IceStormElection::TopicContentSeq& iceP_content,
1497 const ::IceStormElection::Callback_ReplicaObserver_initPtr& del,
1498 const ::Ice::LocalObjectPtr& cookie = 0)
1499 {
1500 return _iceI_begin_init(iceP_llu, iceP_content, ::Ice::noExplicitContext, del, cookie);
1501 }
1502
1503 ::Ice::AsyncResultPtr
1504 begin_init(const ::IceStormElection::LogUpdate& iceP_llu,
1505 const ::IceStormElection::TopicContentSeq& iceP_content,
1506 const ::Ice::Context& context,
1507 const ::IceStormElection::Callback_ReplicaObserver_initPtr& del,
1508 const ::Ice::LocalObjectPtr& cookie = 0)
1509 {
1510 return _iceI_begin_init(iceP_llu, iceP_content, context, del, cookie);
1511 }
1512
1513 void end_init(const ::Ice::AsyncResultPtr&);
1514
1515 private:
1516 ::Ice::AsyncResultPtr _iceI_begin_init(const ::IceStormElection::LogUpdate&,
1517 const ::IceStormElection::TopicContentSeq&,
1518 const ::Ice::Context&,
1519 const ::IceInternal::CallbackBasePtr&,
1520 const ::Ice::LocalObjectPtr& cookie = 0,
1521 bool sync = false);
1522
1523 public:
1524 void
1525 createTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1526 const ::std::string& iceP_name,
1527 const ::Ice::Context& context = ::Ice::noExplicitContext)
1528 {
1529 end_createTopic(_iceI_begin_createTopic(
1530 iceP_llu, iceP_name, context, ::IceInternal::dummyCallback, 0, true));
1531 }
1532
1533 ::Ice::AsyncResultPtr
1534 begin_createTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1535 const ::std::string& iceP_name,
1536 const ::Ice::Context& context = ::Ice::noExplicitContext)
1537 {
1538 return _iceI_begin_createTopic(
1539 iceP_llu, iceP_name, context, ::IceInternal::dummyCallback, 0);
1540 }
1541
1542 ::Ice::AsyncResultPtr
1543 begin_createTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1544 const ::std::string& iceP_name,
1545 const ::Ice::CallbackPtr& del,
1546 const ::Ice::LocalObjectPtr& cookie = 0)
1547 {
1548 return _iceI_begin_createTopic(
1549 iceP_llu, iceP_name, ::Ice::noExplicitContext, del, cookie);
1550 }
1551
1552 ::Ice::AsyncResultPtr
1553 begin_createTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1554 const ::std::string& iceP_name,
1555 const ::Ice::Context& context,
1556 const ::Ice::CallbackPtr& del,
1557 const ::Ice::LocalObjectPtr& cookie = 0)
1558 {
1559 return _iceI_begin_createTopic(iceP_llu, iceP_name, context, del, cookie);
1560 }
1561
1562 ::Ice::AsyncResultPtr
1563 begin_createTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1564 const ::std::string& iceP_name,
1565 const ::IceStormElection::Callback_ReplicaObserver_createTopicPtr& del,
1566 const ::Ice::LocalObjectPtr& cookie = 0)
1567 {
1568 return _iceI_begin_createTopic(
1569 iceP_llu, iceP_name, ::Ice::noExplicitContext, del, cookie);
1570 }
1571
1572 ::Ice::AsyncResultPtr
1573 begin_createTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1574 const ::std::string& iceP_name,
1575 const ::Ice::Context& context,
1576 const ::IceStormElection::Callback_ReplicaObserver_createTopicPtr& del,
1577 const ::Ice::LocalObjectPtr& cookie = 0)
1578 {
1579 return _iceI_begin_createTopic(iceP_llu, iceP_name, context, del, cookie);
1580 }
1581
1582 void end_createTopic(const ::Ice::AsyncResultPtr&);
1583
1584 private:
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,
1590 bool sync = false);
1591
1592 public:
1593 void
1594 destroyTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1595 const ::std::string& iceP_name,
1596 const ::Ice::Context& context = ::Ice::noExplicitContext)
1597 {
1598 end_destroyTopic(_iceI_begin_destroyTopic(
1599 iceP_llu, iceP_name, context, ::IceInternal::dummyCallback, 0, true));
1600 }
1601
1602 ::Ice::AsyncResultPtr
1603 begin_destroyTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1604 const ::std::string& iceP_name,
1605 const ::Ice::Context& context = ::Ice::noExplicitContext)
1606 {
1607 return _iceI_begin_destroyTopic(
1608 iceP_llu, iceP_name, context, ::IceInternal::dummyCallback, 0);
1609 }
1610
1611 ::Ice::AsyncResultPtr
1612 begin_destroyTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1613 const ::std::string& iceP_name,
1614 const ::Ice::CallbackPtr& del,
1615 const ::Ice::LocalObjectPtr& cookie = 0)
1616 {
1617 return _iceI_begin_destroyTopic(
1618 iceP_llu, iceP_name, ::Ice::noExplicitContext, del, cookie);
1619 }
1620
1621 ::Ice::AsyncResultPtr
1622 begin_destroyTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1623 const ::std::string& iceP_name,
1624 const ::Ice::Context& context,
1625 const ::Ice::CallbackPtr& del,
1626 const ::Ice::LocalObjectPtr& cookie = 0)
1627 {
1628 return _iceI_begin_destroyTopic(iceP_llu, iceP_name, context, del, cookie);
1629 }
1630
1631 ::Ice::AsyncResultPtr
1632 begin_destroyTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1633 const ::std::string& iceP_name,
1634 const ::IceStormElection::Callback_ReplicaObserver_destroyTopicPtr& del,
1635 const ::Ice::LocalObjectPtr& cookie = 0)
1636 {
1637 return _iceI_begin_destroyTopic(
1638 iceP_llu, iceP_name, ::Ice::noExplicitContext, del, cookie);
1639 }
1640
1641 ::Ice::AsyncResultPtr
1642 begin_destroyTopic(const ::IceStormElection::LogUpdate& iceP_llu,
1643 const ::std::string& iceP_name,
1644 const ::Ice::Context& context,
1645 const ::IceStormElection::Callback_ReplicaObserver_destroyTopicPtr& del,
1646 const ::Ice::LocalObjectPtr& cookie = 0)
1647 {
1648 return _iceI_begin_destroyTopic(iceP_llu, iceP_name, context, del, cookie);
1649 }
1650
1651 void end_destroyTopic(const ::Ice::AsyncResultPtr&);
1652
1653 private:
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,
1659 bool sync = false);
1660
1661 public:
1662 void
1663 addSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
1664 const ::std::string& iceP_topic,
1665 const ::IceStorm::SubscriberRecord& iceP_record,
1666 const ::Ice::Context& context = ::Ice::noExplicitContext)
1667 {
1668 end_addSubscriber(_iceI_begin_addSubscriber(
1669 iceP_llu, iceP_topic, iceP_record, context, ::IceInternal::dummyCallback, 0, true));
1670 }
1671
1672 ::Ice::AsyncResultPtr
1673 begin_addSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
1674 const ::std::string& iceP_topic,
1675 const ::IceStorm::SubscriberRecord& iceP_record,
1676 const ::Ice::Context& context = ::Ice::noExplicitContext)
1677 {
1678 return _iceI_begin_addSubscriber(
1679 iceP_llu, iceP_topic, iceP_record, context, ::IceInternal::dummyCallback, 0);
1680 }
1681
1682 ::Ice::AsyncResultPtr
1683 begin_addSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
1684 const ::std::string& iceP_topic,
1685 const ::IceStorm::SubscriberRecord& iceP_record,
1686 const ::Ice::CallbackPtr& del,
1687 const ::Ice::LocalObjectPtr& cookie = 0)
1688 {
1689 return _iceI_begin_addSubscriber(
1690 iceP_llu, iceP_topic, iceP_record, ::Ice::noExplicitContext, del, cookie);
1691 }
1692
1693 ::Ice::AsyncResultPtr
1694 begin_addSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
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)
1700 {
1701 return _iceI_begin_addSubscriber(
1702 iceP_llu, iceP_topic, iceP_record, context, del, cookie);
1703 }
1704
1705 ::Ice::AsyncResultPtr
1707 const ::IceStormElection::LogUpdate& iceP_llu,
1708 const ::std::string& iceP_topic,
1709 const ::IceStorm::SubscriberRecord& iceP_record,
1710 const ::IceStormElection::Callback_ReplicaObserver_addSubscriberPtr& del,
1711 const ::Ice::LocalObjectPtr& cookie = 0)
1712 {
1713 return _iceI_begin_addSubscriber(
1714 iceP_llu, iceP_topic, iceP_record, ::Ice::noExplicitContext, del, cookie);
1715 }
1716
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,
1723 const ::IceStormElection::Callback_ReplicaObserver_addSubscriberPtr& del,
1724 const ::Ice::LocalObjectPtr& cookie = 0)
1725 {
1726 return _iceI_begin_addSubscriber(
1727 iceP_llu, iceP_topic, iceP_record, context, del, cookie);
1728 }
1729
1730 void end_addSubscriber(const ::Ice::AsyncResultPtr&);
1731
1732 private:
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,
1739 bool sync = false);
1740
1741 public:
1742 void
1743 removeSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
1744 const ::std::string& iceP_topic,
1745 const ::Ice::IdentitySeq& iceP_subscribers,
1746 const ::Ice::Context& context = ::Ice::noExplicitContext)
1747 {
1748 end_removeSubscriber(_iceI_begin_removeSubscriber(iceP_llu,
1749 iceP_topic,
1750 iceP_subscribers,
1751 context,
1752 ::IceInternal::dummyCallback,
1753 0,
1754 true));
1755 }
1756
1757 ::Ice::AsyncResultPtr
1758 begin_removeSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
1759 const ::std::string& iceP_topic,
1760 const ::Ice::IdentitySeq& iceP_subscribers,
1761 const ::Ice::Context& context = ::Ice::noExplicitContext)
1762 {
1763 return _iceI_begin_removeSubscriber(
1764 iceP_llu, iceP_topic, iceP_subscribers, context, ::IceInternal::dummyCallback, 0);
1765 }
1766
1767 ::Ice::AsyncResultPtr
1768 begin_removeSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
1769 const ::std::string& iceP_topic,
1770 const ::Ice::IdentitySeq& iceP_subscribers,
1771 const ::Ice::CallbackPtr& del,
1772 const ::Ice::LocalObjectPtr& cookie = 0)
1773 {
1774 return _iceI_begin_removeSubscriber(
1775 iceP_llu, iceP_topic, iceP_subscribers, ::Ice::noExplicitContext, del, cookie);
1776 }
1777
1778 ::Ice::AsyncResultPtr
1779 begin_removeSubscriber(const ::IceStormElection::LogUpdate& iceP_llu,
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)
1785 {
1786 return _iceI_begin_removeSubscriber(
1787 iceP_llu, iceP_topic, iceP_subscribers, context, del, cookie);
1788 }
1789
1790 ::Ice::AsyncResultPtr
1792 const ::IceStormElection::LogUpdate& iceP_llu,
1793 const ::std::string& iceP_topic,
1794 const ::Ice::IdentitySeq& iceP_subscribers,
1795 const ::IceStormElection::Callback_ReplicaObserver_removeSubscriberPtr& del,
1796 const ::Ice::LocalObjectPtr& cookie = 0)
1797 {
1798 return _iceI_begin_removeSubscriber(
1799 iceP_llu, iceP_topic, iceP_subscribers, ::Ice::noExplicitContext, del, cookie);
1800 }
1801
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,
1808 const ::IceStormElection::Callback_ReplicaObserver_removeSubscriberPtr& del,
1809 const ::Ice::LocalObjectPtr& cookie = 0)
1810 {
1811 return _iceI_begin_removeSubscriber(
1812 iceP_llu, iceP_topic, iceP_subscribers, context, del, cookie);
1813 }
1814
1815 void end_removeSubscriber(const ::Ice::AsyncResultPtr&);
1816
1817 private:
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,
1824 bool sync = false);
1825
1826 public:
1827 static const ::std::string& ice_staticId();
1828
1829 protected:
1830 virtual ::IceProxy::Ice::Object* _newInstance() const;
1831 };
1832
1833 class TopicManagerSync : public virtual ::Ice::Proxy<TopicManagerSync, ::IceProxy::Ice::Object>
1834 {
1835 public:
1836 void
1839 const ::Ice::Context& context = ::Ice::noExplicitContext)
1840 {
1841 end_getContent(iceP_llu,
1842 iceP_content,
1843 _iceI_begin_getContent(context, ::IceInternal::dummyCallback, 0, true));
1844 }
1845
1846 ::Ice::AsyncResultPtr
1847 begin_getContent(const ::Ice::Context& context = ::Ice::noExplicitContext)
1848 {
1849 return _iceI_begin_getContent(context, ::IceInternal::dummyCallback, 0);
1850 }
1851
1852 ::Ice::AsyncResultPtr
1853 begin_getContent(const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0)
1854 {
1855 return _iceI_begin_getContent(::Ice::noExplicitContext, del, cookie);
1856 }
1857
1858 ::Ice::AsyncResultPtr
1859 begin_getContent(const ::Ice::Context& context,
1860 const ::Ice::CallbackPtr& del,
1861 const ::Ice::LocalObjectPtr& cookie = 0)
1862 {
1863 return _iceI_begin_getContent(context, del, cookie);
1864 }
1865
1866 ::Ice::AsyncResultPtr
1867 begin_getContent(const ::IceStormElection::Callback_TopicManagerSync_getContentPtr& del,
1868 const ::Ice::LocalObjectPtr& cookie = 0)
1869 {
1870 return _iceI_begin_getContent(::Ice::noExplicitContext, del, cookie);
1871 }
1872
1873 ::Ice::AsyncResultPtr
1874 begin_getContent(const ::Ice::Context& context,
1875 const ::IceStormElection::Callback_TopicManagerSync_getContentPtr& del,
1876 const ::Ice::LocalObjectPtr& cookie = 0)
1877 {
1878 return _iceI_begin_getContent(context, del, cookie);
1879 }
1880
1881 void end_getContent(::IceStormElection::LogUpdate& iceP_llu,
1883 const ::Ice::AsyncResultPtr&);
1884
1885 private:
1886 ::Ice::AsyncResultPtr _iceI_begin_getContent(const ::Ice::Context&,
1887 const ::IceInternal::CallbackBasePtr&,
1888 const ::Ice::LocalObjectPtr& cookie = 0,
1889 bool sync = false);
1890
1891 public:
1892 static const ::std::string& ice_staticId();
1893
1894 protected:
1895 virtual ::IceProxy::Ice::Object* _newInstance() const;
1896 };
1897
1898 class Node : public virtual ::Ice::Proxy<Node, ::IceProxy::Ice::Object>
1899 {
1900 public:
1901 void
1902 invitation(::Ice::Int iceP_j,
1903 const ::std::string& iceP_gn,
1904 const ::Ice::Context& context = ::Ice::noExplicitContext)
1905 {
1906 end_invitation(_iceI_begin_invitation(
1907 iceP_j, iceP_gn, context, ::IceInternal::dummyCallback, 0, true));
1908 }
1909
1910 ::Ice::AsyncResultPtr
1911 begin_invitation(::Ice::Int iceP_j,
1912 const ::std::string& iceP_gn,
1913 const ::Ice::Context& context = ::Ice::noExplicitContext)
1914 {
1915 return _iceI_begin_invitation(
1916 iceP_j, iceP_gn, context, ::IceInternal::dummyCallback, 0);
1917 }
1918
1919 ::Ice::AsyncResultPtr
1920 begin_invitation(::Ice::Int iceP_j,
1921 const ::std::string& iceP_gn,
1922 const ::Ice::CallbackPtr& del,
1923 const ::Ice::LocalObjectPtr& cookie = 0)
1924 {
1925 return _iceI_begin_invitation(iceP_j, iceP_gn, ::Ice::noExplicitContext, del, cookie);
1926 }
1927
1928 ::Ice::AsyncResultPtr
1929 begin_invitation(::Ice::Int iceP_j,
1930 const ::std::string& iceP_gn,
1931 const ::Ice::Context& context,
1932 const ::Ice::CallbackPtr& del,
1933 const ::Ice::LocalObjectPtr& cookie = 0)
1934 {
1935 return _iceI_begin_invitation(iceP_j, iceP_gn, context, del, cookie);
1936 }
1937
1938 ::Ice::AsyncResultPtr
1939 begin_invitation(::Ice::Int iceP_j,
1940 const ::std::string& iceP_gn,
1941 const ::IceStormElection::Callback_Node_invitationPtr& del,
1942 const ::Ice::LocalObjectPtr& cookie = 0)
1943 {
1944 return _iceI_begin_invitation(iceP_j, iceP_gn, ::Ice::noExplicitContext, del, cookie);
1945 }
1946
1947 ::Ice::AsyncResultPtr
1948 begin_invitation(::Ice::Int iceP_j,
1949 const ::std::string& iceP_gn,
1950 const ::Ice::Context& context,
1951 const ::IceStormElection::Callback_Node_invitationPtr& del,
1952 const ::Ice::LocalObjectPtr& cookie = 0)
1953 {
1954 return _iceI_begin_invitation(iceP_j, iceP_gn, context, del, cookie);
1955 }
1956
1957 void end_invitation(const ::Ice::AsyncResultPtr&);
1958
1959 private:
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,
1965 bool sync = false);
1966
1967 public:
1968 void
1969 ready(::Ice::Int iceP_j,
1970 const ::std::string& iceP_gn,
1971 const ::Ice::ObjectPrx& iceP_coordinator,
1972 ::Ice::Int iceP_max,
1973 ::Ice::Long iceP_generation,
1974 const ::Ice::Context& context = ::Ice::noExplicitContext)
1975 {
1976 end_ready(_iceI_begin_ready(iceP_j,
1977 iceP_gn,
1978 iceP_coordinator,
1979 iceP_max,
1980 iceP_generation,
1981 context,
1982 ::IceInternal::dummyCallback,
1983 0,
1984 true));
1985 }
1986
1987 ::Ice::AsyncResultPtr
1988 begin_ready(::Ice::Int iceP_j,
1989 const ::std::string& iceP_gn,
1990 const ::Ice::ObjectPrx& iceP_coordinator,
1991 ::Ice::Int iceP_max,
1992 ::Ice::Long iceP_generation,
1993 const ::Ice::Context& context = ::Ice::noExplicitContext)
1994 {
1995 return _iceI_begin_ready(iceP_j,
1996 iceP_gn,
1997 iceP_coordinator,
1998 iceP_max,
1999 iceP_generation,
2000 context,
2001 ::IceInternal::dummyCallback,
2002 0);
2003 }
2004
2005 ::Ice::AsyncResultPtr
2006 begin_ready(::Ice::Int iceP_j,
2007 const ::std::string& iceP_gn,
2008 const ::Ice::ObjectPrx& iceP_coordinator,
2009 ::Ice::Int iceP_max,
2010 ::Ice::Long iceP_generation,
2011 const ::Ice::CallbackPtr& del,
2012 const ::Ice::LocalObjectPtr& cookie = 0)
2013 {
2014 return _iceI_begin_ready(iceP_j,
2015 iceP_gn,
2016 iceP_coordinator,
2017 iceP_max,
2018 iceP_generation,
2019 ::Ice::noExplicitContext,
2020 del,
2021 cookie);
2022 }
2023
2024 ::Ice::AsyncResultPtr
2025 begin_ready(::Ice::Int iceP_j,
2026 const ::std::string& iceP_gn,
2027 const ::Ice::ObjectPrx& iceP_coordinator,
2028 ::Ice::Int iceP_max,
2029 ::Ice::Long iceP_generation,
2030 const ::Ice::Context& context,
2031 const ::Ice::CallbackPtr& del,
2032 const ::Ice::LocalObjectPtr& cookie = 0)
2033 {
2034 return _iceI_begin_ready(
2035 iceP_j, iceP_gn, iceP_coordinator, iceP_max, iceP_generation, context, del, cookie);
2036 }
2037
2038 ::Ice::AsyncResultPtr
2039 begin_ready(::Ice::Int iceP_j,
2040 const ::std::string& iceP_gn,
2041 const ::Ice::ObjectPrx& iceP_coordinator,
2042 ::Ice::Int iceP_max,
2043 ::Ice::Long iceP_generation,
2044 const ::IceStormElection::Callback_Node_readyPtr& del,
2045 const ::Ice::LocalObjectPtr& cookie = 0)
2046 {
2047 return _iceI_begin_ready(iceP_j,
2048 iceP_gn,
2049 iceP_coordinator,
2050 iceP_max,
2051 iceP_generation,
2052 ::Ice::noExplicitContext,
2053 del,
2054 cookie);
2055 }
2056
2057 ::Ice::AsyncResultPtr
2058 begin_ready(::Ice::Int iceP_j,
2059 const ::std::string& iceP_gn,
2060 const ::Ice::ObjectPrx& iceP_coordinator,
2061 ::Ice::Int iceP_max,
2062 ::Ice::Long iceP_generation,
2063 const ::Ice::Context& context,
2064 const ::IceStormElection::Callback_Node_readyPtr& del,
2065 const ::Ice::LocalObjectPtr& cookie = 0)
2066 {
2067 return _iceI_begin_ready(
2068 iceP_j, iceP_gn, iceP_coordinator, iceP_max, iceP_generation, context, del, cookie);
2069 }
2070
2071 void end_ready(const ::Ice::AsyncResultPtr&);
2072
2073 private:
2074 ::Ice::AsyncResultPtr _iceI_begin_ready(::Ice::Int,
2075 const ::std::string&,
2076 const ::Ice::ObjectPrx&,
2077 ::Ice::Int,
2078 ::Ice::Long,
2079 const ::Ice::Context&,
2080 const ::IceInternal::CallbackBasePtr&,
2081 const ::Ice::LocalObjectPtr& cookie = 0,
2082 bool sync = false);
2083
2084 public:
2085 void
2086 accept(::Ice::Int iceP_j,
2087 const ::std::string& iceP_gn,
2088 const ::Ice::IntSeq& iceP_forwardedInvites,
2089 const ::Ice::ObjectPrx& iceP_observer,
2090 const ::IceStormElection::LogUpdate& iceP_llu,
2091 ::Ice::Int iceP_max,
2092 const ::Ice::Context& context = ::Ice::noExplicitContext)
2093 {
2094 end_accept(_iceI_begin_accept(iceP_j,
2095 iceP_gn,
2096 iceP_forwardedInvites,
2097 iceP_observer,
2098 iceP_llu,
2099 iceP_max,
2100 context,
2101 ::IceInternal::dummyCallback,
2102 0,
2103 true));
2104 }
2105
2106 ::Ice::AsyncResultPtr
2107 begin_accept(::Ice::Int iceP_j,
2108 const ::std::string& iceP_gn,
2109 const ::Ice::IntSeq& iceP_forwardedInvites,
2110 const ::Ice::ObjectPrx& iceP_observer,
2111 const ::IceStormElection::LogUpdate& iceP_llu,
2112 ::Ice::Int iceP_max,
2113 const ::Ice::Context& context = ::Ice::noExplicitContext)
2114 {
2115 return _iceI_begin_accept(iceP_j,
2116 iceP_gn,
2117 iceP_forwardedInvites,
2118 iceP_observer,
2119 iceP_llu,
2120 iceP_max,
2121 context,
2122 ::IceInternal::dummyCallback,
2123 0);
2124 }
2125
2126 ::Ice::AsyncResultPtr
2127 begin_accept(::Ice::Int iceP_j,
2128 const ::std::string& iceP_gn,
2129 const ::Ice::IntSeq& iceP_forwardedInvites,
2130 const ::Ice::ObjectPrx& iceP_observer,
2131 const ::IceStormElection::LogUpdate& iceP_llu,
2132 ::Ice::Int iceP_max,
2133 const ::Ice::CallbackPtr& del,
2134 const ::Ice::LocalObjectPtr& cookie = 0)
2135 {
2136 return _iceI_begin_accept(iceP_j,
2137 iceP_gn,
2138 iceP_forwardedInvites,
2139 iceP_observer,
2140 iceP_llu,
2141 iceP_max,
2142 ::Ice::noExplicitContext,
2143 del,
2144 cookie);
2145 }
2146
2147 ::Ice::AsyncResultPtr
2148 begin_accept(::Ice::Int iceP_j,
2149 const ::std::string& iceP_gn,
2150 const ::Ice::IntSeq& iceP_forwardedInvites,
2151 const ::Ice::ObjectPrx& iceP_observer,
2152 const ::IceStormElection::LogUpdate& iceP_llu,
2153 ::Ice::Int iceP_max,
2154 const ::Ice::Context& context,
2155 const ::Ice::CallbackPtr& del,
2156 const ::Ice::LocalObjectPtr& cookie = 0)
2157 {
2158 return _iceI_begin_accept(iceP_j,
2159 iceP_gn,
2160 iceP_forwardedInvites,
2161 iceP_observer,
2162 iceP_llu,
2163 iceP_max,
2164 context,
2165 del,
2166 cookie);
2167 }
2168
2169 ::Ice::AsyncResultPtr
2170 begin_accept(::Ice::Int iceP_j,
2171 const ::std::string& iceP_gn,
2172 const ::Ice::IntSeq& iceP_forwardedInvites,
2173 const ::Ice::ObjectPrx& iceP_observer,
2174 const ::IceStormElection::LogUpdate& iceP_llu,
2175 ::Ice::Int iceP_max,
2176 const ::IceStormElection::Callback_Node_acceptPtr& del,
2177 const ::Ice::LocalObjectPtr& cookie = 0)
2178 {
2179 return _iceI_begin_accept(iceP_j,
2180 iceP_gn,
2181 iceP_forwardedInvites,
2182 iceP_observer,
2183 iceP_llu,
2184 iceP_max,
2185 ::Ice::noExplicitContext,
2186 del,
2187 cookie);
2188 }
2189
2190 ::Ice::AsyncResultPtr
2191 begin_accept(::Ice::Int iceP_j,
2192 const ::std::string& iceP_gn,
2193 const ::Ice::IntSeq& iceP_forwardedInvites,
2194 const ::Ice::ObjectPrx& iceP_observer,
2195 const ::IceStormElection::LogUpdate& iceP_llu,
2196 ::Ice::Int iceP_max,
2197 const ::Ice::Context& context,
2198 const ::IceStormElection::Callback_Node_acceptPtr& del,
2199 const ::Ice::LocalObjectPtr& cookie = 0)
2200 {
2201 return _iceI_begin_accept(iceP_j,
2202 iceP_gn,
2203 iceP_forwardedInvites,
2204 iceP_observer,
2205 iceP_llu,
2206 iceP_max,
2207 context,
2208 del,
2209 cookie);
2210 }
2211
2212 void end_accept(const ::Ice::AsyncResultPtr&);
2213
2214 private:
2215 ::Ice::AsyncResultPtr _iceI_begin_accept(::Ice::Int,
2216 const ::std::string&,
2217 const ::Ice::IntSeq&,
2218 const ::Ice::ObjectPrx&,
2219 const ::IceStormElection::LogUpdate&,
2220 ::Ice::Int,
2221 const ::Ice::Context&,
2222 const ::IceInternal::CallbackBasePtr&,
2223 const ::Ice::LocalObjectPtr& cookie = 0,
2224 bool sync = false);
2225
2226 public:
2227 bool
2228 areYouCoordinator(const ::Ice::Context& context = ::Ice::noExplicitContext)
2229 {
2230 return end_areYouCoordinator(
2231 _iceI_begin_areYouCoordinator(context, ::IceInternal::dummyCallback, 0, true));
2232 }
2233
2234 ::Ice::AsyncResultPtr
2235 begin_areYouCoordinator(const ::Ice::Context& context = ::Ice::noExplicitContext)
2236 {
2237 return _iceI_begin_areYouCoordinator(context, ::IceInternal::dummyCallback, 0);
2238 }
2239
2240 ::Ice::AsyncResultPtr
2241 begin_areYouCoordinator(const ::Ice::CallbackPtr& del,
2242 const ::Ice::LocalObjectPtr& cookie = 0)
2243 {
2244 return _iceI_begin_areYouCoordinator(::Ice::noExplicitContext, del, cookie);
2245 }
2246
2247 ::Ice::AsyncResultPtr
2248 begin_areYouCoordinator(const ::Ice::Context& context,
2249 const ::Ice::CallbackPtr& del,
2250 const ::Ice::LocalObjectPtr& cookie = 0)
2251 {
2252 return _iceI_begin_areYouCoordinator(context, del, cookie);
2253 }
2254
2255 ::Ice::AsyncResultPtr
2256 begin_areYouCoordinator(const ::IceStormElection::Callback_Node_areYouCoordinatorPtr& del,
2257 const ::Ice::LocalObjectPtr& cookie = 0)
2258 {
2259 return _iceI_begin_areYouCoordinator(::Ice::noExplicitContext, del, cookie);
2260 }
2261
2262 ::Ice::AsyncResultPtr
2263 begin_areYouCoordinator(const ::Ice::Context& context,
2264 const ::IceStormElection::Callback_Node_areYouCoordinatorPtr& del,
2265 const ::Ice::LocalObjectPtr& cookie = 0)
2266 {
2267 return _iceI_begin_areYouCoordinator(context, del, cookie);
2268 }
2269
2270 bool end_areYouCoordinator(const ::Ice::AsyncResultPtr&);
2271
2272 private:
2273 ::Ice::AsyncResultPtr _iceI_begin_areYouCoordinator(const ::Ice::Context&,
2274 const ::IceInternal::CallbackBasePtr&,
2275 const ::Ice::LocalObjectPtr& cookie = 0,
2276 bool sync = false);
2277
2278 public:
2279 bool
2280 areYouThere(const ::std::string& iceP_gn,
2281 ::Ice::Int iceP_j,
2282 const ::Ice::Context& context = ::Ice::noExplicitContext)
2283 {
2284 return end_areYouThere(_iceI_begin_areYouThere(
2285 iceP_gn, iceP_j, context, ::IceInternal::dummyCallback, 0, true));
2286 }
2287
2288 ::Ice::AsyncResultPtr
2289 begin_areYouThere(const ::std::string& iceP_gn,
2290 ::Ice::Int iceP_j,
2291 const ::Ice::Context& context = ::Ice::noExplicitContext)
2292 {
2293 return _iceI_begin_areYouThere(
2294 iceP_gn, iceP_j, context, ::IceInternal::dummyCallback, 0);
2295 }
2296
2297 ::Ice::AsyncResultPtr
2298 begin_areYouThere(const ::std::string& iceP_gn,
2299 ::Ice::Int iceP_j,
2300 const ::Ice::CallbackPtr& del,
2301 const ::Ice::LocalObjectPtr& cookie = 0)
2302 {
2303 return _iceI_begin_areYouThere(iceP_gn, iceP_j, ::Ice::noExplicitContext, del, cookie);
2304 }
2305
2306 ::Ice::AsyncResultPtr
2307 begin_areYouThere(const ::std::string& iceP_gn,
2308 ::Ice::Int iceP_j,
2309 const ::Ice::Context& context,
2310 const ::Ice::CallbackPtr& del,
2311 const ::Ice::LocalObjectPtr& cookie = 0)
2312 {
2313 return _iceI_begin_areYouThere(iceP_gn, iceP_j, context, del, cookie);
2314 }
2315
2316 ::Ice::AsyncResultPtr
2317 begin_areYouThere(const ::std::string& iceP_gn,
2318 ::Ice::Int iceP_j,
2319 const ::IceStormElection::Callback_Node_areYouTherePtr& del,
2320 const ::Ice::LocalObjectPtr& cookie = 0)
2321 {
2322 return _iceI_begin_areYouThere(iceP_gn, iceP_j, ::Ice::noExplicitContext, del, cookie);
2323 }
2324
2325 ::Ice::AsyncResultPtr
2326 begin_areYouThere(const ::std::string& iceP_gn,
2327 ::Ice::Int iceP_j,
2328 const ::Ice::Context& context,
2329 const ::IceStormElection::Callback_Node_areYouTherePtr& del,
2330 const ::Ice::LocalObjectPtr& cookie = 0)
2331 {
2332 return _iceI_begin_areYouThere(iceP_gn, iceP_j, context, del, cookie);
2333 }
2334
2335 bool end_areYouThere(const ::Ice::AsyncResultPtr&);
2336
2337 private:
2338 ::Ice::AsyncResultPtr _iceI_begin_areYouThere(const ::std::string&,
2339 ::Ice::Int,
2340 const ::Ice::Context&,
2341 const ::IceInternal::CallbackBasePtr&,
2342 const ::Ice::LocalObjectPtr& cookie = 0,
2343 bool sync = false);
2344
2345 public:
2346 ::Ice::ObjectPrx
2347 sync(const ::Ice::Context& context = ::Ice::noExplicitContext)
2348 {
2349 return end_sync(_iceI_begin_sync(context, ::IceInternal::dummyCallback, 0, true));
2350 }
2351
2352 ::Ice::AsyncResultPtr
2353 begin_sync(const ::Ice::Context& context = ::Ice::noExplicitContext)
2354 {
2355 return _iceI_begin_sync(context, ::IceInternal::dummyCallback, 0);
2356 }
2357
2358 ::Ice::AsyncResultPtr
2359 begin_sync(const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0)
2360 {
2361 return _iceI_begin_sync(::Ice::noExplicitContext, del, cookie);
2362 }
2363
2364 ::Ice::AsyncResultPtr
2365 begin_sync(const ::Ice::Context& context,
2366 const ::Ice::CallbackPtr& del,
2367 const ::Ice::LocalObjectPtr& cookie = 0)
2368 {
2369 return _iceI_begin_sync(context, del, cookie);
2370 }
2371
2372 ::Ice::AsyncResultPtr
2373 begin_sync(const ::IceStormElection::Callback_Node_syncPtr& del,
2374 const ::Ice::LocalObjectPtr& cookie = 0)
2375 {
2376 return _iceI_begin_sync(::Ice::noExplicitContext, del, cookie);
2377 }
2378
2379 ::Ice::AsyncResultPtr
2380 begin_sync(const ::Ice::Context& context,
2381 const ::IceStormElection::Callback_Node_syncPtr& del,
2382 const ::Ice::LocalObjectPtr& cookie = 0)
2383 {
2384 return _iceI_begin_sync(context, del, cookie);
2385 }
2386
2387 ::Ice::ObjectPrx end_sync(const ::Ice::AsyncResultPtr&);
2388
2389 private:
2390 ::Ice::AsyncResultPtr _iceI_begin_sync(const ::Ice::Context&,
2391 const ::IceInternal::CallbackBasePtr&,
2392 const ::Ice::LocalObjectPtr& cookie = 0,
2393 bool sync = false);
2394
2395 public:
2397 nodes(const ::Ice::Context& context = ::Ice::noExplicitContext)
2398 {
2399 return end_nodes(_iceI_begin_nodes(context, ::IceInternal::dummyCallback, 0, true));
2400 }
2401
2402 ::Ice::AsyncResultPtr
2403 begin_nodes(const ::Ice::Context& context = ::Ice::noExplicitContext)
2404 {
2405 return _iceI_begin_nodes(context, ::IceInternal::dummyCallback, 0);
2406 }
2407
2408 ::Ice::AsyncResultPtr
2409 begin_nodes(const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0)
2410 {
2411 return _iceI_begin_nodes(::Ice::noExplicitContext, del, cookie);
2412 }
2413
2414 ::Ice::AsyncResultPtr
2415 begin_nodes(const ::Ice::Context& context,
2416 const ::Ice::CallbackPtr& del,
2417 const ::Ice::LocalObjectPtr& cookie = 0)
2418 {
2419 return _iceI_begin_nodes(context, del, cookie);
2420 }
2421
2422 ::Ice::AsyncResultPtr
2423 begin_nodes(const ::IceStormElection::Callback_Node_nodesPtr& del,
2424 const ::Ice::LocalObjectPtr& cookie = 0)
2425 {
2426 return _iceI_begin_nodes(::Ice::noExplicitContext, del, cookie);
2427 }
2428
2429 ::Ice::AsyncResultPtr
2430 begin_nodes(const ::Ice::Context& context,
2431 const ::IceStormElection::Callback_Node_nodesPtr& del,
2432 const ::Ice::LocalObjectPtr& cookie = 0)
2433 {
2434 return _iceI_begin_nodes(context, del, cookie);
2435 }
2436
2437 ::IceStormElection::NodeInfoSeq end_nodes(const ::Ice::AsyncResultPtr&);
2438
2439 private:
2440 ::Ice::AsyncResultPtr _iceI_begin_nodes(const ::Ice::Context&,
2441 const ::IceInternal::CallbackBasePtr&,
2442 const ::Ice::LocalObjectPtr& cookie = 0,
2443 bool sync = false);
2444
2445 public:
2447 query(const ::Ice::Context& context = ::Ice::noExplicitContext)
2448 {
2449 return end_query(_iceI_begin_query(context, ::IceInternal::dummyCallback, 0, true));
2450 }
2451
2452 ::Ice::AsyncResultPtr
2453 begin_query(const ::Ice::Context& context = ::Ice::noExplicitContext)
2454 {
2455 return _iceI_begin_query(context, ::IceInternal::dummyCallback, 0);
2456 }
2457
2458 ::Ice::AsyncResultPtr
2459 begin_query(const ::Ice::CallbackPtr& del, const ::Ice::LocalObjectPtr& cookie = 0)
2460 {
2461 return _iceI_begin_query(::Ice::noExplicitContext, del, cookie);
2462 }
2463
2464 ::Ice::AsyncResultPtr
2465 begin_query(const ::Ice::Context& context,
2466 const ::Ice::CallbackPtr& del,
2467 const ::Ice::LocalObjectPtr& cookie = 0)
2468 {
2469 return _iceI_begin_query(context, del, cookie);
2470 }
2471
2472 ::Ice::AsyncResultPtr
2473 begin_query(const ::IceStormElection::Callback_Node_queryPtr& del,
2474 const ::Ice::LocalObjectPtr& cookie = 0)
2475 {
2476 return _iceI_begin_query(::Ice::noExplicitContext, del, cookie);
2477 }
2478
2479 ::Ice::AsyncResultPtr
2480 begin_query(const ::Ice::Context& context,
2481 const ::IceStormElection::Callback_Node_queryPtr& del,
2482 const ::Ice::LocalObjectPtr& cookie = 0)
2483 {
2484 return _iceI_begin_query(context, del, cookie);
2485 }
2486
2487 ::IceStormElection::QueryInfo end_query(const ::Ice::AsyncResultPtr&);
2488
2489 private:
2490 ::Ice::AsyncResultPtr _iceI_begin_query(const ::Ice::Context&,
2491 const ::IceInternal::CallbackBasePtr&,
2492 const ::Ice::LocalObjectPtr& cookie = 0,
2493 bool sync = false);
2494
2495 public:
2496 static const ::std::string& ice_staticId();
2497
2498 protected:
2499 virtual ::IceProxy::Ice::Object* _newInstance() const;
2500 };
2501
2502} // namespace IceProxy::IceStormElection
2503
2504namespace IceStormElection
2505{
2506
2507 class ReplicaObserver : public virtual ::Ice::Object
2508 {
2509 public:
2512
2513 virtual ~ReplicaObserver();
2514
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;
2520
2521 static const ::std::string& ice_staticId();
2522
2523 virtual void init(const ::IceStormElection::LogUpdate&,
2524 const ::IceStormElection::TopicContentSeq&,
2525 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2526 bool _iceD_init(::IceInternal::Incoming&, const ::Ice::Current&);
2527
2528 virtual void createTopic(const ::IceStormElection::LogUpdate&,
2529 const ::std::string&,
2530 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2531 bool _iceD_createTopic(::IceInternal::Incoming&, const ::Ice::Current&);
2532
2533 virtual void destroyTopic(const ::IceStormElection::LogUpdate&,
2534 const ::std::string&,
2535 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2536 bool _iceD_destroyTopic(::IceInternal::Incoming&, const ::Ice::Current&);
2537
2538 virtual void addSubscriber(const ::IceStormElection::LogUpdate&,
2539 const ::std::string&,
2540 const ::IceStorm::SubscriberRecord&,
2541 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2542 bool _iceD_addSubscriber(::IceInternal::Incoming&, const ::Ice::Current&);
2543
2544 virtual void removeSubscriber(const ::IceStormElection::LogUpdate&,
2545 const ::std::string&,
2546 const ::Ice::IdentitySeq&,
2547 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2548 bool _iceD_removeSubscriber(::IceInternal::Incoming&, const ::Ice::Current&);
2549
2550 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&);
2551
2552 protected:
2553 virtual void _iceWriteImpl(::Ice::OutputStream*) const;
2554 virtual void _iceReadImpl(::Ice::InputStream*);
2555 };
2556
2557 inline bool
2559 {
2560 return static_cast<const ::Ice::Object&>(lhs) == static_cast<const ::Ice::Object&>(rhs);
2561 }
2562
2563 inline bool
2564 operator<(const ReplicaObserver& lhs, const ReplicaObserver& rhs)
2565 {
2566 return static_cast<const ::Ice::Object&>(lhs) < static_cast<const ::Ice::Object&>(rhs);
2567 }
2568
2569 class TopicManagerSync : public virtual ::Ice::Object
2570 {
2571 public:
2574
2575 virtual ~TopicManagerSync();
2576
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;
2582
2583 static const ::std::string& ice_staticId();
2584
2587 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2588 bool _iceD_getContent(::IceInternal::Incoming&, const ::Ice::Current&);
2589
2590 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&);
2591
2592 protected:
2593 virtual void _iceWriteImpl(::Ice::OutputStream*) const;
2594 virtual void _iceReadImpl(::Ice::InputStream*);
2595 };
2596
2597 inline bool
2599 {
2600 return static_cast<const ::Ice::Object&>(lhs) == static_cast<const ::Ice::Object&>(rhs);
2601 }
2602
2603 inline bool
2604 operator<(const TopicManagerSync& lhs, const TopicManagerSync& rhs)
2605 {
2606 return static_cast<const ::Ice::Object&>(lhs) < static_cast<const ::Ice::Object&>(rhs);
2607 }
2608
2609 class Node : public virtual ::Ice::Object
2610 {
2611 public:
2614
2615 virtual ~Node();
2616
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;
2622
2623 static const ::std::string& ice_staticId();
2624
2625 virtual void invitation(::Ice::Int,
2626 const ::std::string&,
2627 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2628 bool _iceD_invitation(::IceInternal::Incoming&, const ::Ice::Current&);
2629
2630 virtual void ready(::Ice::Int,
2631 const ::std::string&,
2632 const ::Ice::ObjectPrx&,
2633 ::Ice::Int,
2634 ::Ice::Long,
2635 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2636 bool _iceD_ready(::IceInternal::Incoming&, const ::Ice::Current&);
2637
2638 virtual void accept(::Ice::Int,
2639 const ::std::string&,
2640 const ::Ice::IntSeq&,
2641 const ::Ice::ObjectPrx&,
2642 const ::IceStormElection::LogUpdate&,
2643 ::Ice::Int,
2644 const ::Ice::Current& = ::Ice::emptyCurrent) = 0;
2645 bool _iceD_accept(::IceInternal::Incoming&, const ::Ice::Current&);
2646
2647 virtual bool areYouCoordinator(const ::Ice::Current& = ::Ice::emptyCurrent) const = 0;
2648 bool _iceD_areYouCoordinator(::IceInternal::Incoming&, const ::Ice::Current&) const;
2649
2650 virtual bool areYouThere(const ::std::string&,
2651 ::Ice::Int,
2652 const ::Ice::Current& = ::Ice::emptyCurrent) const = 0;
2653 bool _iceD_areYouThere(::IceInternal::Incoming&, const ::Ice::Current&) const;
2654
2655 virtual ::Ice::ObjectPrx sync(const ::Ice::Current& = ::Ice::emptyCurrent) const = 0;
2656 bool _iceD_sync(::IceInternal::Incoming&, const ::Ice::Current&) const;
2657
2658 virtual ::IceStormElection::NodeInfoSeq
2659 nodes(const ::Ice::Current& = ::Ice::emptyCurrent) const = 0;
2660 bool _iceD_nodes(::IceInternal::Incoming&, const ::Ice::Current&) const;
2661
2662 virtual ::IceStormElection::QueryInfo
2663 query(const ::Ice::Current& = ::Ice::emptyCurrent) const = 0;
2664 bool _iceD_query(::IceInternal::Incoming&, const ::Ice::Current&) const;
2665
2666 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&);
2667
2668 protected:
2669 virtual void _iceWriteImpl(::Ice::OutputStream*) const;
2670 virtual void _iceReadImpl(::Ice::InputStream*);
2671 };
2672
2673 inline bool
2674 operator==(const Node& lhs, const Node& rhs)
2675 {
2676 return static_cast<const ::Ice::Object&>(lhs) == static_cast<const ::Ice::Object&>(rhs);
2677 }
2678
2679 inline bool
2680 operator<(const Node& lhs, const Node& rhs)
2681 {
2682 return static_cast<const ::Ice::Object&>(lhs) < static_cast<const ::Ice::Object&>(rhs);
2683 }
2684
2685} // namespace IceStormElection
2686
2687namespace Ice
2688{
2689
2690 template <>
2691 struct StreamableTraits<::IceStormElection::TopicContent>
2692 {
2693 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
2694 static const int minWireSize = 3;
2695 static const bool fixedLength = false;
2696 };
2697
2698 template <typename S>
2699 struct StreamWriter<::IceStormElection::TopicContent, S>
2700 {
2701 static void
2702 write(S* ostr, const ::IceStormElection::TopicContent& v)
2703 {
2704 ostr->write(v.id);
2705 ostr->write(v.records);
2706 }
2707 };
2708
2709 template <typename S>
2710 struct StreamReader<::IceStormElection::TopicContent, S>
2711 {
2712 static void
2714 {
2715 istr->read(v.id);
2716 istr->read(v.records);
2717 }
2718 };
2719
2720 template <>
2722 {
2723 static const StreamHelperCategory helper = StreamHelperCategoryUserException;
2724 };
2725
2726 template <typename S>
2728 {
2729 static void
2730 write(S* ostr, const ::IceStormElection::ObserverInconsistencyException& v)
2731 {
2732 ostr->write(v.reason);
2733 }
2734 };
2735
2736 template <typename S>
2738 {
2739 static void
2741 {
2742 istr->read(v.reason);
2743 }
2744 };
2745
2746 template <>
2747 struct StreamableTraits<::IceStormElection::NodeState>
2748 {
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;
2754 };
2755
2756 template <>
2757 struct StreamableTraits<::IceStormElection::NodeInfo>
2758 {
2759 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
2760 static const int minWireSize = 6;
2761 static const bool fixedLength = false;
2762 };
2763
2764 template <typename S>
2765 struct StreamWriter<::IceStormElection::NodeInfo, S>
2766 {
2767 static void
2768 write(S* ostr, const ::IceStormElection::NodeInfo& v)
2769 {
2770 ostr->write(v.id);
2771 ostr->write(v.n);
2772 }
2773 };
2774
2775 template <typename S>
2776 struct StreamReader<::IceStormElection::NodeInfo, S>
2777 {
2778 static void
2780 {
2781 istr->read(v.id);
2782 istr->read(v.n);
2783 }
2784 };
2785
2786 template <>
2787 struct StreamableTraits<::IceStormElection::GroupInfo>
2788 {
2789 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
2790 static const int minWireSize = 20;
2791 static const bool fixedLength = true;
2792 };
2793
2794 template <typename S>
2795 struct StreamWriter<::IceStormElection::GroupInfo, S>
2796 {
2797 static void
2798 write(S* ostr, const ::IceStormElection::GroupInfo& v)
2799 {
2800 ostr->write(v.id);
2801 ostr->write(v.llu);
2802 }
2803 };
2804
2805 template <typename S>
2806 struct StreamReader<::IceStormElection::GroupInfo, S>
2807 {
2808 static void
2810 {
2811 istr->read(v.id);
2812 istr->read(v.llu);
2813 }
2814 };
2815
2816 template <>
2817 struct StreamableTraits<::IceStormElection::QueryInfo>
2818 {
2819 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
2820 static const int minWireSize = 17;
2821 static const bool fixedLength = false;
2822 };
2823
2824 template <typename S>
2825 struct StreamWriter<::IceStormElection::QueryInfo, S>
2826 {
2827 static void
2828 write(S* ostr, const ::IceStormElection::QueryInfo& v)
2829 {
2830 ostr->write(v.id);
2831 ostr->write(v.coord);
2832 ostr->write(v.group);
2833 ostr->write(v.replica);
2834 ostr->write(v.state);
2835 ostr->write(v.up);
2836 ostr->write(v.max);
2837 }
2838 };
2839
2840 template <typename S>
2841 struct StreamReader<::IceStormElection::QueryInfo, S>
2842 {
2843 static void
2845 {
2846 istr->read(v.id);
2847 istr->read(v.coord);
2848 istr->read(v.group);
2849 istr->read(v.replica);
2850 istr->read(v.state);
2851 istr->read(v.up);
2852 istr->read(v.max);
2853 }
2854 };
2855
2856} // namespace Ice
2857
2858namespace IceStormElection
2859{
2860
2861 template <class T>
2864 public ::IceInternal::TwowayCallbackNC<T>
2865 {
2866 public:
2868
2869 typedef void (T::*Exception)(const ::Ice::Exception&);
2870 typedef void (T::*Sent)(bool);
2871 typedef void (T::*Response)();
2872
2874 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
2875 {
2876 }
2877
2878 virtual void
2879 completed(const ::Ice::AsyncResultPtr& result) const
2880 {
2882 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
2883 try
2884 {
2885 proxy->end_init(result);
2886 }
2887 catch (const ::Ice::Exception& ex)
2888 {
2889 ::IceInternal::CallbackNC<T>::exception(result, ex);
2890 return;
2891 }
2892 if (_response)
2893 {
2894 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
2895 }
2896 }
2897
2898 private:
2899 Response _response;
2900 };
2901
2902 template <class T>
2905 void (T::*cb)(),
2906 void (T::*excb)(const ::Ice::Exception&),
2907 void (T::*sentcb)(bool) = 0)
2908 {
2909 return new CallbackNC_ReplicaObserver_init<T>(instance, cb, excb, sentcb);
2910 }
2911
2912 template <class T>
2915 void (T::*excb)(const ::Ice::Exception&),
2916 void (T::*sentcb)(bool) = 0)
2917 {
2918 return new CallbackNC_ReplicaObserver_init<T>(instance, 0, excb, sentcb);
2919 }
2920
2921 template <class T>
2924 void (T::*cb)(),
2925 void (T::*excb)(const ::Ice::Exception&),
2926 void (T::*sentcb)(bool) = 0)
2927 {
2928 return new CallbackNC_ReplicaObserver_init<T>(instance, cb, excb, sentcb);
2929 }
2930
2931 template <class T>
2934 void (T::*excb)(const ::Ice::Exception&),
2935 void (T::*sentcb)(bool) = 0)
2936 {
2937 return new CallbackNC_ReplicaObserver_init<T>(instance, 0, excb, sentcb);
2938 }
2939
2940 template <class T, typename CT>
2943 public ::IceInternal::TwowayCallback<T, CT>
2944 {
2945 public:
2947
2948 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
2949 typedef void (T::*Sent)(bool, const CT&);
2950 typedef void (T::*Response)(const CT&);
2951
2953 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
2954 {
2955 }
2956
2957 virtual void
2958 completed(const ::Ice::AsyncResultPtr& result) const
2959 {
2961 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
2962 try
2963 {
2964 proxy->end_init(result);
2965 }
2966 catch (const ::Ice::Exception& ex)
2967 {
2968 ::IceInternal::Callback<T, CT>::exception(result, ex);
2969 return;
2970 }
2971 if (_response)
2972 {
2973 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
2974 CT::dynamicCast(result->getCookie()));
2975 }
2976 }
2977
2978 private:
2979 Response _response;
2980 };
2981
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)
2988 {
2989 return new Callback_ReplicaObserver_init<T, CT>(instance, cb, excb, sentcb);
2990 }
2991
2992 template <class T, typename CT>
2995 void (T::*excb)(const ::Ice::Exception&, const CT&),
2996 void (T::*sentcb)(bool, const CT&) = 0)
2997 {
2998 return new Callback_ReplicaObserver_init<T, CT>(instance, 0, excb, sentcb);
2999 }
3000
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)
3007 {
3008 return new Callback_ReplicaObserver_init<T, CT>(instance, cb, excb, sentcb);
3009 }
3010
3011 template <class T, typename CT>
3014 void (T::*excb)(const ::Ice::Exception&, const CT&),
3015 void (T::*sentcb)(bool, const CT&) = 0)
3016 {
3017 return new Callback_ReplicaObserver_init<T, CT>(instance, 0, excb, sentcb);
3018 }
3019
3020 template <class T>
3023 public ::IceInternal::TwowayCallbackNC<T>
3024 {
3025 public:
3027
3028 typedef void (T::*Exception)(const ::Ice::Exception&);
3029 typedef void (T::*Sent)(bool);
3030 typedef void (T::*Response)();
3031
3033 Response cb,
3034 Exception excb,
3035 Sent sentcb) :
3036 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3037 {
3038 }
3039
3040 virtual void
3041 completed(const ::Ice::AsyncResultPtr& result) const
3042 {
3044 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3045 try
3046 {
3047 proxy->end_createTopic(result);
3048 }
3049 catch (const ::Ice::Exception& ex)
3050 {
3051 ::IceInternal::CallbackNC<T>::exception(result, ex);
3052 return;
3053 }
3054 if (_response)
3055 {
3056 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3057 }
3058 }
3059
3060 private:
3061 Response _response;
3062 };
3063
3064 template <class T>
3067 void (T::*cb)(),
3068 void (T::*excb)(const ::Ice::Exception&),
3069 void (T::*sentcb)(bool) = 0)
3070 {
3071 return new CallbackNC_ReplicaObserver_createTopic<T>(instance, cb, excb, sentcb);
3072 }
3073
3074 template <class T>
3077 void (T::*excb)(const ::Ice::Exception&),
3078 void (T::*sentcb)(bool) = 0)
3079 {
3080 return new CallbackNC_ReplicaObserver_createTopic<T>(instance, 0, excb, sentcb);
3081 }
3082
3083 template <class T>
3086 void (T::*cb)(),
3087 void (T::*excb)(const ::Ice::Exception&),
3088 void (T::*sentcb)(bool) = 0)
3089 {
3090 return new CallbackNC_ReplicaObserver_createTopic<T>(instance, cb, excb, sentcb);
3091 }
3092
3093 template <class T>
3096 void (T::*excb)(const ::Ice::Exception&),
3097 void (T::*sentcb)(bool) = 0)
3098 {
3099 return new CallbackNC_ReplicaObserver_createTopic<T>(instance, 0, excb, sentcb);
3100 }
3101
3102 template <class T, typename CT>
3105 public ::IceInternal::TwowayCallback<T, CT>
3106 {
3107 public:
3109
3110 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
3111 typedef void (T::*Sent)(bool, const CT&);
3112 typedef void (T::*Response)(const CT&);
3113
3115 Response cb,
3116 Exception excb,
3117 Sent sentcb) :
3118 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3119 {
3120 }
3121
3122 virtual void
3123 completed(const ::Ice::AsyncResultPtr& result) const
3124 {
3126 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3127 try
3128 {
3129 proxy->end_createTopic(result);
3130 }
3131 catch (const ::Ice::Exception& ex)
3132 {
3133 ::IceInternal::Callback<T, CT>::exception(result, ex);
3134 return;
3135 }
3136 if (_response)
3137 {
3138 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3139 CT::dynamicCast(result->getCookie()));
3140 }
3141 }
3142
3143 private:
3144 Response _response;
3145 };
3146
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)
3153 {
3154 return new Callback_ReplicaObserver_createTopic<T, CT>(instance, cb, excb, sentcb);
3155 }
3156
3157 template <class T, typename CT>
3160 void (T::*excb)(const ::Ice::Exception&, const CT&),
3161 void (T::*sentcb)(bool, const CT&) = 0)
3162 {
3163 return new Callback_ReplicaObserver_createTopic<T, CT>(instance, 0, excb, sentcb);
3164 }
3165
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)
3172 {
3173 return new Callback_ReplicaObserver_createTopic<T, CT>(instance, cb, excb, sentcb);
3174 }
3175
3176 template <class T, typename CT>
3179 void (T::*excb)(const ::Ice::Exception&, const CT&),
3180 void (T::*sentcb)(bool, const CT&) = 0)
3181 {
3182 return new Callback_ReplicaObserver_createTopic<T, CT>(instance, 0, excb, sentcb);
3183 }
3184
3185 template <class T>
3188 public ::IceInternal::TwowayCallbackNC<T>
3189 {
3190 public:
3192
3193 typedef void (T::*Exception)(const ::Ice::Exception&);
3194 typedef void (T::*Sent)(bool);
3195 typedef void (T::*Response)();
3196
3198 Response cb,
3199 Exception excb,
3200 Sent sentcb) :
3201 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3202 {
3203 }
3204
3205 virtual void
3206 completed(const ::Ice::AsyncResultPtr& result) const
3207 {
3209 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3210 try
3211 {
3212 proxy->end_destroyTopic(result);
3213 }
3214 catch (const ::Ice::Exception& ex)
3215 {
3216 ::IceInternal::CallbackNC<T>::exception(result, ex);
3217 return;
3218 }
3219 if (_response)
3220 {
3221 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3222 }
3223 }
3224
3225 private:
3226 Response _response;
3227 };
3228
3229 template <class T>
3232 void (T::*cb)(),
3233 void (T::*excb)(const ::Ice::Exception&),
3234 void (T::*sentcb)(bool) = 0)
3235 {
3236 return new CallbackNC_ReplicaObserver_destroyTopic<T>(instance, cb, excb, sentcb);
3237 }
3238
3239 template <class T>
3242 void (T::*excb)(const ::Ice::Exception&),
3243 void (T::*sentcb)(bool) = 0)
3244 {
3245 return new CallbackNC_ReplicaObserver_destroyTopic<T>(instance, 0, excb, sentcb);
3246 }
3247
3248 template <class T>
3251 void (T::*cb)(),
3252 void (T::*excb)(const ::Ice::Exception&),
3253 void (T::*sentcb)(bool) = 0)
3254 {
3255 return new CallbackNC_ReplicaObserver_destroyTopic<T>(instance, cb, excb, sentcb);
3256 }
3257
3258 template <class T>
3261 void (T::*excb)(const ::Ice::Exception&),
3262 void (T::*sentcb)(bool) = 0)
3263 {
3264 return new CallbackNC_ReplicaObserver_destroyTopic<T>(instance, 0, excb, sentcb);
3265 }
3266
3267 template <class T, typename CT>
3270 public ::IceInternal::TwowayCallback<T, CT>
3271 {
3272 public:
3274
3275 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
3276 typedef void (T::*Sent)(bool, const CT&);
3277 typedef void (T::*Response)(const CT&);
3278
3280 Response cb,
3281 Exception excb,
3282 Sent sentcb) :
3283 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3284 {
3285 }
3286
3287 virtual void
3288 completed(const ::Ice::AsyncResultPtr& result) const
3289 {
3291 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3292 try
3293 {
3294 proxy->end_destroyTopic(result);
3295 }
3296 catch (const ::Ice::Exception& ex)
3297 {
3298 ::IceInternal::Callback<T, CT>::exception(result, ex);
3299 return;
3300 }
3301 if (_response)
3302 {
3303 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3304 CT::dynamicCast(result->getCookie()));
3305 }
3306 }
3307
3308 private:
3309 Response _response;
3310 };
3311
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)
3318 {
3319 return new Callback_ReplicaObserver_destroyTopic<T, CT>(instance, cb, excb, sentcb);
3320 }
3321
3322 template <class T, typename CT>
3325 void (T::*excb)(const ::Ice::Exception&, const CT&),
3326 void (T::*sentcb)(bool, const CT&) = 0)
3327 {
3328 return new Callback_ReplicaObserver_destroyTopic<T, CT>(instance, 0, excb, sentcb);
3329 }
3330
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)
3337 {
3338 return new Callback_ReplicaObserver_destroyTopic<T, CT>(instance, cb, excb, sentcb);
3339 }
3340
3341 template <class T, typename CT>
3344 void (T::*excb)(const ::Ice::Exception&, const CT&),
3345 void (T::*sentcb)(bool, const CT&) = 0)
3346 {
3347 return new Callback_ReplicaObserver_destroyTopic<T, CT>(instance, 0, excb, sentcb);
3348 }
3349
3350 template <class T>
3353 public ::IceInternal::TwowayCallbackNC<T>
3354 {
3355 public:
3357
3358 typedef void (T::*Exception)(const ::Ice::Exception&);
3359 typedef void (T::*Sent)(bool);
3360 typedef void (T::*Response)();
3361
3363 Response cb,
3364 Exception excb,
3365 Sent sentcb) :
3366 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3367 {
3368 }
3369
3370 virtual void
3371 completed(const ::Ice::AsyncResultPtr& result) const
3372 {
3374 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3375 try
3376 {
3377 proxy->end_addSubscriber(result);
3378 }
3379 catch (const ::Ice::Exception& ex)
3380 {
3381 ::IceInternal::CallbackNC<T>::exception(result, ex);
3382 return;
3383 }
3384 if (_response)
3385 {
3386 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3387 }
3388 }
3389
3390 private:
3391 Response _response;
3392 };
3393
3394 template <class T>
3397 void (T::*cb)(),
3398 void (T::*excb)(const ::Ice::Exception&),
3399 void (T::*sentcb)(bool) = 0)
3400 {
3401 return new CallbackNC_ReplicaObserver_addSubscriber<T>(instance, cb, excb, sentcb);
3402 }
3403
3404 template <class T>
3407 void (T::*excb)(const ::Ice::Exception&),
3408 void (T::*sentcb)(bool) = 0)
3409 {
3410 return new CallbackNC_ReplicaObserver_addSubscriber<T>(instance, 0, excb, sentcb);
3411 }
3412
3413 template <class T>
3416 void (T::*cb)(),
3417 void (T::*excb)(const ::Ice::Exception&),
3418 void (T::*sentcb)(bool) = 0)
3419 {
3420 return new CallbackNC_ReplicaObserver_addSubscriber<T>(instance, cb, excb, sentcb);
3421 }
3422
3423 template <class T>
3426 void (T::*excb)(const ::Ice::Exception&),
3427 void (T::*sentcb)(bool) = 0)
3428 {
3429 return new CallbackNC_ReplicaObserver_addSubscriber<T>(instance, 0, excb, sentcb);
3430 }
3431
3432 template <class T, typename CT>
3435 public ::IceInternal::TwowayCallback<T, CT>
3436 {
3437 public:
3439
3440 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
3441 typedef void (T::*Sent)(bool, const CT&);
3442 typedef void (T::*Response)(const CT&);
3443
3445 Response cb,
3446 Exception excb,
3447 Sent sentcb) :
3448 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3449 {
3450 }
3451
3452 virtual void
3453 completed(const ::Ice::AsyncResultPtr& result) const
3454 {
3456 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3457 try
3458 {
3459 proxy->end_addSubscriber(result);
3460 }
3461 catch (const ::Ice::Exception& ex)
3462 {
3463 ::IceInternal::Callback<T, CT>::exception(result, ex);
3464 return;
3465 }
3466 if (_response)
3467 {
3468 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3469 CT::dynamicCast(result->getCookie()));
3470 }
3471 }
3472
3473 private:
3474 Response _response;
3475 };
3476
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)
3483 {
3484 return new Callback_ReplicaObserver_addSubscriber<T, CT>(instance, cb, excb, sentcb);
3485 }
3486
3487 template <class T, typename CT>
3490 void (T::*excb)(const ::Ice::Exception&, const CT&),
3491 void (T::*sentcb)(bool, const CT&) = 0)
3492 {
3493 return new Callback_ReplicaObserver_addSubscriber<T, CT>(instance, 0, excb, sentcb);
3494 }
3495
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)
3502 {
3503 return new Callback_ReplicaObserver_addSubscriber<T, CT>(instance, cb, excb, sentcb);
3504 }
3505
3506 template <class T, typename CT>
3509 void (T::*excb)(const ::Ice::Exception&, const CT&),
3510 void (T::*sentcb)(bool, const CT&) = 0)
3511 {
3512 return new Callback_ReplicaObserver_addSubscriber<T, CT>(instance, 0, excb, sentcb);
3513 }
3514
3515 template <class T>
3518 public ::IceInternal::TwowayCallbackNC<T>
3519 {
3520 public:
3522
3523 typedef void (T::*Exception)(const ::Ice::Exception&);
3524 typedef void (T::*Sent)(bool);
3525 typedef void (T::*Response)();
3526
3528 Response cb,
3529 Exception excb,
3530 Sent sentcb) :
3531 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3532 {
3533 }
3534
3535 virtual void
3536 completed(const ::Ice::AsyncResultPtr& result) const
3537 {
3539 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3540 try
3541 {
3542 proxy->end_removeSubscriber(result);
3543 }
3544 catch (const ::Ice::Exception& ex)
3545 {
3546 ::IceInternal::CallbackNC<T>::exception(result, ex);
3547 return;
3548 }
3549 if (_response)
3550 {
3551 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
3552 }
3553 }
3554
3555 private:
3556 Response _response;
3557 };
3558
3559 template <class T>
3562 void (T::*cb)(),
3563 void (T::*excb)(const ::Ice::Exception&),
3564 void (T::*sentcb)(bool) = 0)
3565 {
3566 return new CallbackNC_ReplicaObserver_removeSubscriber<T>(instance, cb, excb, sentcb);
3567 }
3568
3569 template <class T>
3572 void (T::*excb)(const ::Ice::Exception&),
3573 void (T::*sentcb)(bool) = 0)
3574 {
3575 return new CallbackNC_ReplicaObserver_removeSubscriber<T>(instance, 0, excb, sentcb);
3576 }
3577
3578 template <class T>
3581 void (T::*cb)(),
3582 void (T::*excb)(const ::Ice::Exception&),
3583 void (T::*sentcb)(bool) = 0)
3584 {
3585 return new CallbackNC_ReplicaObserver_removeSubscriber<T>(instance, cb, excb, sentcb);
3586 }
3587
3588 template <class T>
3591 void (T::*excb)(const ::Ice::Exception&),
3592 void (T::*sentcb)(bool) = 0)
3593 {
3594 return new CallbackNC_ReplicaObserver_removeSubscriber<T>(instance, 0, excb, sentcb);
3595 }
3596
3597 template <class T, typename CT>
3600 public ::IceInternal::TwowayCallback<T, CT>
3601 {
3602 public:
3604
3605 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
3606 typedef void (T::*Sent)(bool, const CT&);
3607 typedef void (T::*Response)(const CT&);
3608
3610 Response cb,
3611 Exception excb,
3612 Sent sentcb) :
3613 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3614 {
3615 }
3616
3617 virtual void
3618 completed(const ::Ice::AsyncResultPtr& result) const
3619 {
3621 ::IceStormElection::ReplicaObserverPrx::uncheckedCast(result->getProxy());
3622 try
3623 {
3624 proxy->end_removeSubscriber(result);
3625 }
3626 catch (const ::Ice::Exception& ex)
3627 {
3628 ::IceInternal::Callback<T, CT>::exception(result, ex);
3629 return;
3630 }
3631 if (_response)
3632 {
3633 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3634 CT::dynamicCast(result->getCookie()));
3635 }
3636 }
3637
3638 private:
3639 Response _response;
3640 };
3641
3642 template <class T, typename CT>
3645 void (T::*cb)(const CT&),
3646 void (T::*excb)(const ::Ice::Exception&,
3647 const CT&),
3648 void (T::*sentcb)(bool, const CT&) = 0)
3649 {
3650 return new Callback_ReplicaObserver_removeSubscriber<T, CT>(instance, cb, excb, sentcb);
3651 }
3652
3653 template <class T, typename CT>
3656 void (T::*excb)(const ::Ice::Exception&,
3657 const CT&),
3658 void (T::*sentcb)(bool, const CT&) = 0)
3659 {
3660 return new Callback_ReplicaObserver_removeSubscriber<T, CT>(instance, 0, excb, sentcb);
3661 }
3662
3663 template <class T, typename CT>
3666 void (T::*cb)(const CT&),
3667 void (T::*excb)(const ::Ice::Exception&,
3668 const CT&),
3669 void (T::*sentcb)(bool, const CT&) = 0)
3670 {
3671 return new Callback_ReplicaObserver_removeSubscriber<T, CT>(instance, cb, excb, sentcb);
3672 }
3673
3674 template <class T, typename CT>
3677 void (T::*excb)(const ::Ice::Exception&,
3678 const CT&),
3679 void (T::*sentcb)(bool, const CT&) = 0)
3680 {
3681 return new Callback_ReplicaObserver_removeSubscriber<T, CT>(instance, 0, excb, sentcb);
3682 }
3683
3684 template <class T>
3687 public ::IceInternal::TwowayCallbackNC<T>
3688 {
3689 public:
3691
3692 typedef void (T::*Exception)(const ::Ice::Exception&);
3693 typedef void (T::*Sent)(bool);
3694 typedef void (T::*Response)(const ::IceStormElection::LogUpdate&,
3695 const ::IceStormElection::TopicContentSeq&);
3696
3698 Response cb,
3699 Exception excb,
3700 Sent sentcb) :
3701 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
3702 {
3703 }
3704
3705 virtual void
3706 completed(const ::Ice::AsyncResultPtr& result) const
3707 {
3709 ::IceStormElection::TopicManagerSyncPrx::uncheckedCast(result->getProxy());
3712 try
3713 {
3714 proxy->end_getContent(iceP_llu, iceP_content, result);
3715 }
3716 catch (const ::Ice::Exception& ex)
3717 {
3718 ::IceInternal::CallbackNC<T>::exception(result, ex);
3719 return;
3720 }
3721 if (_response)
3722 {
3723 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(iceP_llu, iceP_content);
3724 }
3725 }
3726
3727 private:
3728 Response _response;
3729 };
3730
3731 template <class T>
3734 const IceUtil::Handle<T>& instance,
3735 void (T::*cb)(const ::IceStormElection::LogUpdate&,
3736 const ::IceStormElection::TopicContentSeq&),
3737 void (T::*excb)(const ::Ice::Exception&),
3738 void (T::*sentcb)(bool) = 0)
3739 {
3740 return new CallbackNC_TopicManagerSync_getContent<T>(instance, cb, excb, sentcb);
3741 }
3742
3743 template <class T>
3746 T* instance,
3747 void (T::*cb)(const ::IceStormElection::LogUpdate&,
3748 const ::IceStormElection::TopicContentSeq&),
3749 void (T::*excb)(const ::Ice::Exception&),
3750 void (T::*sentcb)(bool) = 0)
3751 {
3752 return new CallbackNC_TopicManagerSync_getContent<T>(instance, cb, excb, sentcb);
3753 }
3754
3755 template <class T, typename CT>
3758 public ::IceInternal::TwowayCallback<T, CT>
3759 {
3760 public:
3762
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&,
3766 const ::IceStormElection::TopicContentSeq&,
3767 const CT&);
3768
3770 Response cb,
3771 Exception excb,
3772 Sent sentcb) :
3773 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
3774 {
3775 }
3776
3777 virtual void
3778 completed(const ::Ice::AsyncResultPtr& result) const
3779 {
3781 ::IceStormElection::TopicManagerSyncPrx::uncheckedCast(result->getProxy());
3784 try
3785 {
3786 proxy->end_getContent(iceP_llu, iceP_content, result);
3787 }
3788 catch (const ::Ice::Exception& ex)
3789 {
3790 ::IceInternal::Callback<T, CT>::exception(result, ex);
3791 return;
3792 }
3793 if (_response)
3794 {
3795 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
3796 iceP_llu, iceP_content, CT::dynamicCast(result->getCookie()));
3797 }
3798 }
3799
3800 private:
3801 Response _response;
3802 };
3803
3804 template <class T, typename CT>
3807 const IceUtil::Handle<T>& instance,
3808 void (T::*cb)(const ::IceStormElection::LogUpdate&,
3809 const ::IceStormElection::TopicContentSeq&,
3810 const CT&),
3811 void (T::*excb)(const ::Ice::Exception&, const CT&),
3812 void (T::*sentcb)(bool, const CT&) = 0)
3813 {
3814 return new Callback_TopicManagerSync_getContent<T, CT>(instance, cb, excb, sentcb);
3815 }
3816
3817 template <class T, typename CT>
3820 T* instance,
3821 void (T::*cb)(const ::IceStormElection::LogUpdate&,
3822 const ::IceStormElection::TopicContentSeq&,
3823 const CT&),
3824 void (T::*excb)(const ::Ice::Exception&, const CT&),
3825 void (T::*sentcb)(bool, const CT&) = 0)
3826 {
3827 return new Callback_TopicManagerSync_getContent<T, CT>(instance, cb, excb, sentcb);
3828 }
3829
3830 template <class T>
3833 public ::IceInternal::OnewayCallbackNC<T>
3834 {
3835 public:
3837
3838 typedef void (T::*Exception)(const ::Ice::Exception&);
3839 typedef void (T::*Sent)(bool);
3840 typedef void (T::*Response)();
3841
3843 ::IceInternal::OnewayCallbackNC<T>(obj, cb, excb, sentcb)
3844 {
3845 }
3846 };
3847
3848 template <class T>
3851 void (T::*cb)(),
3852 void (T::*excb)(const ::Ice::Exception&),
3853 void (T::*sentcb)(bool) = 0)
3854 {
3855 return new CallbackNC_Node_invitation<T>(instance, cb, excb, sentcb);
3856 }
3857
3858 template <class T>
3861 void (T::*excb)(const ::Ice::Exception&),
3862 void (T::*sentcb)(bool) = 0)
3863 {
3864 return new CallbackNC_Node_invitation<T>(instance, 0, excb, sentcb);
3865 }
3866
3867 template <class T>
3870 void (T::*cb)(),
3871 void (T::*excb)(const ::Ice::Exception&),
3872 void (T::*sentcb)(bool) = 0)
3873 {
3874 return new CallbackNC_Node_invitation<T>(instance, cb, excb, sentcb);
3875 }
3876
3877 template <class T>
3880 void (T::*excb)(const ::Ice::Exception&),
3881 void (T::*sentcb)(bool) = 0)
3882 {
3883 return new CallbackNC_Node_invitation<T>(instance, 0, excb, sentcb);
3884 }
3885
3886 template <class T, typename CT>
3889 public ::IceInternal::OnewayCallback<T, CT>
3890 {
3891 public:
3893
3894 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
3895 typedef void (T::*Sent)(bool, const CT&);
3896 typedef void (T::*Response)(const CT&);
3897
3898 Callback_Node_invitation(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
3899 ::IceInternal::OnewayCallback<T, CT>(obj, cb, excb, sentcb)
3900 {
3901 }
3902 };
3903
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)
3910 {
3911 return new Callback_Node_invitation<T, CT>(instance, cb, excb, sentcb);
3912 }
3913
3914 template <class T, typename CT>
3917 void (T::*excb)(const ::Ice::Exception&, const CT&),
3918 void (T::*sentcb)(bool, const CT&) = 0)
3919 {
3920 return new Callback_Node_invitation<T, CT>(instance, 0, excb, sentcb);
3921 }
3922
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)
3929 {
3930 return new Callback_Node_invitation<T, CT>(instance, cb, excb, sentcb);
3931 }
3932
3933 template <class T, typename CT>
3936 void (T::*excb)(const ::Ice::Exception&, const CT&),
3937 void (T::*sentcb)(bool, const CT&) = 0)
3938 {
3939 return new Callback_Node_invitation<T, CT>(instance, 0, excb, sentcb);
3940 }
3941
3942 template <class T>
3945 public ::IceInternal::OnewayCallbackNC<T>
3946 {
3947 public:
3949
3950 typedef void (T::*Exception)(const ::Ice::Exception&);
3951 typedef void (T::*Sent)(bool);
3952 typedef void (T::*Response)();
3953
3954 CallbackNC_Node_ready(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
3955 ::IceInternal::OnewayCallbackNC<T>(obj, cb, excb, sentcb)
3956 {
3957 }
3958 };
3959
3960 template <class T>
3963 void (T::*cb)(),
3964 void (T::*excb)(const ::Ice::Exception&),
3965 void (T::*sentcb)(bool) = 0)
3966 {
3967 return new CallbackNC_Node_ready<T>(instance, cb, excb, sentcb);
3968 }
3969
3970 template <class T>
3973 void (T::*excb)(const ::Ice::Exception&),
3974 void (T::*sentcb)(bool) = 0)
3975 {
3976 return new CallbackNC_Node_ready<T>(instance, 0, excb, sentcb);
3977 }
3978
3979 template <class T>
3982 void (T::*cb)(),
3983 void (T::*excb)(const ::Ice::Exception&),
3984 void (T::*sentcb)(bool) = 0)
3985 {
3986 return new CallbackNC_Node_ready<T>(instance, cb, excb, sentcb);
3987 }
3988
3989 template <class T>
3992 void (T::*excb)(const ::Ice::Exception&),
3993 void (T::*sentcb)(bool) = 0)
3994 {
3995 return new CallbackNC_Node_ready<T>(instance, 0, excb, sentcb);
3996 }
3997
3998 template <class T, typename CT>
4001 public ::IceInternal::OnewayCallback<T, CT>
4002 {
4003 public:
4005
4006 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
4007 typedef void (T::*Sent)(bool, const CT&);
4008 typedef void (T::*Response)(const CT&);
4009
4010 Callback_Node_ready(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4011 ::IceInternal::OnewayCallback<T, CT>(obj, cb, excb, sentcb)
4012 {
4013 }
4014 };
4015
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)
4022 {
4023 return new Callback_Node_ready<T, CT>(instance, cb, excb, sentcb);
4024 }
4025
4026 template <class T, typename CT>
4029 void (T::*excb)(const ::Ice::Exception&, const CT&),
4030 void (T::*sentcb)(bool, const CT&) = 0)
4031 {
4032 return new Callback_Node_ready<T, CT>(instance, 0, excb, sentcb);
4033 }
4034
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)
4041 {
4042 return new Callback_Node_ready<T, CT>(instance, cb, excb, sentcb);
4043 }
4044
4045 template <class T, typename CT>
4048 void (T::*excb)(const ::Ice::Exception&, const CT&),
4049 void (T::*sentcb)(bool, const CT&) = 0)
4050 {
4051 return new Callback_Node_ready<T, CT>(instance, 0, excb, sentcb);
4052 }
4053
4054 template <class T>
4057 public ::IceInternal::OnewayCallbackNC<T>
4058 {
4059 public:
4061
4062 typedef void (T::*Exception)(const ::Ice::Exception&);
4063 typedef void (T::*Sent)(bool);
4064 typedef void (T::*Response)();
4065
4066 CallbackNC_Node_accept(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4067 ::IceInternal::OnewayCallbackNC<T>(obj, cb, excb, sentcb)
4068 {
4069 }
4070 };
4071
4072 template <class T>
4075 void (T::*cb)(),
4076 void (T::*excb)(const ::Ice::Exception&),
4077 void (T::*sentcb)(bool) = 0)
4078 {
4079 return new CallbackNC_Node_accept<T>(instance, cb, excb, sentcb);
4080 }
4081
4082 template <class T>
4085 void (T::*excb)(const ::Ice::Exception&),
4086 void (T::*sentcb)(bool) = 0)
4087 {
4088 return new CallbackNC_Node_accept<T>(instance, 0, excb, sentcb);
4089 }
4090
4091 template <class T>
4094 void (T::*cb)(),
4095 void (T::*excb)(const ::Ice::Exception&),
4096 void (T::*sentcb)(bool) = 0)
4097 {
4098 return new CallbackNC_Node_accept<T>(instance, cb, excb, sentcb);
4099 }
4100
4101 template <class T>
4104 void (T::*excb)(const ::Ice::Exception&),
4105 void (T::*sentcb)(bool) = 0)
4106 {
4107 return new CallbackNC_Node_accept<T>(instance, 0, excb, sentcb);
4108 }
4109
4110 template <class T, typename CT>
4113 public ::IceInternal::OnewayCallback<T, CT>
4114 {
4115 public:
4117
4118 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
4119 typedef void (T::*Sent)(bool, const CT&);
4120 typedef void (T::*Response)(const CT&);
4121
4122 Callback_Node_accept(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4123 ::IceInternal::OnewayCallback<T, CT>(obj, cb, excb, sentcb)
4124 {
4125 }
4126 };
4127
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)
4134 {
4135 return new Callback_Node_accept<T, CT>(instance, cb, excb, sentcb);
4136 }
4137
4138 template <class T, typename CT>
4141 void (T::*excb)(const ::Ice::Exception&, const CT&),
4142 void (T::*sentcb)(bool, const CT&) = 0)
4143 {
4144 return new Callback_Node_accept<T, CT>(instance, 0, excb, sentcb);
4145 }
4146
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)
4153 {
4154 return new Callback_Node_accept<T, CT>(instance, cb, excb, sentcb);
4155 }
4156
4157 template <class T, typename CT>
4160 void (T::*excb)(const ::Ice::Exception&, const CT&),
4161 void (T::*sentcb)(bool, const CT&) = 0)
4162 {
4163 return new Callback_Node_accept<T, CT>(instance, 0, excb, sentcb);
4164 }
4165
4166 template <class T>
4169 public ::IceInternal::TwowayCallbackNC<T>
4170 {
4171 public:
4173
4174 typedef void (T::*Exception)(const ::Ice::Exception&);
4175 typedef void (T::*Sent)(bool);
4176 typedef void (T::*Response)(bool);
4177
4179 Response cb,
4180 Exception excb,
4181 Sent sentcb) :
4182 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
4183 {
4184 }
4185
4186 virtual void
4187 completed(const ::Ice::AsyncResultPtr& result) const
4188 {
4190 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4191 bool ret;
4192 try
4193 {
4194 ret = proxy->end_areYouCoordinator(result);
4195 }
4196 catch (const ::Ice::Exception& ex)
4197 {
4198 ::IceInternal::CallbackNC<T>::exception(result, ex);
4199 return;
4200 }
4201 if (_response)
4202 {
4203 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
4204 }
4205 }
4206
4207 private:
4208 Response _response;
4209 };
4210
4211 template <class T>
4214 void (T::*cb)(bool),
4215 void (T::*excb)(const ::Ice::Exception&),
4216 void (T::*sentcb)(bool) = 0)
4217 {
4218 return new CallbackNC_Node_areYouCoordinator<T>(instance, cb, excb, sentcb);
4219 }
4220
4221 template <class T>
4224 void (T::*cb)(bool),
4225 void (T::*excb)(const ::Ice::Exception&),
4226 void (T::*sentcb)(bool) = 0)
4227 {
4228 return new CallbackNC_Node_areYouCoordinator<T>(instance, cb, excb, sentcb);
4229 }
4230
4231 template <class T, typename CT>
4234 public ::IceInternal::TwowayCallback<T, CT>
4235 {
4236 public:
4238
4239 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
4240 typedef void (T::*Sent)(bool, const CT&);
4241 typedef void (T::*Response)(bool, const CT&);
4242
4244 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4245 {
4246 }
4247
4248 virtual void
4249 completed(const ::Ice::AsyncResultPtr& result) const
4250 {
4252 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4253 bool ret;
4254 try
4255 {
4256 ret = proxy->end_areYouCoordinator(result);
4257 }
4258 catch (const ::Ice::Exception& ex)
4259 {
4260 ::IceInternal::Callback<T, CT>::exception(result, ex);
4261 return;
4262 }
4263 if (_response)
4264 {
4265 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4266 ret, CT::dynamicCast(result->getCookie()));
4267 }
4268 }
4269
4270 private:
4271 Response _response;
4272 };
4273
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)
4280 {
4281 return new Callback_Node_areYouCoordinator<T, CT>(instance, cb, excb, sentcb);
4282 }
4283
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)
4290 {
4291 return new Callback_Node_areYouCoordinator<T, CT>(instance, cb, excb, sentcb);
4292 }
4293
4294 template <class T>
4297 public ::IceInternal::TwowayCallbackNC<T>
4298 {
4299 public:
4301
4302 typedef void (T::*Exception)(const ::Ice::Exception&);
4303 typedef void (T::*Sent)(bool);
4304 typedef void (T::*Response)(bool);
4305
4307 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
4308 {
4309 }
4310
4311 virtual void
4312 completed(const ::Ice::AsyncResultPtr& result) const
4313 {
4315 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4316 bool ret;
4317 try
4318 {
4319 ret = proxy->end_areYouThere(result);
4320 }
4321 catch (const ::Ice::Exception& ex)
4322 {
4323 ::IceInternal::CallbackNC<T>::exception(result, ex);
4324 return;
4325 }
4326 if (_response)
4327 {
4328 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
4329 }
4330 }
4331
4332 private:
4333 Response _response;
4334 };
4335
4336 template <class T>
4339 void (T::*cb)(bool),
4340 void (T::*excb)(const ::Ice::Exception&),
4341 void (T::*sentcb)(bool) = 0)
4342 {
4343 return new CallbackNC_Node_areYouThere<T>(instance, cb, excb, sentcb);
4344 }
4345
4346 template <class T>
4349 void (T::*cb)(bool),
4350 void (T::*excb)(const ::Ice::Exception&),
4351 void (T::*sentcb)(bool) = 0)
4352 {
4353 return new CallbackNC_Node_areYouThere<T>(instance, cb, excb, sentcb);
4354 }
4355
4356 template <class T, typename CT>
4359 public ::IceInternal::TwowayCallback<T, CT>
4360 {
4361 public:
4363
4364 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
4365 typedef void (T::*Sent)(bool, const CT&);
4366 typedef void (T::*Response)(bool, const CT&);
4367
4368 Callback_Node_areYouThere(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4369 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4370 {
4371 }
4372
4373 virtual void
4374 completed(const ::Ice::AsyncResultPtr& result) const
4375 {
4377 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4378 bool ret;
4379 try
4380 {
4381 ret = proxy->end_areYouThere(result);
4382 }
4383 catch (const ::Ice::Exception& ex)
4384 {
4385 ::IceInternal::Callback<T, CT>::exception(result, ex);
4386 return;
4387 }
4388 if (_response)
4389 {
4390 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4391 ret, CT::dynamicCast(result->getCookie()));
4392 }
4393 }
4394
4395 private:
4396 Response _response;
4397 };
4398
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)
4405 {
4406 return new Callback_Node_areYouThere<T, CT>(instance, cb, excb, sentcb);
4407 }
4408
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)
4415 {
4416 return new Callback_Node_areYouThere<T, CT>(instance, cb, excb, sentcb);
4417 }
4418
4419 template <class T>
4422 public ::IceInternal::TwowayCallbackNC<T>
4423 {
4424 public:
4426
4427 typedef void (T::*Exception)(const ::Ice::Exception&);
4428 typedef void (T::*Sent)(bool);
4429 typedef void (T::*Response)(const ::Ice::ObjectPrx&);
4430
4431 CallbackNC_Node_sync(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4432 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
4433 {
4434 }
4435
4436 virtual void
4437 completed(const ::Ice::AsyncResultPtr& result) const
4438 {
4440 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4441 ::Ice::ObjectPrx ret;
4442 try
4443 {
4444 ret = proxy->end_sync(result);
4445 }
4446 catch (const ::Ice::Exception& ex)
4447 {
4448 ::IceInternal::CallbackNC<T>::exception(result, ex);
4449 return;
4450 }
4451 if (_response)
4452 {
4453 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
4454 }
4455 }
4456
4457 private:
4458 Response _response;
4459 };
4460
4461 template <class T>
4464 void (T::*cb)(const ::Ice::ObjectPrx&),
4465 void (T::*excb)(const ::Ice::Exception&),
4466 void (T::*sentcb)(bool) = 0)
4467 {
4468 return new CallbackNC_Node_sync<T>(instance, cb, excb, sentcb);
4469 }
4470
4471 template <class T>
4474 void (T::*cb)(const ::Ice::ObjectPrx&),
4475 void (T::*excb)(const ::Ice::Exception&),
4476 void (T::*sentcb)(bool) = 0)
4477 {
4478 return new CallbackNC_Node_sync<T>(instance, cb, excb, sentcb);
4479 }
4480
4481 template <class T, typename CT>
4484 public ::IceInternal::TwowayCallback<T, CT>
4485 {
4486 public:
4488
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&);
4492
4493 Callback_Node_sync(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4494 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4495 {
4496 }
4497
4498 virtual void
4499 completed(const ::Ice::AsyncResultPtr& result) const
4500 {
4502 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4503 ::Ice::ObjectPrx ret;
4504 try
4505 {
4506 ret = proxy->end_sync(result);
4507 }
4508 catch (const ::Ice::Exception& ex)
4509 {
4510 ::IceInternal::Callback<T, CT>::exception(result, ex);
4511 return;
4512 }
4513 if (_response)
4514 {
4515 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4516 ret, CT::dynamicCast(result->getCookie()));
4517 }
4518 }
4519
4520 private:
4521 Response _response;
4522 };
4523
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)
4530 {
4531 return new Callback_Node_sync<T, CT>(instance, cb, excb, sentcb);
4532 }
4533
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)
4540 {
4541 return new Callback_Node_sync<T, CT>(instance, cb, excb, sentcb);
4542 }
4543
4544 template <class T>
4547 public ::IceInternal::TwowayCallbackNC<T>
4548 {
4549 public:
4551
4552 typedef void (T::*Exception)(const ::Ice::Exception&);
4553 typedef void (T::*Sent)(bool);
4554 typedef void (T::*Response)(const ::IceStormElection::NodeInfoSeq&);
4555
4556 CallbackNC_Node_nodes(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4557 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
4558 {
4559 }
4560
4561 virtual void
4562 completed(const ::Ice::AsyncResultPtr& result) const
4563 {
4565 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4567 try
4568 {
4569 ret = proxy->end_nodes(result);
4570 }
4571 catch (const ::Ice::Exception& ex)
4572 {
4573 ::IceInternal::CallbackNC<T>::exception(result, ex);
4574 return;
4575 }
4576 if (_response)
4577 {
4578 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
4579 }
4580 }
4581
4582 private:
4583 Response _response;
4584 };
4585
4586 template <class T>
4589 void (T::*cb)(const ::IceStormElection::NodeInfoSeq&),
4590 void (T::*excb)(const ::Ice::Exception&),
4591 void (T::*sentcb)(bool) = 0)
4592 {
4593 return new CallbackNC_Node_nodes<T>(instance, cb, excb, sentcb);
4594 }
4595
4596 template <class T>
4599 void (T::*cb)(const ::IceStormElection::NodeInfoSeq&),
4600 void (T::*excb)(const ::Ice::Exception&),
4601 void (T::*sentcb)(bool) = 0)
4602 {
4603 return new CallbackNC_Node_nodes<T>(instance, cb, excb, sentcb);
4604 }
4605
4606 template <class T, typename CT>
4609 public ::IceInternal::TwowayCallback<T, CT>
4610 {
4611 public:
4613
4614 typedef void (T::*Exception)(const ::Ice::Exception&, const CT&);
4615 typedef void (T::*Sent)(bool, const CT&);
4616 typedef void (T::*Response)(const ::IceStormElection::NodeInfoSeq&, const CT&);
4617
4618 Callback_Node_nodes(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4619 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4620 {
4621 }
4622
4623 virtual void
4624 completed(const ::Ice::AsyncResultPtr& result) const
4625 {
4627 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4629 try
4630 {
4631 ret = proxy->end_nodes(result);
4632 }
4633 catch (const ::Ice::Exception& ex)
4634 {
4635 ::IceInternal::Callback<T, CT>::exception(result, ex);
4636 return;
4637 }
4638 if (_response)
4639 {
4640 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4641 ret, CT::dynamicCast(result->getCookie()));
4642 }
4643 }
4644
4645 private:
4646 Response _response;
4647 };
4648
4649 template <class T, typename CT>
4652 void (T::*cb)(const ::IceStormElection::NodeInfoSeq&, const CT&),
4653 void (T::*excb)(const ::Ice::Exception&, const CT&),
4654 void (T::*sentcb)(bool, const CT&) = 0)
4655 {
4656 return new Callback_Node_nodes<T, CT>(instance, cb, excb, sentcb);
4657 }
4658
4659 template <class T, typename CT>
4662 void (T::*cb)(const ::IceStormElection::NodeInfoSeq&, const CT&),
4663 void (T::*excb)(const ::Ice::Exception&, const CT&),
4664 void (T::*sentcb)(bool, const CT&) = 0)
4665 {
4666 return new Callback_Node_nodes<T, CT>(instance, cb, excb, sentcb);
4667 }
4668
4669 template <class T>
4672 public ::IceInternal::TwowayCallbackNC<T>
4673 {
4674 public:
4676
4677 typedef void (T::*Exception)(const ::Ice::Exception&);
4678 typedef void (T::*Sent)(bool);
4679 typedef void (T::*Response)(const ::IceStormElection::QueryInfo&);
4680
4681 CallbackNC_Node_query(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4682 ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
4683 {
4684 }
4685
4686 virtual void
4687 completed(const ::Ice::AsyncResultPtr& result) const
4688 {
4690 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4692 try
4693 {
4694 ret = proxy->end_query(result);
4695 }
4696 catch (const ::Ice::Exception& ex)
4697 {
4698 ::IceInternal::CallbackNC<T>::exception(result, ex);
4699 return;
4700 }
4701 if (_response)
4702 {
4703 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
4704 }
4705 }
4706
4707 private:
4708 Response _response;
4709 };
4710
4711 template <class T>
4714 void (T::*cb)(const ::IceStormElection::QueryInfo&),
4715 void (T::*excb)(const ::Ice::Exception&),
4716 void (T::*sentcb)(bool) = 0)
4717 {
4718 return new CallbackNC_Node_query<T>(instance, cb, excb, sentcb);
4719 }
4720
4721 template <class T>
4724 void (T::*cb)(const ::IceStormElection::QueryInfo&),
4725 void (T::*excb)(const ::Ice::Exception&),
4726 void (T::*sentcb)(bool) = 0)
4727 {
4728 return new CallbackNC_Node_query<T>(instance, cb, excb, sentcb);
4729 }
4730
4731 template <class T, typename CT>
4734 public ::IceInternal::TwowayCallback<T, CT>
4735 {
4736 public:
4738
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&);
4742
4743 Callback_Node_query(const TPtr& obj, Response cb, Exception excb, Sent sentcb) :
4744 ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
4745 {
4746 }
4747
4748 virtual void
4749 completed(const ::Ice::AsyncResultPtr& result) const
4750 {
4752 ::IceStormElection::NodePrx::uncheckedCast(result->getProxy());
4754 try
4755 {
4756 ret = proxy->end_query(result);
4757 }
4758 catch (const ::Ice::Exception& ex)
4759 {
4760 ::IceInternal::Callback<T, CT>::exception(result, ex);
4761 return;
4762 }
4763 if (_response)
4764 {
4765 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(
4766 ret, CT::dynamicCast(result->getCookie()));
4767 }
4768 }
4769
4770 private:
4771 Response _response;
4772 };
4773
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)
4780 {
4781 return new Callback_Node_query<T, CT>(instance, cb, excb, sentcb);
4782 }
4783
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)
4790 {
4791 return new Callback_Node_query<T, CT>(instance, cb, excb, sentcb);
4792 }
4793
4794} // namespace IceStormElection
4795
4796#endif
4797
4798#include <IceUtil/PopDisableWarnings.h>
4799#endif
::Ice::ObjectPrx sync(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2347
::Ice::AsyncResultPtr begin_nodes(const ::Ice::Context &context, const ::IceStormElection::Callback_Node_nodesPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2430
void invitation(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1902
::Ice::AsyncResultPtr begin_sync(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2353
::IceStormElection::NodeInfoSeq end_nodes(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_nodes(const ::IceStormElection::Callback_Node_nodesPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2423
::Ice::AsyncResultPtr begin_ready(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::ObjectPrx &iceP_coordinator, ::Ice::Int iceP_max, ::Ice::Long iceP_generation, const ::Ice::Context &context, const ::IceStormElection::Callback_Node_readyPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2058
::Ice::AsyncResultPtr begin_query(const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2459
::Ice::AsyncResultPtr begin_areYouCoordinator(const ::IceStormElection::Callback_Node_areYouCoordinatorPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2256
::Ice::AsyncResultPtr begin_accept(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::IntSeq &iceP_forwardedInvites, const ::Ice::ObjectPrx &iceP_observer, const ::IceStormElection::LogUpdate &iceP_llu, ::Ice::Int iceP_max, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2148
::Ice::AsyncResultPtr begin_accept(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::IntSeq &iceP_forwardedInvites, const ::Ice::ObjectPrx &iceP_observer, const ::IceStormElection::LogUpdate &iceP_llu, ::Ice::Int iceP_max, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2107
::Ice::AsyncResultPtr begin_areYouCoordinator(const ::Ice::Context &context, const ::IceStormElection::Callback_Node_areYouCoordinatorPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2263
::Ice::AsyncResultPtr begin_areYouCoordinator(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2235
void end_ready(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_areYouCoordinator(const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2241
::Ice::AsyncResultPtr begin_invitation(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1911
::Ice::AsyncResultPtr begin_sync(const ::IceStormElection::Callback_Node_syncPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2373
::Ice::AsyncResultPtr begin_areYouThere(const ::std::string &iceP_gn, ::Ice::Int iceP_j, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2307
void ready(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::ObjectPrx &iceP_coordinator, ::Ice::Int iceP_max, ::Ice::Long iceP_generation, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1969
::Ice::AsyncResultPtr begin_query(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2453
::Ice::AsyncResultPtr begin_areYouThere(const ::std::string &iceP_gn, ::Ice::Int iceP_j, const ::Ice::Context &context, const ::IceStormElection::Callback_Node_areYouTherePtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2326
void end_invitation(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_query(const ::Ice::Context &context, const ::IceStormElection::Callback_Node_queryPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2480
::Ice::AsyncResultPtr begin_areYouThere(const ::std::string &iceP_gn, ::Ice::Int iceP_j, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2298
void end_accept(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_ready(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::ObjectPrx &iceP_coordinator, ::Ice::Int iceP_max, ::Ice::Long iceP_generation, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2025
bool areYouThere(const ::std::string &iceP_gn, ::Ice::Int iceP_j, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2280
::Ice::AsyncResultPtr begin_areYouThere(const ::std::string &iceP_gn, ::Ice::Int iceP_j, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2289
::Ice::AsyncResultPtr begin_nodes(const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2409
::Ice::AsyncResultPtr begin_invitation(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::IceStormElection::Callback_Node_invitationPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1939
::Ice::AsyncResultPtr begin_areYouThere(const ::std::string &iceP_gn, ::Ice::Int iceP_j, const ::IceStormElection::Callback_Node_areYouTherePtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2317
::Ice::AsyncResultPtr begin_invitation(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1920
::IceStormElection::QueryInfo end_query(const ::Ice::AsyncResultPtr &)
::IceStormElection::QueryInfo query(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2447
::Ice::AsyncResultPtr begin_accept(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::IntSeq &iceP_forwardedInvites, const ::Ice::ObjectPrx &iceP_observer, const ::IceStormElection::LogUpdate &iceP_llu, ::Ice::Int iceP_max, const ::IceStormElection::Callback_Node_acceptPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2170
::Ice::AsyncResultPtr begin_invitation(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1929
::Ice::ObjectPrx end_sync(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_areYouCoordinator(const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2248
bool areYouCoordinator(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2228
::Ice::AsyncResultPtr begin_accept(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::IntSeq &iceP_forwardedInvites, const ::Ice::ObjectPrx &iceP_observer, const ::IceStormElection::LogUpdate &iceP_llu, ::Ice::Int iceP_max, const ::Ice::Context &context, const ::IceStormElection::Callback_Node_acceptPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2191
::Ice::AsyncResultPtr begin_ready(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::ObjectPrx &iceP_coordinator, ::Ice::Int iceP_max, ::Ice::Long iceP_generation, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2006
::IceStormElection::NodeInfoSeq nodes(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2397
::Ice::AsyncResultPtr begin_query(const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2465
::Ice::AsyncResultPtr begin_sync(const ::Ice::Context &context, const ::IceStormElection::Callback_Node_syncPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2380
::Ice::AsyncResultPtr begin_sync(const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2365
::Ice::AsyncResultPtr begin_nodes(const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2415
void accept(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::IntSeq &iceP_forwardedInvites, const ::Ice::ObjectPrx &iceP_observer, const ::IceStormElection::LogUpdate &iceP_llu, ::Ice::Int iceP_max, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2086
bool end_areYouThere(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_ready(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::ObjectPrx &iceP_coordinator, ::Ice::Int iceP_max, ::Ice::Long iceP_generation, const ::IceStormElection::Callback_Node_readyPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2039
::Ice::AsyncResultPtr begin_ready(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::ObjectPrx &iceP_coordinator, ::Ice::Int iceP_max, ::Ice::Long iceP_generation, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1988
::Ice::AsyncResultPtr begin_query(const ::IceStormElection::Callback_Node_queryPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2473
::Ice::AsyncResultPtr begin_sync(const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2359
::Ice::AsyncResultPtr begin_accept(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::IntSeq &iceP_forwardedInvites, const ::Ice::ObjectPrx &iceP_observer, const ::IceStormElection::LogUpdate &iceP_llu, ::Ice::Int iceP_max, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:2127
::Ice::AsyncResultPtr begin_invitation(::Ice::Int iceP_j, const ::std::string &iceP_gn, const ::Ice::Context &context, const ::IceStormElection::Callback_Node_invitationPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1948
bool end_areYouCoordinator(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_nodes(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:2403
::Ice::AsyncResultPtr begin_removeSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::Ice::IdentitySeq &iceP_subscribers, const ::IceStormElection::Callback_ReplicaObserver_removeSubscriberPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1791
::Ice::AsyncResultPtr begin_createTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1543
::Ice::AsyncResultPtr begin_destroyTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::IceStormElection::Callback_ReplicaObserver_destroyTopicPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1632
::Ice::AsyncResultPtr begin_removeSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::Ice::IdentitySeq &iceP_subscribers, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1779
::Ice::AsyncResultPtr begin_addSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::IceStorm::SubscriberRecord &iceP_record, const ::IceStormElection::Callback_ReplicaObserver_addSubscriberPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1706
void destroyTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1594
::Ice::AsyncResultPtr begin_destroyTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1622
::Ice::AsyncResultPtr begin_addSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::IceStorm::SubscriberRecord &iceP_record, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1694
::Ice::AsyncResultPtr begin_createTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::IceStormElection::Callback_ReplicaObserver_createTopicPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1563
void createTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1525
::Ice::AsyncResultPtr begin_createTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::Context &context, const ::IceStormElection::Callback_ReplicaObserver_createTopicPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1573
::Ice::AsyncResultPtr begin_init(const ::IceStormElection::LogUpdate &iceP_llu, const ::IceStormElection::TopicContentSeq &iceP_content, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1467
void end_addSubscriber(const ::Ice::AsyncResultPtr &)
void end_removeSubscriber(const ::Ice::AsyncResultPtr &)
void end_destroyTopic(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_removeSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::Ice::IdentitySeq &iceP_subscribers, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1768
void addSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::IceStorm::SubscriberRecord &iceP_record, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1663
::Ice::AsyncResultPtr begin_addSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::IceStorm::SubscriberRecord &iceP_record, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1673
::Ice::AsyncResultPtr begin_init(const ::IceStormElection::LogUpdate &iceP_llu, const ::IceStormElection::TopicContentSeq &iceP_content, const ::IceStormElection::Callback_ReplicaObserver_initPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1495
::Ice::AsyncResultPtr begin_init(const ::IceStormElection::LogUpdate &iceP_llu, const ::IceStormElection::TopicContentSeq &iceP_content, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1476
void end_createTopic(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_destroyTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::Context &context, const ::IceStormElection::Callback_ReplicaObserver_destroyTopicPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1642
::Ice::AsyncResultPtr begin_init(const ::IceStormElection::LogUpdate &iceP_llu, const ::IceStormElection::TopicContentSeq &iceP_content, const ::Ice::Context &context, const ::IceStormElection::Callback_ReplicaObserver_initPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1504
::Ice::AsyncResultPtr begin_destroyTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1603
::Ice::AsyncResultPtr begin_createTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1534
::Ice::AsyncResultPtr begin_addSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::IceStorm::SubscriberRecord &iceP_record, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1683
::Ice::AsyncResultPtr begin_addSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::IceStorm::SubscriberRecord &iceP_record, const ::Ice::Context &context, const ::IceStormElection::Callback_ReplicaObserver_addSubscriberPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1718
::Ice::AsyncResultPtr begin_removeSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::Ice::IdentitySeq &iceP_subscribers, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1758
void removeSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::Ice::IdentitySeq &iceP_subscribers, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1743
::Ice::AsyncResultPtr begin_removeSubscriber(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_topic, const ::Ice::IdentitySeq &iceP_subscribers, const ::Ice::Context &context, const ::IceStormElection::Callback_ReplicaObserver_removeSubscriberPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1803
void end_init(const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_init(const ::IceStormElection::LogUpdate &iceP_llu, const ::IceStormElection::TopicContentSeq &iceP_content, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1485
void init(const ::IceStormElection::LogUpdate &iceP_llu, const ::IceStormElection::TopicContentSeq &iceP_content, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1458
::Ice::AsyncResultPtr begin_createTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1553
::Ice::AsyncResultPtr begin_destroyTopic(const ::IceStormElection::LogUpdate &iceP_llu, const ::std::string &iceP_name, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1612
::Ice::AsyncResultPtr begin_getContent(const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1847
void end_getContent(::IceStormElection::LogUpdate &iceP_llu, ::IceStormElection::TopicContentSeq &iceP_content, const ::Ice::AsyncResultPtr &)
::Ice::AsyncResultPtr begin_getContent(const ::IceStormElection::Callback_TopicManagerSync_getContentPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1867
::Ice::AsyncResultPtr begin_getContent(const ::Ice::Context &context, const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1859
void getContent(::IceStormElection::LogUpdate &iceP_llu, ::IceStormElection::TopicContentSeq &iceP_content, const ::Ice::Context &context=::Ice::noExplicitContext)
Definition Election.h:1837
::Ice::AsyncResultPtr begin_getContent(const ::Ice::CallbackPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1853
::Ice::AsyncResultPtr begin_getContent(const ::Ice::Context &context, const ::IceStormElection::Callback_TopicManagerSync_getContentPtr &del, const ::Ice::LocalObjectPtr &cookie=0)
Definition Election.h:1874
CallbackNC_Node_accept(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4066
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:4062
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4187
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:4174
CallbackNC_Node_areYouCoordinator(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4178
CallbackNC_Node_areYouThere(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4306
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4312
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:4302
CallbackNC_Node_invitation(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3842
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:3838
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4562
void(T::* Response)(const ::IceStormElection::NodeInfoSeq &)
Definition Election.h:4554
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:4552
CallbackNC_Node_nodes(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4556
CallbackNC_Node_query(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4681
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4687
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:4677
void(T::* Response)(const ::IceStormElection::QueryInfo &)
Definition Election.h:4679
CallbackNC_Node_ready(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3954
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:3950
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4437
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:4427
void(T::* Response)(const ::Ice::ObjectPrx &)
Definition Election.h:4429
CallbackNC_Node_sync(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4431
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3371
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:3358
CallbackNC_ReplicaObserver_addSubscriber(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3362
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3041
CallbackNC_ReplicaObserver_createTopic(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3032
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:3028
CallbackNC_ReplicaObserver_destroyTopic(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3197
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3206
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:3193
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:2879
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:2869
CallbackNC_ReplicaObserver_init(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:2873
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3536
CallbackNC_ReplicaObserver_removeSubscriber(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3527
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3706
CallbackNC_TopicManagerSync_getContent(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3697
void(T::* Exception)(const ::Ice::Exception &)
Definition Election.h:3692
void(T::* Response)(const ::IceStormElection::LogUpdate &, const ::IceStormElection::TopicContentSeq &)
Definition Election.h:3694
void(T::* Sent)(bool, const CT &)
Definition Election.h:4119
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:4118
void(T::* Response)(const CT &)
Definition Election.h:4120
Callback_Node_accept(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4122
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4249
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:4239
Callback_Node_areYouCoordinator(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4243
Callback_Node_areYouThere(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4368
void(T::* Sent)(bool, const CT &)
Definition Election.h:4365
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4374
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:4364
void(T::* Response)(bool, const CT &)
Definition Election.h:4366
void(T::* Sent)(bool, const CT &)
Definition Election.h:3895
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:3894
Callback_Node_invitation(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3898
void(T::* Sent)(bool, const CT &)
Definition Election.h:4615
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4624
void(T::* Response)(const ::IceStormElection::NodeInfoSeq &, const CT &)
Definition Election.h:4616
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:4614
Callback_Node_nodes(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4618
void(T::* Sent)(bool, const CT &)
Definition Election.h:4740
void(T::* Response)(const ::IceStormElection::QueryInfo &, const CT &)
Definition Election.h:4741
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4749
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:4739
Callback_Node_query(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4743
void(T::* Sent)(bool, const CT &)
Definition Election.h:4007
Callback_Node_ready(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4010
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:4006
void(T::* Response)(const CT &)
Definition Election.h:4008
Callback_Node_sync(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:4493
void(T::* Sent)(bool, const CT &)
Definition Election.h:4490
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:4499
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:4489
void(T::* Response)(const ::Ice::ObjectPrx &, const CT &)
Definition Election.h:4491
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3453
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:3440
Callback_ReplicaObserver_addSubscriber(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3444
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3123
Callback_ReplicaObserver_createTopic(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3114
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:3110
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3288
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:3275
Callback_ReplicaObserver_destroyTopic(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3279
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:2958
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:2948
Callback_ReplicaObserver_init(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:2952
Callback_ReplicaObserver_removeSubscriber(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3609
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3618
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:3605
void(T::* Response)(const ::IceStormElection::LogUpdate &, const ::IceStormElection::TopicContentSeq &, const CT &)
Definition Election.h:3765
virtual void completed(const ::Ice::AsyncResultPtr &result) const
Definition Election.h:3778
void(T::* Exception)(const ::Ice::Exception &, const CT &)
Definition Election.h:3763
Callback_TopicManagerSync_getContent(const TPtr &obj, Response cb, Exception excb, Sent sentcb)
Definition Election.h:3769
Thrown if an observer detects an inconsistency.
Definition Election.ice:37
string reason
The reason for the inconsistency.
Definition Election.ice:39
virtual void _writeImpl(::Ice::OutputStream *) const
virtual ObserverInconsistencyException * ice_clone() const
virtual void _readImpl(::Ice::InputStream *)
A replica node.
Definition Election.ice:204
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
virtual void accept(::Ice::Int, const ::std::string &, const ::Ice::IntSeq &, const ::Ice::ObjectPrx &, const ::IceStormElection::LogUpdate &, ::Ice::Int, const ::Ice::Current &=::Ice::emptyCurrent)=0
virtual void ready(::Ice::Int, const ::std::string &, const ::Ice::ObjectPrx &, ::Ice::Int, ::Ice::Long, const ::Ice::Current &=::Ice::emptyCurrent)=0
idempotent Object * sync()
Get the sync object for the replica hosted by this node.
virtual bool areYouThere(const ::std::string &, ::Ice::Int, const ::Ice::Current &=::Ice::emptyCurrent) const =0
virtual bool areYouCoordinator(const ::Ice::Current &=::Ice::emptyCurrent) const =0
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::Ice::ObjectPrx sync(const ::Ice::Current &=::Ice::emptyCurrent) const =0
virtual void _iceReadImpl(::Ice::InputStream *)
idempotent NodeInfoSeq nodes()
Get the replication group information.
virtual void invitation(::Ice::Int, const ::std::string &, const ::Ice::Current &=::Ice::emptyCurrent)=0
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()
virtual::IceStormElection::NodeInfoSeq nodes(const ::Ice::Current &=::Ice::emptyCurrent) const =0
virtual::IceStormElection::QueryInfo query(const ::Ice::Current &=::Ice::emptyCurrent) const =0
idempotent bool areYouCoordinator()
Determine if this node is a coordinator.
The replica observer.
Definition Election.ice:44
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 &)
virtual void destroyTopic(const ::IceStormElection::LogUpdate &, const ::std::string &, const ::Ice::Current &=::Ice::emptyCurrent)=0
void destroyTopic(LogUpdate llu, string name)
Destroy the topic with the given name.
virtual void _iceWriteImpl(::Ice::OutputStream *) const
ReplicaObserverPtr PointerType
Definition Election.h:2511
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 void addSubscriber(const ::IceStormElection::LogUpdate &, const ::std::string &, const ::IceStorm::SubscriberRecord &, const ::Ice::Current &=::Ice::emptyCurrent)=0
virtual void createTopic(const ::IceStormElection::LogUpdate &, const ::std::string &, const ::Ice::Current &=::Ice::emptyCurrent)=0
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.
virtual void init(const ::IceStormElection::LogUpdate &, const ::IceStormElection::TopicContentSeq &, const ::Ice::Current &=::Ice::emptyCurrent)=0
virtual void removeSubscriber(const ::IceStormElection::LogUpdate &, const ::std::string &, const ::Ice::IdentitySeq &, const ::Ice::Current &=::Ice::emptyCurrent)=0
Interface used to sync topics.
Definition Election.ice:124
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
TopicManagerSyncPtr PointerType
Definition Election.h:2573
virtual ::std::vector<::std::string > ice_ids(const ::Ice::Current &=::Ice::emptyCurrent) const
TopicManagerSyncPrx ProxyType
Definition Election.h:2572
virtual void _iceReadImpl(::Ice::InputStream *)
virtual void getContent(::IceStormElection::LogUpdate &, ::IceStormElection::TopicContentSeq &, const ::Ice::Current &=::Ice::emptyCurrent)=0
virtual bool ice_isA(const ::std::string &, const ::Ice::Current &=::Ice::emptyCurrent) const
static const ::std::string & ice_staticId()
This file is part of ArmarX.
::IceProxy::Ice::Object * upCast(::IceProxy::IceStormElection::ReplicaObserver *)
void _readProxy(::Ice::InputStream *, ::IceInternal::ProxyHandle<::IceProxy::IceStormElection::ReplicaObserver > &)
Callback_ReplicaObserver_removeSubscriberPtr newCallback_ReplicaObserver_removeSubscriber(const IceUtil::Handle< T > &instance, void(T::*cb)(), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:3561
Callback_Node_acceptPtr newCallback_Node_accept(const IceUtil::Handle< T > &instance, void(T::*cb)(), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:4074
::IceUtil::Handle< Callback_Node_query_Base > Callback_Node_queryPtr
Definition Election.h:1447
::IceUtil::Handle< Callback_ReplicaObserver_destroyTopic_Base > Callback_ReplicaObserver_destroyTopicPtr
Definition Election.h:1376
Callback_Node_nodesPtr newCallback_Node_nodes(const IceUtil::Handle< T > &instance, void(T::*cb)(const ::IceStormElection::NodeInfoSeq &), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:4588
::IceUtil::Handle< Callback_Node_invitation_Base > Callback_Node_invitationPtr
Definition Election.h:1404
Callback_Node_areYouTherePtr newCallback_Node_areYouThere(const IceUtil::Handle< T > &instance, void(T::*cb)(bool), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:4338
Callback_ReplicaObserver_createTopicPtr newCallback_ReplicaObserver_createTopic(const IceUtil::Handle< T > &instance, void(T::*cb)(), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:3066
::IceUtil::Handle< Callback_ReplicaObserver_addSubscriber_Base > Callback_ReplicaObserver_addSubscriberPtr
Definition Election.h:1383
::IceUtil::Handle< Callback_Node_areYouCoordinator_Base > Callback_Node_areYouCoordinatorPtr
Definition Election.h:1423
::std::vector<::IceStormElection::GroupInfo > GroupInfoSeq
A sequence of group info.
Definition Election.h:1340
Callback_ReplicaObserver_destroyTopicPtr newCallback_ReplicaObserver_destroyTopic(const IceUtil::Handle< T > &instance, void(T::*cb)(), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:3231
::IceUtil::Handle< Callback_ReplicaObserver_removeSubscriber_Base > Callback_ReplicaObserver_removeSubscriberPtr
Definition Election.h:1391
::IceInternal::ProxyHandle<::IceProxy::IceStormElection::Node > NodePrx
Definition Election.h:1210
::IceUtil::Handle< Callback_Node_areYouThere_Base > Callback_Node_areYouTherePtr
Definition Election.h:1429
::IceInternal::ProxyHandle<::IceProxy::IceStormElection::ReplicaObserver > ReplicaObserverPrx
Definition Election.h:1195
NodeState
The node state.
Definition Election.ice:138
@ NodeStateElection
The node is electing a leader.
Definition Election.ice:142
@ NodeStateNormal
The replica group is active & replicating.
Definition Election.ice:146
@ NodeStateInactive
The node is inactive and awaiting an election.
Definition Election.ice:140
@ NodeStateReorganization
The replica group is reorganizing.
Definition Election.ice:144
ReplicaObserverPrx ReplicaObserverPrxPtr
Definition Election.h:1196
bool operator<(const ReplicaObserver &lhs, const ReplicaObserver &rhs)
Definition Election.h:2564
Callback_Node_invitationPtr newCallback_Node_invitation(const IceUtil::Handle< T > &instance, void(T::*cb)(), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:3850
::IceUtil::Handle< Callback_TopicManagerSync_getContent_Base > Callback_TopicManagerSync_getContentPtr
Definition Election.h:1398
::IceInternal::Handle<::IceStormElection::Node > NodePtr
Definition Election.h:1209
Callback_ReplicaObserver_addSubscriberPtr newCallback_ReplicaObserver_addSubscriber(const IceUtil::Handle< T > &instance, void(T::*cb)(), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:3396
::std::vector<::IceStormElection::NodeInfo > NodeInfoSeq
A sequence of node info.
Definition Election.h:1264
::IceUtil::Handle< Callback_Node_nodes_Base > Callback_Node_nodesPtr
Definition Election.h:1441
::IceUtil::Handle< Callback_Node_ready_Base > Callback_Node_readyPtr
Definition Election.h:1410
Callback_Node_queryPtr newCallback_Node_query(const IceUtil::Handle< T > &instance, void(T::*cb)(const ::IceStormElection::QueryInfo &), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:4713
TopicManagerSyncPrx TopicManagerSyncPrxPtr
Definition Election.h:1204
::IceInternal::Handle<::IceStormElection::TopicManagerSync > TopicManagerSyncPtr
Definition Election.h:1201
Callback_Node_syncPtr newCallback_Node_sync(const IceUtil::Handle< T > &instance, void(T::*cb)(const ::Ice::ObjectPrx &), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:4463
bool operator==(const ReplicaObserver &lhs, const ReplicaObserver &rhs)
Definition Election.h:2558
Callback_TopicManagerSync_getContentPtr newCallback_TopicManagerSync_getContent(const IceUtil::Handle< T > &instance, void(T::*cb)(const ::IceStormElection::LogUpdate &, const ::IceStormElection::TopicContentSeq &), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:3733
void _icePatchObjectPtr(ReplicaObserverPtr &, const ::Ice::ObjectPtr &)
::std::vector<::IceStormElection::TopicContent > TopicContentSeq
A sequence of topic content.
Definition Election.h:1225
::IceUtil::Handle< Callback_Node_accept_Base > Callback_Node_acceptPtr
Definition Election.h:1416
::IceInternal::ProxyHandle<::IceProxy::IceStormElection::TopicManagerSync > TopicManagerSyncPrx
Definition Election.h:1203
::IceUtil::Handle< Callback_Node_sync_Base > Callback_Node_syncPtr
Definition Election.h:1435
NodePrx NodePrxPtr
Definition Election.h:1211
Callback_Node_areYouCoordinatorPtr newCallback_Node_areYouCoordinator(const IceUtil::Handle< T > &instance, void(T::*cb)(bool), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:4213
::IceUtil::Handle< Callback_ReplicaObserver_init_Base > Callback_ReplicaObserver_initPtr
Definition Election.h:1362
::Ice::Object * upCast(::IceStormElection::ReplicaObserver *)
Callback_ReplicaObserver_initPtr newCallback_ReplicaObserver_init(const IceUtil::Handle< T > &instance, void(T::*cb)(), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:2904
::IceInternal::Handle<::IceStormElection::ReplicaObserver > ReplicaObserverPtr
Definition Election.h:1193
Callback_Node_readyPtr newCallback_Node_ready(const IceUtil::Handle< T > &instance, void(T::*cb)(), void(T::*excb)(const ::Ice::Exception &), void(T::*sentcb)(bool)=0)
Definition Election.h:3962
::IceUtil::Handle< Callback_ReplicaObserver_createTopic_Base > Callback_ReplicaObserver_createTopicPtr
Definition Election.h:1369
::std::vector<::IceStorm::SubscriberRecord > SubscriberRecordSeq
double v(double t, double v0, double a0, double j)
Definition CtrlUtil.h:39
void read(auto &eigen, auto *table)
bool operator>=(const GroupInfo &rhs_) const
Definition Election.h:1334
LogUpdate llu
The last known log update for this node.
Definition Election.ice:171
bool operator!=(const GroupInfo &rhs_) const
Definition Election.h:1316
int id
The identity of the node.
Definition Election.ice:169
bool operator==(const GroupInfo &rhs_) const
Definition Election.h:1272
bool operator>(const GroupInfo &rhs_) const
Definition Election.h:1328
bool operator<(const GroupInfo &rhs_) const
Definition Election.h:1290
bool operator<=(const GroupInfo &rhs_) const
Definition Election.h:1322
A struct used for marking the last log update.
Definition LLURecord.h:103
All nodes in the replication group.
Definition Election.ice:154
Node * n
The node proxy.
Definition Election.ice:158
int id
The identity of the node.
Definition Election.ice:156
NodeState state
The node state.
Definition Election.ice:192
Object * replica
The replica the node is managing.
Definition Election.ice:189
string group
The nodes group name.
Definition Election.ice:186
GroupInfoSeq up
The sequence of nodes in this nodes group.
Definition Election.ice:195
int coord
The nodes coordinator.
Definition Election.ice:183
int max
The highest priority node that this node has seen.
Definition Election.ice:198
The contents of topic.
Definition Election.ice:24
IceStorm::SubscriberRecordSeq records
The topic subscribers.
Definition Election.ice:28
Ice::Identity id
The topic identity.
Definition Election.ice:26
static void read(S *istr, ::IceStormElection::GroupInfo &v)
Definition Election.h:2809
static void read(S *istr, ::IceStormElection::NodeInfo &v)
Definition Election.h:2779
static void read(S *istr, ::IceStormElection::ObserverInconsistencyException &v)
Definition Election.h:2740
static void read(S *istr, ::IceStormElection::QueryInfo &v)
Definition Election.h:2844
static void read(S *istr, ::IceStormElection::TopicContent &v)
Definition Election.h:2713
static void write(S *ostr, const ::IceStormElection::GroupInfo &v)
Definition Election.h:2798
static void write(S *ostr, const ::IceStormElection::NodeInfo &v)
Definition Election.h:2768
static void write(S *ostr, const ::IceStormElection::ObserverInconsistencyException &v)
Definition Election.h:2730
static void write(S *ostr, const ::IceStormElection::QueryInfo &v)
Definition Election.h:2828
static void write(S *ostr, const ::IceStormElection::TopicContent &v)
Definition Election.h:2702
static const StreamHelperCategory helper
Definition Election.h:2789
static const StreamHelperCategory helper
Definition Election.h:2759
static const StreamHelperCategory helper
Definition Election.h:2749
static const StreamHelperCategory helper
Definition Election.h:2819