Ice 3.8
C++ API Reference
Loading...
Searching...
No Matches
Lookup.h
1// Copyright (c) ZeroC, Inc.
2
3// slice2cpp version 3.8.3
4// <auto-generated>Generated from Slice file 'Lookup.ice'.</auto-generated>
5// clang-format off
6
7#ifndef IceDiscovery_Lookup_h_
8#define IceDiscovery_Lookup_h_
9
11#include <Ice/Ice.h>
12#include <Ice/Identity.h>
13
14#ifndef ICE_DISABLE_VERSION
15# if ICE_INT_VERSION / 100 != 308
16# error Ice version mismatch!
17# endif
18# if ICE_INT_VERSION % 100 >= 50
19# error Beta header file detected
20# endif
21# if ICE_INT_VERSION % 100 < 3
22# error Ice patch level mismatch!
23# endif
24#endif
25
26// NOLINTBEGIN(modernize-concat-nested-namespaces)
27
28namespace IceDiscovery
29{
30 class LookupReplyPrx;
31
32 class LookupPrx;
33}
34
35namespace IceDiscovery
36{
37 /// Represents a callback object implemented by IceDiscovery clients. It allows IceDiscovery clients to receive
38 /// replies to LookupPrx requests.
39 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceDiscovery::LookupReply`.
40 class LookupReplyPrx : public Ice::Proxy<LookupReplyPrx, Ice::ObjectPrx>
41 {
42 public:
43 /// Constructs a proxy from a Communicator and a proxy string.
44 /// @param communicator The communicator of the new proxy.
45 /// @param proxyString The proxy string to parse.
46 LookupReplyPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
47
48 /// Copy constructor. Constructs with a copy of the contents of @p other.
49 /// @param other The proxy to copy from.
50 LookupReplyPrx(const LookupReplyPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
51
52 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
53 /// @param other The proxy to move from.
54 LookupReplyPrx(LookupReplyPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
55
56 ~LookupReplyPrx() override;
57
58 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
59 /// @param rhs The proxy to copy from.
60 /// @return A reference to this proxy.
62 {
63 if (this != &rhs)
64 {
66 }
67 return *this;
68 }
69
70 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
71 /// @param rhs The proxy to move from.
73 {
74 if (this != &rhs)
75 {
76 Ice::ObjectPrx::operator=(std::move(rhs));
77 }
78 return *this;
79 }
80
81 /// Provides a reply to a ::IceDiscovery::LookupPrx::findObjectById request.
82 /// @param id The identity of the object.
83 /// @param prx The proxy of the object. This proxy is never null.
84 /// @param context The request context.
85 void foundObjectById(const ::Ice::Identity& id, const std::optional<Ice::ObjectPrx>& prx, const Ice::Context& context = Ice::noExplicitContext) const;
86
87 /// Provides a reply to a ::IceDiscovery::LookupPrx::findObjectById request.
88 /// @param id The identity of the object.
89 /// @param prx The proxy of the object. This proxy is never null.
90 /// @param context The request context.
91 /// @return A future that becomes available when the invocation completes.
92 [[nodiscard]] std::future<void> foundObjectByIdAsync(const ::Ice::Identity& id, const std::optional<Ice::ObjectPrx>& prx, const Ice::Context& context = Ice::noExplicitContext) const;
93
94 /// Provides a reply to a ::IceDiscovery::LookupPrx::findObjectById request.
95 /// @param id The identity of the object.
96 /// @param prx The proxy of the object. This proxy is never null.
97 /// @param response The response callback. The Ice runtime calls this function from an Ice thread pool
98 /// thread. If you set Ice::InitializationData::executor, the executor determines the thread that executes this
99 /// function.
100 /// @param exception The exception callback. The Ice runtime calls this function from an Ice thread pool
101 /// thread. If you set Ice::InitializationData::executor, the executor determines the thread that executes this
102 /// function.
103 /// @param sent The sent callback. The Ice runtime calls this function when the request is accepted by the
104 /// transport. When the request is accepted synchronously, the Ice runtime calls this function from the current
105 /// thread and passes `true` as argument. When the request is accepted asynchronously, the Ice runtime calls
106 /// this function from an Ice thread pool thread and passes `false` as argument. If you set
107 /// Ice::InitializationData::executor, the executor determines the thread that executes this function in the
108 /// asynchronous case.
109 /// @param context The request context.
110 /// @return A function that can be called to cancel the invocation locally.
111 /// @remark When this proxy is a oneway or datagram proxy, the Ice runtime does not call the response
112 /// callback: a successful invocation completes with the sent callback. When this proxy is a batch
113 /// proxy, this function only adds the request to the batch: the Ice runtime calls none of the
114 /// callbacks, and the request is sent later, by a flush.
115 // NOLINTNEXTLINE(modernize-use-nodiscard)
116 std::function<void()> foundObjectByIdAsync(const ::Ice::Identity& id, const std::optional<Ice::ObjectPrx>& prx, std::function<void()> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
117
118 /// @private
119 void _iceI_foundObjectById(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ::Ice::Identity&, const std::optional<Ice::ObjectPrx>&, const Ice::Context&) const;
120
121 /// Provides a reply to a ::IceDiscovery::LookupPrx::findAdapterById request.
122 /// @param id The adapter ID.
123 /// @param prx The adapter proxy (a dummy proxy created by the adapter). The proxy provides the adapter
124 /// endpoints. This proxy is never null.
125 /// @param isReplicaGroup Indicates whether the adapter is a member of a replica group.
126 /// @param context The request context.
127 void foundAdapterById(std::string_view id, const std::optional<Ice::ObjectPrx>& prx, bool isReplicaGroup, const Ice::Context& context = Ice::noExplicitContext) const;
128
129 /// Provides a reply to a ::IceDiscovery::LookupPrx::findAdapterById request.
130 /// @param id The adapter ID.
131 /// @param prx The adapter proxy (a dummy proxy created by the adapter). The proxy provides the adapter
132 /// endpoints. This proxy is never null.
133 /// @param isReplicaGroup Indicates whether the adapter is a member of a replica group.
134 /// @param context The request context.
135 /// @return A future that becomes available when the invocation completes.
136 [[nodiscard]] std::future<void> foundAdapterByIdAsync(std::string_view id, const std::optional<Ice::ObjectPrx>& prx, bool isReplicaGroup, const Ice::Context& context = Ice::noExplicitContext) const;
137
138 /// Provides a reply to a ::IceDiscovery::LookupPrx::findAdapterById request.
139 /// @param id The adapter ID.
140 /// @param prx The adapter proxy (a dummy proxy created by the adapter). The proxy provides the adapter
141 /// endpoints. This proxy is never null.
142 /// @param isReplicaGroup Indicates whether the adapter is a member of a replica group.
143 /// @param response The response callback. The Ice runtime calls this function from an Ice thread pool
144 /// thread. If you set Ice::InitializationData::executor, the executor determines the thread that executes this
145 /// function.
146 /// @param exception The exception callback. The Ice runtime calls this function from an Ice thread pool
147 /// thread. If you set Ice::InitializationData::executor, the executor determines the thread that executes this
148 /// function.
149 /// @param sent The sent callback. The Ice runtime calls this function when the request is accepted by the
150 /// transport. When the request is accepted synchronously, the Ice runtime calls this function from the current
151 /// thread and passes `true` as argument. When the request is accepted asynchronously, the Ice runtime calls
152 /// this function from an Ice thread pool thread and passes `false` as argument. If you set
153 /// Ice::InitializationData::executor, the executor determines the thread that executes this function in the
154 /// asynchronous case.
155 /// @param context The request context.
156 /// @return A function that can be called to cancel the invocation locally.
157 /// @remark When this proxy is a oneway or datagram proxy, the Ice runtime does not call the response
158 /// callback: a successful invocation completes with the sent callback. When this proxy is a batch
159 /// proxy, this function only adds the request to the batch: the Ice runtime calls none of the
160 /// callbacks, and the request is sent later, by a flush.
161 // NOLINTNEXTLINE(modernize-use-nodiscard)
162 std::function<void()> foundAdapterByIdAsync(std::string_view id, const std::optional<Ice::ObjectPrx>& prx, bool isReplicaGroup, std::function<void()> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
163
164 /// @private
165 void _iceI_foundAdapterById(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const std::optional<Ice::ObjectPrx>&, bool, const Ice::Context&) const;
166
167 /// Gets the type ID of the associated Slice interface.
168 /// @return The string `"::IceDiscovery::LookupReply"`.
169 static const char* ice_staticId() noexcept;
170
171 /// @private
172 static LookupReplyPrx _fromReference(IceInternal::ReferencePtr ref) { return LookupReplyPrx{std::move(ref)}; }
173
174 protected:
175 /// @private
176 LookupReplyPrx() = default;
177
178 /// @private
179 explicit LookupReplyPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
180 {
181 }
182 };
183
184 /// Looks up objects and object adapters using UDP multicast.
185 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceDiscovery::Lookup`.
186 class LookupPrx : public Ice::Proxy<LookupPrx, Ice::ObjectPrx>
187 {
188 public:
189 /// Constructs a proxy from a Communicator and a proxy string.
190 /// @param communicator The communicator of the new proxy.
191 /// @param proxyString The proxy string to parse.
192 LookupPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
193
194 /// Copy constructor. Constructs with a copy of the contents of @p other.
195 /// @param other The proxy to copy from.
196 LookupPrx(const LookupPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
197
198 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
199 /// @param other The proxy to move from.
200 LookupPrx(LookupPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
201
202 ~LookupPrx() override;
203
204 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
205 /// @param rhs The proxy to copy from.
206 /// @return A reference to this proxy.
207 LookupPrx& operator=(const LookupPrx& rhs) noexcept
208 {
209 if (this != &rhs)
210 {
212 }
213 return *this;
214 }
215
216 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
217 /// @param rhs The proxy to move from.
219 {
220 if (this != &rhs)
221 {
222 Ice::ObjectPrx::operator=(std::move(rhs));
223 }
224 return *this;
225 }
226
227 /// Finds a well-known Ice object.
228 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
229 /// matching domain identifier.
230 /// @param id The well-known object identity.
231 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
232 /// matching object is found. The reply proxy is never null.
233 /// @param context The request context.
234 void findObjectById(std::string_view domainId, const ::Ice::Identity& id, const std::optional<LookupReplyPrx>& reply, const Ice::Context& context = Ice::noExplicitContext) const;
235
236 /// Finds a well-known Ice object.
237 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
238 /// matching domain identifier.
239 /// @param id The well-known object identity.
240 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
241 /// matching object is found. The reply proxy is never null.
242 /// @param context The request context.
243 /// @return A future that becomes available when the invocation completes.
244 [[nodiscard]] std::future<void> findObjectByIdAsync(std::string_view domainId, const ::Ice::Identity& id, const std::optional<LookupReplyPrx>& reply, const Ice::Context& context = Ice::noExplicitContext) const;
245
246 /// Finds a well-known Ice object.
247 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
248 /// matching domain identifier.
249 /// @param id The well-known object identity.
250 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
251 /// matching object is found. The reply proxy is never null.
252 /// @param response The response callback. The Ice runtime calls this function from an Ice thread pool
253 /// thread. If you set Ice::InitializationData::executor, the executor determines the thread that executes this
254 /// function.
255 /// @param exception The exception callback. The Ice runtime calls this function from an Ice thread pool
256 /// thread. If you set Ice::InitializationData::executor, the executor determines the thread that executes this
257 /// function.
258 /// @param sent The sent callback. The Ice runtime calls this function when the request is accepted by the
259 /// transport. When the request is accepted synchronously, the Ice runtime calls this function from the current
260 /// thread and passes `true` as argument. When the request is accepted asynchronously, the Ice runtime calls
261 /// this function from an Ice thread pool thread and passes `false` as argument. If you set
262 /// Ice::InitializationData::executor, the executor determines the thread that executes this function in the
263 /// asynchronous case.
264 /// @param context The request context.
265 /// @return A function that can be called to cancel the invocation locally.
266 /// @remark When this proxy is a oneway or datagram proxy, the Ice runtime does not call the response
267 /// callback: a successful invocation completes with the sent callback. When this proxy is a batch
268 /// proxy, this function only adds the request to the batch: the Ice runtime calls none of the
269 /// callbacks, and the request is sent later, by a flush.
270 // NOLINTNEXTLINE(modernize-use-nodiscard)
271 std::function<void()> findObjectByIdAsync(std::string_view domainId, const ::Ice::Identity& id, const std::optional<LookupReplyPrx>& reply, std::function<void()> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
272
273 /// @private
274 void _iceI_findObjectById(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const ::Ice::Identity&, const std::optional<LookupReplyPrx>&, const Ice::Context&) const;
275
276 /// Finds an object adapter.
277 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
278 /// matching domain identifier.
279 /// @param id The adapter ID.
280 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
281 /// matching adapter is found. The reply proxy is never null.
282 /// @param context The request context.
283 void findAdapterById(std::string_view domainId, std::string_view id, const std::optional<LookupReplyPrx>& reply, const Ice::Context& context = Ice::noExplicitContext) const;
284
285 /// Finds an object adapter.
286 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
287 /// matching domain identifier.
288 /// @param id The adapter ID.
289 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
290 /// matching adapter is found. The reply proxy is never null.
291 /// @param context The request context.
292 /// @return A future that becomes available when the invocation completes.
293 [[nodiscard]] std::future<void> findAdapterByIdAsync(std::string_view domainId, std::string_view id, const std::optional<LookupReplyPrx>& reply, const Ice::Context& context = Ice::noExplicitContext) const;
294
295 /// Finds an object adapter.
296 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
297 /// matching domain identifier.
298 /// @param id The adapter ID.
299 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
300 /// matching adapter is found. The reply proxy is never null.
301 /// @param response The response callback. The Ice runtime calls this function from an Ice thread pool
302 /// thread. If you set Ice::InitializationData::executor, the executor determines the thread that executes this
303 /// function.
304 /// @param exception The exception callback. The Ice runtime calls this function from an Ice thread pool
305 /// thread. If you set Ice::InitializationData::executor, the executor determines the thread that executes this
306 /// function.
307 /// @param sent The sent callback. The Ice runtime calls this function when the request is accepted by the
308 /// transport. When the request is accepted synchronously, the Ice runtime calls this function from the current
309 /// thread and passes `true` as argument. When the request is accepted asynchronously, the Ice runtime calls
310 /// this function from an Ice thread pool thread and passes `false` as argument. If you set
311 /// Ice::InitializationData::executor, the executor determines the thread that executes this function in the
312 /// asynchronous case.
313 /// @param context The request context.
314 /// @return A function that can be called to cancel the invocation locally.
315 /// @remark When this proxy is a oneway or datagram proxy, the Ice runtime does not call the response
316 /// callback: a successful invocation completes with the sent callback. When this proxy is a batch
317 /// proxy, this function only adds the request to the batch: the Ice runtime calls none of the
318 /// callbacks, and the request is sent later, by a flush.
319 // NOLINTNEXTLINE(modernize-use-nodiscard)
320 std::function<void()> findAdapterByIdAsync(std::string_view domainId, std::string_view id, const std::optional<LookupReplyPrx>& reply, std::function<void()> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
321
322 /// @private
323 void _iceI_findAdapterById(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, std::string_view, const std::optional<LookupReplyPrx>&, const Ice::Context&) const;
324
325 /// Gets the type ID of the associated Slice interface.
326 /// @return The string `"::IceDiscovery::Lookup"`.
327 static const char* ice_staticId() noexcept;
328
329 /// @private
330 static LookupPrx _fromReference(IceInternal::ReferencePtr ref) { return LookupPrx{std::move(ref)}; }
331
332 protected:
333 /// @private
334 LookupPrx() = default;
335
336 /// @private
337 explicit LookupPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
338 {
339 }
340 };
341}
342
343namespace IceDiscovery
344{
345 /// Represents a callback object implemented by IceDiscovery clients. It allows IceDiscovery clients to receive
346 /// replies to LookupPrx requests.
347 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceDiscovery::LookupReply`.
348 class LookupReply : public virtual Ice::Object
349 {
350 public:
351 /// The associated proxy type.
353
354 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
355 /// @param request The incoming request.
356 /// @param sendResponse The callback to send the response.
357 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
358
359 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
360
361 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
362
363 /// Provides a reply to a ::IceDiscovery::LookupPrx::findObjectById request.
364 /// @param id The identity of the object.
365 /// @param prx The proxy of the object. This proxy is never null.
366 /// @param current The Current object of the incoming request.
367 virtual void foundObjectById(::Ice::Identity id, std::optional<Ice::ObjectPrx> prx, const Ice::Current& current) = 0;
368
369 /// @private
370 void _iceD_foundObjectById(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
371
372 /// Provides a reply to a ::IceDiscovery::LookupPrx::findAdapterById request.
373 /// @param id The adapter ID.
374 /// @param prx The adapter proxy (a dummy proxy created by the adapter). The proxy provides the adapter
375 /// endpoints. This proxy is never null.
376 /// @param isReplicaGroup Indicates whether the adapter is a member of a replica group.
377 /// @param current The Current object of the incoming request.
378 virtual void foundAdapterById(std::string id, std::optional<Ice::ObjectPrx> prx, bool isReplicaGroup, const Ice::Current& current) = 0;
379
380 /// @private
381 void _iceD_foundAdapterById(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
382
383 /// Gets the type ID of the associated Slice interface.
384 /// @return The string `"::IceDiscovery::LookupReply"`.
385 static const char* ice_staticId() noexcept;
386 };
387
388 /// A shared pointer to a LookupReply.
389 using LookupReplyPtr = std::shared_ptr<LookupReply>;
390
391 /// Looks up objects and object adapters using UDP multicast.
392 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceDiscovery::Lookup`.
393 class Lookup : public virtual Ice::Object
394 {
395 public:
396 /// The associated proxy type.
398
399 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
400 /// @param request The incoming request.
401 /// @param sendResponse The callback to send the response.
402 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
403
404 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
405
406 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
407
408 /// Finds a well-known Ice object.
409 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
410 /// matching domain identifier.
411 /// @param id The well-known object identity.
412 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
413 /// matching object is found. The reply proxy is never null.
414 /// @param current The Current object of the incoming request.
415 virtual void findObjectById(std::string domainId, ::Ice::Identity id, std::optional<LookupReplyPrx> reply, const Ice::Current& current) = 0;
416
417 /// @private
418 void _iceD_findObjectById(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
419
420 /// Finds an object adapter.
421 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
422 /// matching domain identifier.
423 /// @param id The adapter ID.
424 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
425 /// matching adapter is found. The reply proxy is never null.
426 /// @param current The Current object of the incoming request.
427 virtual void findAdapterById(std::string domainId, std::string id, std::optional<LookupReplyPrx> reply, const Ice::Current& current) = 0;
428
429 /// @private
430 void _iceD_findAdapterById(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
431
432 /// Gets the type ID of the associated Slice interface.
433 /// @return The string `"::IceDiscovery::Lookup"`.
434 static const char* ice_staticId() noexcept;
435 };
436
437 /// A shared pointer to a Lookup.
438 using LookupPtr = std::shared_ptr<Lookup>;
439}
440
441namespace IceDiscovery
442{
443 /// Represents a callback object implemented by IceDiscovery clients. It allows IceDiscovery clients to receive
444 /// replies to LookupPrx requests.
445 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceDiscovery::LookupReply`.
446 class AsyncLookupReply : public virtual Ice::Object
447 {
448 public:
449 /// The associated proxy type.
451
452 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
453 /// @param request The incoming request.
454 /// @param sendResponse The callback to send the response.
455 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
456
457 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
458
459 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
460
461 /// Provides a reply to a ::IceDiscovery::LookupPrx::findObjectById request.
462 /// @param id The identity of the object.
463 /// @param prx The proxy of the object. This proxy is never null.
464 /// @param response The response callback.
465 /// @param exception The exception callback.
466 /// @param current The Current object of the incoming request.
467 virtual void foundObjectByIdAsync(::Ice::Identity id, std::optional<Ice::ObjectPrx> prx, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
468
469 /// @private
470 void _iceD_foundObjectById(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
471
472 /// Provides a reply to a ::IceDiscovery::LookupPrx::findAdapterById request.
473 /// @param id The adapter ID.
474 /// @param prx The adapter proxy (a dummy proxy created by the adapter). The proxy provides the adapter
475 /// endpoints. This proxy is never null.
476 /// @param isReplicaGroup Indicates whether the adapter is a member of a replica group.
477 /// @param response The response callback.
478 /// @param exception The exception callback.
479 /// @param current The Current object of the incoming request.
480 virtual void foundAdapterByIdAsync(std::string id, std::optional<Ice::ObjectPrx> prx, bool isReplicaGroup, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
481
482 /// @private
483 void _iceD_foundAdapterById(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
484
485 /// Gets the type ID of the associated Slice interface.
486 /// @return The string `"::IceDiscovery::LookupReply"`.
487 static const char* ice_staticId() noexcept;
488 };
489
490 /// A shared pointer to an AsyncLookupReply.
491 using AsyncLookupReplyPtr = std::shared_ptr<AsyncLookupReply>;
492
493 /// Looks up objects and object adapters using UDP multicast.
494 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceDiscovery::Lookup`.
495 class AsyncLookup : public virtual Ice::Object
496 {
497 public:
498 /// The associated proxy type.
500
501 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
502 /// @param request The incoming request.
503 /// @param sendResponse The callback to send the response.
504 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
505
506 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
507
508 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
509
510 /// Finds a well-known Ice object.
511 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
512 /// matching domain identifier.
513 /// @param id The well-known object identity.
514 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
515 /// matching object is found. The reply proxy is never null.
516 /// @param response The response callback.
517 /// @param exception The exception callback.
518 /// @param current The Current object of the incoming request.
519 virtual void findObjectByIdAsync(std::string domainId, ::Ice::Identity id, std::optional<LookupReplyPrx> reply, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
520
521 /// @private
522 void _iceD_findObjectById(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
523
524 /// Finds an object adapter.
525 /// @param domainId The IceDiscovery domain identifier. An IceDiscovery client only replies to requests with a
526 /// matching domain identifier.
527 /// @param id The adapter ID.
528 /// @param reply The proxy of the ::IceDiscovery::LookupReplyPrx interface that should be used to send the reply if a
529 /// matching adapter is found. The reply proxy is never null.
530 /// @param response The response callback.
531 /// @param exception The exception callback.
532 /// @param current The Current object of the incoming request.
533 virtual void findAdapterByIdAsync(std::string domainId, std::string id, std::optional<LookupReplyPrx> reply, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
534
535 /// @private
536 void _iceD_findAdapterById(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
537
538 /// Gets the type ID of the associated Slice interface.
539 /// @return The string `"::IceDiscovery::Lookup"`.
540 static const char* ice_staticId() noexcept;
541 };
542
543 /// A shared pointer to an AsyncLookup.
544 using AsyncLookupPtr = std::shared_ptr<AsyncLookup>;
545}
546
547// NOLINTEND(modernize-concat-nested-namespaces)
548
549#include <Ice/PopDisableWarnings.h>
550#endif
virtual void foundAdapterByIdAsync(std::string id, std::optional< Ice::ObjectPrx > prx, bool isReplicaGroup, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Provides a reply to a IceDiscovery::LookupPrx::findAdapterById request.
virtual void foundObjectByIdAsync(::Ice::Identity id, std::optional< Ice::ObjectPrx > prx, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Provides a reply to a IceDiscovery::LookupPrx::findObjectById request.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
LookupReplyPrx ProxyType
The associated proxy type.
Definition Lookup.h:450
std::vector< std::string > ice_ids(const Ice::Current &current) const override
Gets the Slice interfaces supported by this object as a list of Slice type IDs.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
void dispatch(Ice::IncomingRequest &request, std::function< void(Ice::OutgoingResponse)> sendResponse) override
Dispatches an incoming request to one of the member functions of this generated class,...
Represents a callback object implemented by IceDiscovery clients.
Definition Lookup.h:447
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
std::vector< std::string > ice_ids(const Ice::Current &current) const override
Gets the Slice interfaces supported by this object as a list of Slice type IDs.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
virtual void findObjectByIdAsync(std::string domainId, ::Ice::Identity id, std::optional< LookupReplyPrx > reply, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Finds a well-known Ice object.
LookupPrx ProxyType
The associated proxy type.
Definition Lookup.h:499
void dispatch(Ice::IncomingRequest &request, std::function< void(Ice::OutgoingResponse)> sendResponse) override
Dispatches an incoming request to one of the member functions of this generated class,...
virtual void findAdapterByIdAsync(std::string domainId, std::string id, std::optional< LookupReplyPrx > reply, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Finds an object adapter.
Looks up objects and object adapters using UDP multicast.
Definition Lookup.h:496
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
std::function< void()> findAdapterByIdAsync(std::string_view domainId, std::string_view id, const std::optional< LookupReplyPrx > &reply, std::function< void()> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Finds an object adapter.
std::future< void > findObjectByIdAsync(std::string_view domainId, const ::Ice::Identity &id, const std::optional< LookupReplyPrx > &reply, const Ice::Context &context=Ice::noExplicitContext) const
Finds a well-known Ice object.
LookupPrx(LookupPrx &&other) noexcept
Move constructor.
Definition Lookup.h:200
LookupPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Lookup.h:192
void findObjectById(std::string_view domainId, const ::Ice::Identity &id, const std::optional< LookupReplyPrx > &reply, const Ice::Context &context=Ice::noExplicitContext) const
Finds a well-known Ice object.
std::function< void()> findObjectByIdAsync(std::string_view domainId, const ::Ice::Identity &id, const std::optional< LookupReplyPrx > &reply, std::function< void()> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Finds a well-known Ice object.
LookupPrx & operator=(const LookupPrx &rhs) noexcept
Copy assignment operator.
Definition Lookup.h:207
void findAdapterById(std::string_view domainId, std::string_view id, const std::optional< LookupReplyPrx > &reply, const Ice::Context &context=Ice::noExplicitContext) const
Finds an object adapter.
LookupPrx(const LookupPrx &other) noexcept
Copy constructor.
Definition Lookup.h:196
std::future< void > findAdapterByIdAsync(std::string_view domainId, std::string_view id, const std::optional< LookupReplyPrx > &reply, const Ice::Context &context=Ice::noExplicitContext) const
Finds an object adapter.
LookupPrx & operator=(LookupPrx &&rhs) noexcept
Move assignment operator.
Definition Lookup.h:218
Looks up objects and object adapters using UDP multicast.
Definition Lookup.h:187
std::function< void()> foundObjectByIdAsync(const ::Ice::Identity &id, const std::optional< Ice::ObjectPrx > &prx, std::function< void()> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Provides a reply to a IceDiscovery::LookupPrx::findObjectById request.
LookupReplyPrx(const LookupReplyPrx &other) noexcept
Copy constructor.
Definition Lookup.h:50
std::function< void()> foundAdapterByIdAsync(std::string_view id, const std::optional< Ice::ObjectPrx > &prx, bool isReplicaGroup, std::function< void()> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Provides a reply to a IceDiscovery::LookupPrx::findAdapterById request.
void foundObjectById(const ::Ice::Identity &id, const std::optional< Ice::ObjectPrx > &prx, const Ice::Context &context=Ice::noExplicitContext) const
Provides a reply to a IceDiscovery::LookupPrx::findObjectById request.
LookupReplyPrx(LookupReplyPrx &&other) noexcept
Move constructor.
Definition Lookup.h:54
void foundAdapterById(std::string_view id, const std::optional< Ice::ObjectPrx > &prx, bool isReplicaGroup, const Ice::Context &context=Ice::noExplicitContext) const
Provides a reply to a IceDiscovery::LookupPrx::findAdapterById request.
LookupReplyPrx & operator=(LookupReplyPrx &&rhs) noexcept
Move assignment operator.
Definition Lookup.h:72
std::future< void > foundAdapterByIdAsync(std::string_view id, const std::optional< Ice::ObjectPrx > &prx, bool isReplicaGroup, const Ice::Context &context=Ice::noExplicitContext) const
Provides a reply to a IceDiscovery::LookupPrx::findAdapterById request.
LookupReplyPrx & operator=(const LookupReplyPrx &rhs) noexcept
Copy assignment operator.
Definition Lookup.h:61
std::future< void > foundObjectByIdAsync(const ::Ice::Identity &id, const std::optional< Ice::ObjectPrx > &prx, const Ice::Context &context=Ice::noExplicitContext) const
Provides a reply to a IceDiscovery::LookupPrx::findObjectById request.
LookupReplyPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Lookup.h:46
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
Represents a callback object implemented by IceDiscovery clients.
Definition Lookup.h:41
void dispatch(Ice::IncomingRequest &request, std::function< void(Ice::OutgoingResponse)> sendResponse) override
Dispatches an incoming request to one of the member functions of this generated class,...
virtual void foundAdapterById(std::string id, std::optional< Ice::ObjectPrx > prx, bool isReplicaGroup, const Ice::Current &current)=0
Provides a reply to a IceDiscovery::LookupPrx::findAdapterById request.
virtual void foundObjectById(::Ice::Identity id, std::optional< Ice::ObjectPrx > prx, const Ice::Current &current)=0
Provides a reply to a IceDiscovery::LookupPrx::findObjectById request.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
std::vector< std::string > ice_ids(const Ice::Current &current) const override
Gets the Slice interfaces supported by this object as a list of Slice type IDs.
LookupReplyPrx ProxyType
The associated proxy type.
Definition Lookup.h:352
Represents a callback object implemented by IceDiscovery clients.
Definition Lookup.h:349
void dispatch(Ice::IncomingRequest &request, std::function< void(Ice::OutgoingResponse)> sendResponse) override
Dispatches an incoming request to one of the member functions of this generated class,...
LookupPrx ProxyType
The associated proxy type.
Definition Lookup.h:397
virtual void findObjectById(std::string domainId, ::Ice::Identity id, std::optional< LookupReplyPrx > reply, const Ice::Current &current)=0
Finds a well-known Ice object.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
virtual void findAdapterById(std::string domainId, std::string id, std::optional< LookupReplyPrx > reply, const Ice::Current &current)=0
Finds an object adapter.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
std::vector< std::string > ice_ids(const Ice::Current &current) const override
Gets the Slice interfaces supported by this object as a list of Slice type IDs.
Looks up objects and object adapters using UDP multicast.
Definition Lookup.h:394
Represents a request received by a connection.
ObjectPrx & operator=(const ObjectPrx &rhs) noexcept=default
Copy assignment operator.
The base class for all Ice proxies.
Definition Proxy.h:265
Object() noexcept=default
Default constructor.
The base class for servants.
Definition Object.h:21
Represents the response to an incoming request.
Provides typed proxy functions.
Definition Proxy.h:48
std::shared_ptr< Communicator > CommunicatorPtr
A shared pointer to a Communicator.
const Context noExplicitContext
Marker value used to indicate that no explicit request context was passed to a proxy invocation.
std::map< std::string, std::string, std::less<> > Context
Represents additional information carried by an Ice request.
Definition Context.h:34
The Ice RPC framework.
Definition SampleEvent.h:66
Provides information about an incoming request being dispatched.
Definition Current.h:18
Represents the identity of an Ice object.
Definition Identity.h:47