Ice 3.8
C++ API Reference
Loading...
Searching...
No Matches
Admin.h
1// Copyright (c) ZeroC, Inc.
2
3// slice2cpp version 3.8.0
4// <auto-generated>Generated from Slice file 'Admin.ice'.</auto-generated>
5// clang-format off
6
7#ifndef IceGrid_Admin_h_
8#define IceGrid_Admin_h_
9
11#include <Ice/Ice.h>
12#include "Descriptor.h"
13#include "Exception.h"
14#include <Glacier2/Session.h>
15#include <IceGrid/Config.h>
16
17#ifndef ICE_DISABLE_VERSION
18# if ICE_INT_VERSION / 100 != 308
19# error Ice version mismatch!
20# endif
21# if ICE_INT_VERSION % 100 >= 50
22# error Beta header file detected
23# endif
24# if ICE_INT_VERSION % 100 < 0
25# error Ice patch level mismatch!
26# endif
27#endif
28
29#ifndef ICEGRID_API
30# if defined(ICEGRID_API_EXPORTS)
31# define ICEGRID_API ICE_DECLSPEC_EXPORT
32# else
33# define ICEGRID_API ICE_DECLSPEC_IMPORT
34# endif
35#endif
36
37// NOLINTBEGIN(modernize-concat-nested-namespaces)
38
39namespace IceGrid
40{
41 class RegistryPrx;
42
43 /// Represents the state of a server.
44 /// @remarks The Slice compiler generated this enum class from Slice enumeration `::IceGrid::ServerState`.
45 enum class ServerState : std::uint8_t
46 {
47 /// The server is not running.
49
50 /// The server is being activated and will change to the active state when the registered server object adapters
51 /// are activated or to the activation timed out state if the activation timeout expires.
53
54 /// The server activation timed out.
56
57 /// The server is running.
59
60 /// The server is being deactivated.
62
63 /// The server is being destroyed.
65
66 /// The server is destroyed.
68 };
69
70 /// Outputs the enumerator name or underlying value of a ServerState to a stream.
71 /// @param os The output stream.
72 /// @param value The value to output.
73 /// @return The output stream.
74 ICEGRID_API std::ostream& operator<<(std::ostream& os, ServerState value);
75
76 /// A dictionary of string to proxies.
77 using StringObjectProxyDict = std::map<std::string, std::optional<Ice::ObjectPrx>>;
78
79 struct ObjectInfo;
80
81 /// A sequence of ObjectInfo.
82 using ObjectInfoSeq = std::vector<ObjectInfo>;
83
84 struct AdapterInfo;
85
86 /// A sequence of AdapterInfo.
87 using AdapterInfoSeq = std::vector<AdapterInfo>;
88
89 struct ServerInfo;
90
91 struct NodeInfo;
92
93 struct RegistryInfo;
94
95 /// A sequence of RegistryInfo.
96 using RegistryInfoSeq = std::vector<RegistryInfo>;
97
98 struct LoadInfo;
99
100 struct ApplicationInfo;
101
102 /// A sequence of ApplicationInfo.
103 using ApplicationInfoSeq = std::vector<ApplicationInfo>;
104
106
107 class AdminPrx;
108
109 class FileIteratorPrx;
110
111 struct ServerDynamicInfo;
112
113 /// A sequence of ServerDynamicInfo.
114 using ServerDynamicInfoSeq = std::vector<ServerDynamicInfo>;
115
116 struct AdapterDynamicInfo;
117
118 /// A sequence of AdapterDynamicInfo.
119 using AdapterDynamicInfoSeq = std::vector<AdapterDynamicInfo>;
120
121 struct NodeDynamicInfo;
122
124
125 /// A sequence of NodeDynamicInfo.
126 using NodeDynamicInfoSeq = std::vector<NodeDynamicInfo>;
127
128 class NodeObserverPrx;
129
131
132 class AdapterObserverPrx;
133
134 class ObjectObserverPrx;
135
136 class AdminSessionPrx;
137}
138
139namespace IceGrid
140{
141 /// Provides administrative access to an IceGrid deployment.
142 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::Admin`.
143 /// @headerfile IceGrid/IceGrid.h
144 class ICEGRID_API AdminPrx : public Ice::Proxy<AdminPrx, Ice::ObjectPrx>
145 {
146 public:
147 /// Constructs a proxy from a Communicator and a proxy string.
148 /// @param communicator The communicator of the new proxy.
149 /// @param proxyString The proxy string to parse.
150 AdminPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
151
152 /// Copy constructor. Constructs with a copy of the contents of @p other.
153 /// @param other The proxy to copy from.
154 AdminPrx(const AdminPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
155
156 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
157 /// @param other The proxy to move from.
158 AdminPrx(AdminPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
159
160 ~AdminPrx() override;
161
162 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
163 /// @param rhs The proxy to copy from.
164 /// @return A reference to this proxy.
165 AdminPrx& operator=(const AdminPrx& rhs) noexcept
166 {
167 if (this != &rhs)
168 {
170 }
171 return *this;
172 }
173
174 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
175 /// @param rhs The proxy to move from.
176 AdminPrx& operator=(AdminPrx&& rhs) noexcept
177 {
178 if (this != &rhs)
179 {
180 Ice::ObjectPrx::operator=(std::move(rhs));
181 }
182 return *this;
183 }
184
185 /// Adds an application to IceGrid.
186 /// @param descriptor The application descriptor.
187 /// @param context The request context.
188 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
189 /// session is holding the lock.
190 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
191 void addApplication(const ApplicationDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
192
193 /// Adds an application to IceGrid.
194 /// @param descriptor The application descriptor.
195 /// @param context The request context.
196 /// @return A future that becomes available when the invocation completes.
197 [[nodiscard]] std::future<void> addApplicationAsync(const ApplicationDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
198
199 /// Adds an application to IceGrid.
200 /// @param descriptor The application descriptor.
201 /// @param response The response callback.
202 /// @param exception The exception callback.
203 /// @param sent The sent callback.
204 /// @param context The request context.
205 /// @return A function that can be called to cancel the invocation locally.
206 // NOLINTNEXTLINE(modernize-use-nodiscard)
207 std::function<void()> addApplicationAsync(const ApplicationDescriptor& descriptor, 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;
208
209 /// @private
210 void _iceI_addApplication(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationDescriptor&, const Ice::Context&) const;
211
212 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
213 /// @param descriptor The new application descriptor.
214 /// @param context The request context.
215 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
216 /// session is holding the lock.
217 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
218 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
219 void syncApplication(const ApplicationDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
220
221 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
222 /// @param descriptor The new application descriptor.
223 /// @param context The request context.
224 /// @return A future that becomes available when the invocation completes.
225 [[nodiscard]] std::future<void> syncApplicationAsync(const ApplicationDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
226
227 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
228 /// @param descriptor The new application descriptor.
229 /// @param response The response callback.
230 /// @param exception The exception callback.
231 /// @param sent The sent callback.
232 /// @param context The request context.
233 /// @return A function that can be called to cancel the invocation locally.
234 // NOLINTNEXTLINE(modernize-use-nodiscard)
235 std::function<void()> syncApplicationAsync(const ApplicationDescriptor& descriptor, 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;
236
237 /// @private
238 void _iceI_syncApplication(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationDescriptor&, const Ice::Context&) const;
239
240 /// Updates a deployed application.
241 /// @param descriptor The update descriptor.
242 /// @param context The request context.
243 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
244 /// session is holding the lock.
245 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
246 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
248
249 /// Updates a deployed application.
250 /// @param descriptor The update descriptor.
251 /// @param context The request context.
252 /// @return A future that becomes available when the invocation completes.
253 [[nodiscard]] std::future<void> updateApplicationAsync(const ApplicationUpdateDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
254
255 /// Updates a deployed application.
256 /// @param descriptor The update descriptor.
257 /// @param response The response callback.
258 /// @param exception The exception callback.
259 /// @param sent The sent callback.
260 /// @param context The request context.
261 /// @return A function that can be called to cancel the invocation locally.
262 // NOLINTNEXTLINE(modernize-use-nodiscard)
263 std::function<void()> updateApplicationAsync(const ApplicationUpdateDescriptor& descriptor, 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;
264
265 /// @private
266 void _iceI_updateApplication(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationUpdateDescriptor&, const Ice::Context&) const;
267
268 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
269 /// only if no server restarts are necessary for the update of the application. If some servers need to be
270 /// restarted, the synchronization is rejected with a DeploymentException.
271 /// @param descriptor The application descriptor.
272 /// @param context The request context.
273 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
274 /// session is holding the lock.
275 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
276 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
278
279 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
280 /// only if no server restarts are necessary for the update of the application. If some servers need to be
281 /// restarted, the synchronization is rejected with a DeploymentException.
282 /// @param descriptor The application descriptor.
283 /// @param context The request context.
284 /// @return A future that becomes available when the invocation completes.
285 [[nodiscard]] std::future<void> syncApplicationWithoutRestartAsync(const ApplicationDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
286
287 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
288 /// only if no server restarts are necessary for the update of the application. If some servers need to be
289 /// restarted, the synchronization is rejected with a DeploymentException.
290 /// @param descriptor The application descriptor.
291 /// @param response The response callback.
292 /// @param exception The exception callback.
293 /// @param sent The sent callback.
294 /// @param context The request context.
295 /// @return A function that can be called to cancel the invocation locally.
296 // NOLINTNEXTLINE(modernize-use-nodiscard)
297 std::function<void()> syncApplicationWithoutRestartAsync(const ApplicationDescriptor& descriptor, 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;
298
299 /// @private
300 void _iceI_syncApplicationWithoutRestart(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationDescriptor&, const Ice::Context&) const;
301
302 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
303 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
304 /// DeploymentException.
305 /// @param descriptor The update descriptor.
306 /// @param context The request context.
307 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
308 /// session is holding the lock.
309 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
310 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
312
313 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
314 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
315 /// DeploymentException.
316 /// @param descriptor The update descriptor.
317 /// @param context The request context.
318 /// @return A future that becomes available when the invocation completes.
319 [[nodiscard]] std::future<void> updateApplicationWithoutRestartAsync(const ApplicationUpdateDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
320
321 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
322 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
323 /// DeploymentException.
324 /// @param descriptor The update descriptor.
325 /// @param response The response callback.
326 /// @param exception The exception callback.
327 /// @param sent The sent callback.
328 /// @param context The request context.
329 /// @return A function that can be called to cancel the invocation locally.
330 // NOLINTNEXTLINE(modernize-use-nodiscard)
331 std::function<void()> updateApplicationWithoutRestartAsync(const ApplicationUpdateDescriptor& descriptor, 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;
332
333 /// @private
334 void _iceI_updateApplicationWithoutRestart(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationUpdateDescriptor&, const Ice::Context&) const;
335
336 /// Removes an application from IceGrid.
337 /// @param name The application name.
338 /// @param context The request context.
339 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
340 /// session is holding the lock.
341 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
342 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
343 void removeApplication(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
344
345 /// Removes an application from IceGrid.
346 /// @param name The application name.
347 /// @param context The request context.
348 /// @return A future that becomes available when the invocation completes.
349 [[nodiscard]] std::future<void> removeApplicationAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
350
351 /// Removes an application from IceGrid.
352 /// @param name The application name.
353 /// @param response The response callback.
354 /// @param exception The exception callback.
355 /// @param sent The sent callback.
356 /// @param context The request context.
357 /// @return A function that can be called to cancel the invocation locally.
358 // NOLINTNEXTLINE(modernize-use-nodiscard)
359 std::function<void()> removeApplicationAsync(std::string_view name, 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;
360
361 /// @private
362 void _iceI_removeApplication(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
363
364 /// Instantiates a server template.
365 /// @param application The application name.
366 /// @param node The name of the node where the server will be deployed.
367 /// @param desc The descriptor of the server instance to deploy.
368 /// @param context The request context.
369 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
370 /// session is holding the lock.
371 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
372 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
373 void instantiateServer(std::string_view application, std::string_view node, const ServerInstanceDescriptor& desc, const Ice::Context& context = Ice::noExplicitContext) const;
374
375 /// Instantiates a server template.
376 /// @param application The application name.
377 /// @param node The name of the node where the server will be deployed.
378 /// @param desc The descriptor of the server instance to deploy.
379 /// @param context The request context.
380 /// @return A future that becomes available when the invocation completes.
381 [[nodiscard]] std::future<void> instantiateServerAsync(std::string_view application, std::string_view node, const ServerInstanceDescriptor& desc, const Ice::Context& context = Ice::noExplicitContext) const;
382
383 /// Instantiates a server template.
384 /// @param application The application name.
385 /// @param node The name of the node where the server will be deployed.
386 /// @param desc The descriptor of the server instance to deploy.
387 /// @param response The response callback.
388 /// @param exception The exception callback.
389 /// @param sent The sent callback.
390 /// @param context The request context.
391 /// @return A function that can be called to cancel the invocation locally.
392 // NOLINTNEXTLINE(modernize-use-nodiscard)
393 std::function<void()> instantiateServerAsync(std::string_view application, std::string_view node, const ServerInstanceDescriptor& desc, 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;
394
395 /// @private
396 void _iceI_instantiateServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, std::string_view, const ServerInstanceDescriptor&, const Ice::Context&) const;
397
398 /// Gets an application descriptor.
399 /// @param name The application name.
400 /// @param context The request context.
401 /// @return The application descriptor.
402 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
403 ApplicationInfo getApplicationInfo(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
404
405 /// Gets an application descriptor.
406 /// @param name The application name.
407 /// @param context The request context.
408 /// @return A future that becomes available when the invocation completes. This future holds:
409 /// - The application descriptor.
410 [[nodiscard]] std::future<ApplicationInfo> getApplicationInfoAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
411
412 /// Gets an application descriptor.
413 /// @param name The application name.
414 /// @param response The response callback. It accepts:
415 /// - The application descriptor.
416 /// @param exception The exception callback.
417 /// @param sent The sent callback.
418 /// @param context The request context.
419 /// @return A function that can be called to cancel the invocation locally.
420 // NOLINTNEXTLINE(modernize-use-nodiscard)
421 std::function<void()> getApplicationInfoAsync(std::string_view name, std::function<void(::IceGrid::ApplicationInfo)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
422
423 /// @private
424 void _iceI_getApplicationInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<ApplicationInfo>>&, std::string_view, const Ice::Context&) const;
425
426 /// Gets the default application descriptor.
427 /// @param context The request context.
428 /// @return The default application descriptor.
429 /// @throws IceGrid::DeploymentException Thrown when the default application descriptor is invalid or unreachable.
430 ApplicationDescriptor getDefaultApplicationDescriptor(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
431
432 /// Gets the default application descriptor.
433 /// @param context The request context.
434 /// @return A future that becomes available when the invocation completes. This future holds:
435 /// - The default application descriptor.
436 [[nodiscard]] std::future<ApplicationDescriptor> getDefaultApplicationDescriptorAsync(const Ice::Context& context = Ice::noExplicitContext) const;
437
438 /// Gets the default application descriptor.
439 /// @param response The response callback. It accepts:
440 /// - The default application descriptor.
441 /// @param exception The exception callback.
442 /// @param sent The sent callback.
443 /// @param context The request context.
444 /// @return A function that can be called to cancel the invocation locally.
445 // NOLINTNEXTLINE(modernize-use-nodiscard)
446 std::function<void()> getDefaultApplicationDescriptorAsync(std::function<void(::IceGrid::ApplicationDescriptor)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
447
448 /// @private
449 void _iceI_getDefaultApplicationDescriptor(const std::shared_ptr<IceInternal::OutgoingAsyncT<ApplicationDescriptor>>&, const Ice::Context&) const;
450
451 /// Gets all the IceGrid applications currently registered.
452 /// @param context The request context.
453 /// @return The application names.
454 ::Ice::StringSeq getAllApplicationNames(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
455
456 /// Gets all the IceGrid applications currently registered.
457 /// @param context The request context.
458 /// @return A future that becomes available when the invocation completes. This future holds:
459 /// - The application names.
460 [[nodiscard]] std::future<::Ice::StringSeq> getAllApplicationNamesAsync(const Ice::Context& context = Ice::noExplicitContext) const;
461
462 /// Gets all the IceGrid applications currently registered.
463 /// @param response The response callback. It accepts:
464 /// - The application names.
465 /// @param exception The exception callback.
466 /// @param sent The sent callback.
467 /// @param context The request context.
468 /// @return A function that can be called to cancel the invocation locally.
469 // NOLINTNEXTLINE(modernize-use-nodiscard)
470 std::function<void()> getAllApplicationNamesAsync(std::function<void(::Ice::StringSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
471
472 /// @private
473 void _iceI_getAllApplicationNames(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
474
475 /// Gets information about a server.
476 /// @param id The server ID.
477 /// @param context The request context.
478 /// @return The server information.
479 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
480 ServerInfo getServerInfo(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
481
482 /// Gets information about a server.
483 /// @param id The server ID.
484 /// @param context The request context.
485 /// @return A future that becomes available when the invocation completes. This future holds:
486 /// - The server information.
487 [[nodiscard]] std::future<ServerInfo> getServerInfoAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
488
489 /// Gets information about a server.
490 /// @param id The server ID.
491 /// @param response The response callback. It accepts:
492 /// - The server information.
493 /// @param exception The exception callback.
494 /// @param sent The sent callback.
495 /// @param context The request context.
496 /// @return A function that can be called to cancel the invocation locally.
497 // NOLINTNEXTLINE(modernize-use-nodiscard)
498 std::function<void()> getServerInfoAsync(std::string_view id, std::function<void(::IceGrid::ServerInfo)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
499
500 /// @private
501 void _iceI_getServerInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<ServerInfo>>&, std::string_view, const Ice::Context&) const;
502
503 /// Gets the state of a server.
504 /// @param id The server ID.
505 /// @param context The request context.
506 /// @return The server state.
507 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
508 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
509 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
510 ServerState getServerState(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
511
512 /// Gets the state of a server.
513 /// @param id The server ID.
514 /// @param context The request context.
515 /// @return A future that becomes available when the invocation completes. This future holds:
516 /// - The server state.
517 [[nodiscard]] std::future<ServerState> getServerStateAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
518
519 /// Gets the state of a server.
520 /// @param id The server ID.
521 /// @param response The response callback. It accepts:
522 /// - The server state.
523 /// @param exception The exception callback.
524 /// @param sent The sent callback.
525 /// @param context The request context.
526 /// @return A function that can be called to cancel the invocation locally.
527 // NOLINTNEXTLINE(modernize-use-nodiscard)
528 std::function<void()> getServerStateAsync(std::string_view id, std::function<void(::IceGrid::ServerState)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
529
530 /// @private
531 void _iceI_getServerState(const std::shared_ptr<IceInternal::OutgoingAsyncT<ServerState>>&, std::string_view, const Ice::Context&) const;
532
533 /// Gets the system process ID of a server. The process ID is operating system dependent.
534 /// @param id The server ID.
535 /// @param context The request context.
536 /// @return The process ID.
537 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
538 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
539 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
540 std::int32_t getServerPid(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
541
542 /// Gets the system process ID of a server. The process ID is operating system dependent.
543 /// @param id The server ID.
544 /// @param context The request context.
545 /// @return A future that becomes available when the invocation completes. This future holds:
546 /// - The process ID.
547 [[nodiscard]] std::future<std::int32_t> getServerPidAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
548
549 /// Gets the system process ID of a server. The process ID is operating system dependent.
550 /// @param id The server ID.
551 /// @param response The response callback. It accepts:
552 /// - The process ID.
553 /// @param exception The exception callback.
554 /// @param sent The sent callback.
555 /// @param context The request context.
556 /// @return A function that can be called to cancel the invocation locally.
557 // NOLINTNEXTLINE(modernize-use-nodiscard)
558 std::function<void()> getServerPidAsync(std::string_view id, std::function<void(std::int32_t)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
559
560 /// @private
561 void _iceI_getServerPid(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::int32_t>>&, std::string_view, const Ice::Context&) const;
562
563 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
564 /// changing its identity: use the server ID as name and the returned category as category.
565 /// @param context The request context.
566 /// @return The category for server admin objects.
567 std::string getServerAdminCategory(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
568
569 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
570 /// changing its identity: use the server ID as name and the returned category as category.
571 /// @param context The request context.
572 /// @return A future that becomes available when the invocation completes. This future holds:
573 /// - The category for server admin objects.
574 [[nodiscard]] std::future<std::string> getServerAdminCategoryAsync(const Ice::Context& context = Ice::noExplicitContext) const;
575
576 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
577 /// changing its identity: use the server ID as name and the returned category as category.
578 /// @param response The response callback. It accepts:
579 /// - The category for server admin objects.
580 /// @param exception The exception callback.
581 /// @param sent The sent callback.
582 /// @param context The request context.
583 /// @return A function that can be called to cancel the invocation locally.
584 // NOLINTNEXTLINE(modernize-use-nodiscard)
585 std::function<void()> getServerAdminCategoryAsync(std::function<void(std::string)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
586
587 /// @private
588 void _iceI_getServerAdminCategory(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::string>>&, const Ice::Context&) const;
589
590 /// Gets a proxy to the admin object of a server.
591 /// @param id The server ID.
592 /// @param context The request context.
593 /// @return A proxy to the admin object of the server. This proxy is never null.
594 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
595 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
596 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
597 std::optional<Ice::ObjectPrx> getServerAdmin(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
598
599 /// Gets a proxy to the admin object of a server.
600 /// @param id The server ID.
601 /// @param context The request context.
602 /// @return A future that becomes available when the invocation completes. This future holds:
603 /// - A proxy to the admin object of the server. This proxy is never null.
604 [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getServerAdminAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
605
606 /// Gets a proxy to the admin object of a server.
607 /// @param id The server ID.
608 /// @param response The response callback. It accepts:
609 /// - A proxy to the admin object of the server. This proxy is never null.
610 /// @param exception The exception callback.
611 /// @param sent The sent callback.
612 /// @param context The request context.
613 /// @return A function that can be called to cancel the invocation locally.
614 // NOLINTNEXTLINE(modernize-use-nodiscard)
615 std::function<void()> getServerAdminAsync(std::string_view id, std::function<void(std::optional<Ice::ObjectPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
616
617 /// @private
618 void _iceI_getServerAdmin(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, std::string_view, const Ice::Context&) const;
619
620 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
621 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
622 /// default.
623 /// @param id The server ID.
624 /// @param enabled `true` to enable the server, `false` to disable it.
625 /// @param context The request context.
626 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
627 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
628 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
629 void enableServer(std::string_view id, bool enabled, const Ice::Context& context = Ice::noExplicitContext) const;
630
631 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
632 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
633 /// default.
634 /// @param id The server ID.
635 /// @param enabled `true` to enable the server, `false` to disable it.
636 /// @param context The request context.
637 /// @return A future that becomes available when the invocation completes.
638 [[nodiscard]] std::future<void> enableServerAsync(std::string_view id, bool enabled, const Ice::Context& context = Ice::noExplicitContext) const;
639
640 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
641 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
642 /// default.
643 /// @param id The server ID.
644 /// @param enabled `true` to enable the server, `false` to disable it.
645 /// @param response The response callback.
646 /// @param exception The exception callback.
647 /// @param sent The sent callback.
648 /// @param context The request context.
649 /// @return A function that can be called to cancel the invocation locally.
650 // NOLINTNEXTLINE(modernize-use-nodiscard)
651 std::function<void()> enableServerAsync(std::string_view id, bool enabled, 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;
652
653 /// @private
654 void _iceI_enableServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, bool, const Ice::Context&) const;
655
656 /// Checks if the server is enabled or disabled.
657 /// @param id The server ID.
658 /// @param context The request context.
659 /// @return `true` if the server is enabled, `false` otherwise.
660 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
661 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
662 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
663 bool isServerEnabled(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
664
665 /// Checks if the server is enabled or disabled.
666 /// @param id The server ID.
667 /// @param context The request context.
668 /// @return A future that becomes available when the invocation completes. This future holds:
669 /// - `true` if the server is enabled, `false` otherwise.
670 [[nodiscard]] std::future<bool> isServerEnabledAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
671
672 /// Checks if the server is enabled or disabled.
673 /// @param id The server ID.
674 /// @param response The response callback. It accepts:
675 /// - `true` if the server is enabled, `false` otherwise.
676 /// @param exception The exception callback.
677 /// @param sent The sent callback.
678 /// @param context The request context.
679 /// @return A function that can be called to cancel the invocation locally.
680 // NOLINTNEXTLINE(modernize-use-nodiscard)
681 std::function<void()> isServerEnabledAsync(std::string_view id, std::function<void(bool)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
682
683 /// @private
684 void _iceI_isServerEnabled(const std::shared_ptr<IceInternal::OutgoingAsyncT<bool>>&, std::string_view, const Ice::Context&) const;
685
686 /// Starts a server and waits for its activation.
687 /// @param id The server id.
688 /// @param context The request context.
689 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
690 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
691 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
692 /// @throws IceGrid::ServerStartException Thrown when the server startup failed.
693 void startServer(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
694
695 /// Starts a server and waits for its activation.
696 /// @param id The server id.
697 /// @param context The request context.
698 /// @return A future that becomes available when the invocation completes.
699 [[nodiscard]] std::future<void> startServerAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
700
701 /// Starts a server and waits for its activation.
702 /// @param id The server id.
703 /// @param response The response callback.
704 /// @param exception The exception callback.
705 /// @param sent The sent callback.
706 /// @param context The request context.
707 /// @return A function that can be called to cancel the invocation locally.
708 // NOLINTNEXTLINE(modernize-use-nodiscard)
709 std::function<void()> startServerAsync(std::string_view id, 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;
710
711 /// @private
712 void _iceI_startServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
713
714 /// Stops a server.
715 /// @param id The server ID.
716 /// @param context The request context.
717 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
718 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
719 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
720 /// @throws IceGrid::ServerStopException Thrown when the server stop failed.
721 void stopServer(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
722
723 /// Stops a server.
724 /// @param id The server ID.
725 /// @param context The request context.
726 /// @return A future that becomes available when the invocation completes.
727 [[nodiscard]] std::future<void> stopServerAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
728
729 /// Stops a server.
730 /// @param id The server ID.
731 /// @param response The response callback.
732 /// @param exception The exception callback.
733 /// @param sent The sent callback.
734 /// @param context The request context.
735 /// @return A function that can be called to cancel the invocation locally.
736 // NOLINTNEXTLINE(modernize-use-nodiscard)
737 std::function<void()> stopServerAsync(std::string_view id, 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;
738
739 /// @private
740 void _iceI_stopServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
741
742 /// Sends a signal to a server.
743 /// @param id The server ID.
744 /// @param signal The signal, for example SIGTERM or 15.
745 /// @param context The request context.
746 /// @throws IceGrid::BadSignalException Thrown when the signal is not recognized by the target server.
747 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
748 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
749 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
750 void sendSignal(std::string_view id, std::string_view signal, const Ice::Context& context = Ice::noExplicitContext) const;
751
752 /// Sends a signal to a server.
753 /// @param id The server ID.
754 /// @param signal The signal, for example SIGTERM or 15.
755 /// @param context The request context.
756 /// @return A future that becomes available when the invocation completes.
757 [[nodiscard]] std::future<void> sendSignalAsync(std::string_view id, std::string_view signal, const Ice::Context& context = Ice::noExplicitContext) const;
758
759 /// Sends a signal to a server.
760 /// @param id The server ID.
761 /// @param signal The signal, for example SIGTERM or 15.
762 /// @param response The response callback.
763 /// @param exception The exception callback.
764 /// @param sent The sent callback.
765 /// @param context The request context.
766 /// @return A function that can be called to cancel the invocation locally.
767 // NOLINTNEXTLINE(modernize-use-nodiscard)
768 std::function<void()> sendSignalAsync(std::string_view id, std::string_view signal, 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;
769
770 /// @private
771 void _iceI_sendSignal(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, std::string_view, const Ice::Context&) const;
772
773 /// Gets the IDs of all the servers registered with IceGrid.
774 /// @param context The request context.
775 /// @return The server IDs.
776 ::Ice::StringSeq getAllServerIds(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
777
778 /// Gets the IDs of all the servers registered with IceGrid.
779 /// @param context The request context.
780 /// @return A future that becomes available when the invocation completes. This future holds:
781 /// - The server IDs.
782 [[nodiscard]] std::future<::Ice::StringSeq> getAllServerIdsAsync(const Ice::Context& context = Ice::noExplicitContext) const;
783
784 /// Gets the IDs of all the servers registered with IceGrid.
785 /// @param response The response callback. It accepts:
786 /// - The server IDs.
787 /// @param exception The exception callback.
788 /// @param sent The sent callback.
789 /// @param context The request context.
790 /// @return A function that can be called to cancel the invocation locally.
791 // NOLINTNEXTLINE(modernize-use-nodiscard)
792 std::function<void()> getAllServerIdsAsync(std::function<void(::Ice::StringSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
793
794 /// @private
795 void _iceI_getAllServerIds(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
796
797 /// Gets adapter information for the replica group or adapter with the given ID.
798 /// @param id The adapter or replica group ID.
799 /// @param context The request context.
800 /// @return A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
801 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
802 /// replica group.
803 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter or replica group doesn't exist.
804 AdapterInfoSeq getAdapterInfo(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
805
806 /// Gets adapter information for the replica group or adapter with the given ID.
807 /// @param id The adapter or replica group ID.
808 /// @param context The request context.
809 /// @return A future that becomes available when the invocation completes. This future holds:
810 /// - A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
811 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
812 /// replica group.
813 [[nodiscard]] std::future<AdapterInfoSeq> getAdapterInfoAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
814
815 /// Gets adapter information for the replica group or adapter with the given ID.
816 /// @param id The adapter or replica group ID.
817 /// @param response The response callback. It accepts:
818 /// - A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
819 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
820 /// replica group.
821 /// @param exception The exception callback.
822 /// @param sent The sent callback.
823 /// @param context The request context.
824 /// @return A function that can be called to cancel the invocation locally.
825 // NOLINTNEXTLINE(modernize-use-nodiscard)
826 std::function<void()> getAdapterInfoAsync(std::string_view id, std::function<void(::IceGrid::AdapterInfoSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
827
828 /// @private
829 void _iceI_getAdapterInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<AdapterInfoSeq>>&, std::string_view, const Ice::Context&) const;
830
831 /// Removes the adapter with the given ID.
832 /// @param id The adapter ID.
833 /// @param context The request context.
834 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter doesn't exist.
835 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
836 void removeAdapter(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
837
838 /// Removes the adapter with the given ID.
839 /// @param id The adapter ID.
840 /// @param context The request context.
841 /// @return A future that becomes available when the invocation completes.
842 [[nodiscard]] std::future<void> removeAdapterAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
843
844 /// Removes the adapter with the given ID.
845 /// @param id The adapter ID.
846 /// @param response The response callback.
847 /// @param exception The exception callback.
848 /// @param sent The sent callback.
849 /// @param context The request context.
850 /// @return A function that can be called to cancel the invocation locally.
851 // NOLINTNEXTLINE(modernize-use-nodiscard)
852 std::function<void()> removeAdapterAsync(std::string_view id, 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;
853
854 /// @private
855 void _iceI_removeAdapter(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
856
857 /// Gets the IDs of all adapters registered with IceGrid.
858 /// @param context The request context.
859 /// @return The adapter IDs.
860 ::Ice::StringSeq getAllAdapterIds(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
861
862 /// Gets the IDs of all adapters registered with IceGrid.
863 /// @param context The request context.
864 /// @return A future that becomes available when the invocation completes. This future holds:
865 /// - The adapter IDs.
866 [[nodiscard]] std::future<::Ice::StringSeq> getAllAdapterIdsAsync(const Ice::Context& context = Ice::noExplicitContext) const;
867
868 /// Gets the IDs of all adapters registered with IceGrid.
869 /// @param response The response callback. It accepts:
870 /// - The adapter IDs.
871 /// @param exception The exception callback.
872 /// @param sent The sent callback.
873 /// @param context The request context.
874 /// @return A function that can be called to cancel the invocation locally.
875 // NOLINTNEXTLINE(modernize-use-nodiscard)
876 std::function<void()> getAllAdapterIdsAsync(std::function<void(::Ice::StringSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
877
878 /// @private
879 void _iceI_getAllAdapterIds(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
880
881 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
882 /// object must be reachable.
883 /// @param obj A proxy to the object. This proxy is never null.
884 /// @param context The request context.
885 /// @throws IceGrid::DeploymentException Thrown when the object can't be added.
886 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
887 void addObject(const std::optional<Ice::ObjectPrx>& obj, const Ice::Context& context = Ice::noExplicitContext) const;
888
889 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
890 /// object must be reachable.
891 /// @param obj A proxy to the object. This proxy is never null.
892 /// @param context The request context.
893 /// @return A future that becomes available when the invocation completes.
894 [[nodiscard]] std::future<void> addObjectAsync(const std::optional<Ice::ObjectPrx>& obj, const Ice::Context& context = Ice::noExplicitContext) const;
895
896 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
897 /// object must be reachable.
898 /// @param obj A proxy to the object. This proxy is never null.
899 /// @param response The response callback.
900 /// @param exception The exception callback.
901 /// @param sent The sent callback.
902 /// @param context The request context.
903 /// @return A function that can be called to cancel the invocation locally.
904 // NOLINTNEXTLINE(modernize-use-nodiscard)
905 std::function<void()> addObjectAsync(const std::optional<Ice::ObjectPrx>& obj, 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;
906
907 /// @private
908 void _iceI_addObject(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const std::optional<Ice::ObjectPrx>&, const Ice::Context&) const;
909
910 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
911 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
912 /// @param obj A proxy to the object. This proxy is never null.
913 /// @param context The request context.
914 /// @throws IceGrid::DeploymentException Thrown when the object can't be updated.
915 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
916 void updateObject(const std::optional<Ice::ObjectPrx>& obj, const Ice::Context& context = Ice::noExplicitContext) const;
917
918 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
919 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
920 /// @param obj A proxy to the object. This proxy is never null.
921 /// @param context The request context.
922 /// @return A future that becomes available when the invocation completes.
923 [[nodiscard]] std::future<void> updateObjectAsync(const std::optional<Ice::ObjectPrx>& obj, const Ice::Context& context = Ice::noExplicitContext) const;
924
925 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
926 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
927 /// @param obj A proxy to the object. This proxy is never null.
928 /// @param response The response callback.
929 /// @param exception The exception callback.
930 /// @param sent The sent callback.
931 /// @param context The request context.
932 /// @return A function that can be called to cancel the invocation locally.
933 // NOLINTNEXTLINE(modernize-use-nodiscard)
934 std::function<void()> updateObjectAsync(const std::optional<Ice::ObjectPrx>& obj, 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;
935
936 /// @private
937 void _iceI_updateObject(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const std::optional<Ice::ObjectPrx>&, const Ice::Context&) const;
938
939 /// Adds an object to the object registry and explicitly specifies its type.
940 /// @param obj The object to be added to the registry. The proxy is never null.
941 /// @param type The type name.
942 /// @param context The request context.
943 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
944 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
945 void addObjectWithType(const std::optional<Ice::ObjectPrx>& obj, std::string_view type, const Ice::Context& context = Ice::noExplicitContext) const;
946
947 /// Adds an object to the object registry and explicitly specifies its type.
948 /// @param obj The object to be added to the registry. The proxy is never null.
949 /// @param type The type name.
950 /// @param context The request context.
951 /// @return A future that becomes available when the invocation completes.
952 [[nodiscard]] std::future<void> addObjectWithTypeAsync(const std::optional<Ice::ObjectPrx>& obj, std::string_view type, const Ice::Context& context = Ice::noExplicitContext) const;
953
954 /// Adds an object to the object registry and explicitly specifies its type.
955 /// @param obj The object to be added to the registry. The proxy is never null.
956 /// @param type The type name.
957 /// @param response The response callback.
958 /// @param exception The exception callback.
959 /// @param sent The sent callback.
960 /// @param context The request context.
961 /// @return A function that can be called to cancel the invocation locally.
962 // NOLINTNEXTLINE(modernize-use-nodiscard)
963 std::function<void()> addObjectWithTypeAsync(const std::optional<Ice::ObjectPrx>& obj, std::string_view type, 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;
964
965 /// @private
966 void _iceI_addObjectWithType(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const std::optional<Ice::ObjectPrx>&, std::string_view, const Ice::Context&) const;
967
968 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
969 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
970 /// @param id The identity of the object to remove.
971 /// @param context The request context.
972 /// @throws IceGrid::DeploymentException Thrown when the object can't be removed.
973 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
974 void removeObject(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
975
976 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
977 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
978 /// @param id The identity of the object to remove.
979 /// @param context The request context.
980 /// @return A future that becomes available when the invocation completes.
981 [[nodiscard]] std::future<void> removeObjectAsync(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
982
983 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
984 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
985 /// @param id The identity of the object to remove.
986 /// @param response The response callback.
987 /// @param exception The exception callback.
988 /// @param sent The sent callback.
989 /// @param context The request context.
990 /// @return A function that can be called to cancel the invocation locally.
991 // NOLINTNEXTLINE(modernize-use-nodiscard)
992 std::function<void()> removeObjectAsync(const ::Ice::Identity& id, 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;
993
994 /// @private
995 void _iceI_removeObject(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ::Ice::Identity&, const Ice::Context&) const;
996
997 /// Gets the object info for the object.
998 /// @param id The identity of the object.
999 /// @param context The request context.
1000 /// @return The object info.
1001 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
1002 ObjectInfo getObjectInfo(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1003
1004 /// Gets the object info for the object.
1005 /// @param id The identity of the object.
1006 /// @param context The request context.
1007 /// @return A future that becomes available when the invocation completes. This future holds:
1008 /// - The object info.
1009 [[nodiscard]] std::future<ObjectInfo> getObjectInfoAsync(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
1010
1011 /// Gets the object info for the object.
1012 /// @param id The identity of the object.
1013 /// @param response The response callback. It accepts:
1014 /// - The object info.
1015 /// @param exception The exception callback.
1016 /// @param sent The sent callback.
1017 /// @param context The request context.
1018 /// @return A function that can be called to cancel the invocation locally.
1019 // NOLINTNEXTLINE(modernize-use-nodiscard)
1020 std::function<void()> getObjectInfoAsync(const ::Ice::Identity& id, std::function<void(::IceGrid::ObjectInfo)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1021
1022 /// @private
1023 void _iceI_getObjectInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<ObjectInfo>>&, const ::Ice::Identity&, const Ice::Context&) const;
1024
1025 /// Gets the object info of all the registered objects with a given type.
1026 /// @param type The type name.
1027 /// @param context The request context.
1028 /// @return The object infos.
1029 ObjectInfoSeq getObjectInfosByType(std::string_view type, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1030
1031 /// Gets the object info of all the registered objects with a given type.
1032 /// @param type The type name.
1033 /// @param context The request context.
1034 /// @return A future that becomes available when the invocation completes. This future holds:
1035 /// - The object infos.
1036 [[nodiscard]] std::future<ObjectInfoSeq> getObjectInfosByTypeAsync(std::string_view type, const Ice::Context& context = Ice::noExplicitContext) const;
1037
1038 /// Gets the object info of all the registered objects with a given type.
1039 /// @param type The type name.
1040 /// @param response The response callback. It accepts:
1041 /// - The object infos.
1042 /// @param exception The exception callback.
1043 /// @param sent The sent callback.
1044 /// @param context The request context.
1045 /// @return A function that can be called to cancel the invocation locally.
1046 // NOLINTNEXTLINE(modernize-use-nodiscard)
1047 std::function<void()> getObjectInfosByTypeAsync(std::string_view type, std::function<void(::IceGrid::ObjectInfoSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1048
1049 /// @private
1050 void _iceI_getObjectInfosByType(const std::shared_ptr<IceInternal::OutgoingAsyncT<ObjectInfoSeq>>&, std::string_view, const Ice::Context&) const;
1051
1052 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
1053 /// @param expr The expression to match against the stringified identities of registered objects. The expression
1054 /// may contain a trailing wildcard (`*`) character.
1055 /// @param context The request context.
1056 /// @return All the object infos with a stringified identity matching the given expression.
1057 ObjectInfoSeq getAllObjectInfos(std::string_view expr, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1058
1059 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
1060 /// @param expr The expression to match against the stringified identities of registered objects. The expression
1061 /// may contain a trailing wildcard (`*`) character.
1062 /// @param context The request context.
1063 /// @return A future that becomes available when the invocation completes. This future holds:
1064 /// - All the object infos with a stringified identity matching the given expression.
1065 [[nodiscard]] std::future<ObjectInfoSeq> getAllObjectInfosAsync(std::string_view expr, const Ice::Context& context = Ice::noExplicitContext) const;
1066
1067 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
1068 /// @param expr The expression to match against the stringified identities of registered objects. The expression
1069 /// may contain a trailing wildcard (`*`) character.
1070 /// @param response The response callback. It accepts:
1071 /// - All the object infos with a stringified identity matching the given expression.
1072 /// @param exception The exception callback.
1073 /// @param sent The sent callback.
1074 /// @param context The request context.
1075 /// @return A function that can be called to cancel the invocation locally.
1076 // NOLINTNEXTLINE(modernize-use-nodiscard)
1077 std::function<void()> getAllObjectInfosAsync(std::string_view expr, std::function<void(::IceGrid::ObjectInfoSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1078
1079 /// @private
1080 void _iceI_getAllObjectInfos(const std::shared_ptr<IceInternal::OutgoingAsyncT<ObjectInfoSeq>>&, std::string_view, const Ice::Context&) const;
1081
1082 /// Pings an IceGrid node to see if it is active.
1083 /// @param name The node name.
1084 /// @param context The request context.
1085 /// @return `true` if the node ping succeeded, `false` otherwise.
1086 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1087 bool pingNode(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1088
1089 /// Pings an IceGrid node to see if it is active.
1090 /// @param name The node name.
1091 /// @param context The request context.
1092 /// @return A future that becomes available when the invocation completes. This future holds:
1093 /// - `true` if the node ping succeeded, `false` otherwise.
1094 [[nodiscard]] std::future<bool> pingNodeAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1095
1096 /// Pings an IceGrid node to see if it is active.
1097 /// @param name The node name.
1098 /// @param response The response callback. It accepts:
1099 /// - `true` if the node ping succeeded, `false` otherwise.
1100 /// @param exception The exception callback.
1101 /// @param sent The sent callback.
1102 /// @param context The request context.
1103 /// @return A function that can be called to cancel the invocation locally.
1104 // NOLINTNEXTLINE(modernize-use-nodiscard)
1105 std::function<void()> pingNodeAsync(std::string_view name, std::function<void(bool)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1106
1107 /// @private
1108 void _iceI_pingNode(const std::shared_ptr<IceInternal::OutgoingAsyncT<bool>>&, std::string_view, const Ice::Context&) const;
1109
1110 /// Gets the load averages of a node.
1111 /// @param name The node name.
1112 /// @param context The request context.
1113 /// @return The node load information.
1114 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1115 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1116 LoadInfo getNodeLoad(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1117
1118 /// Gets the load averages of a node.
1119 /// @param name The node name.
1120 /// @param context The request context.
1121 /// @return A future that becomes available when the invocation completes. This future holds:
1122 /// - The node load information.
1123 [[nodiscard]] std::future<LoadInfo> getNodeLoadAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1124
1125 /// Gets the load averages of a node.
1126 /// @param name The node name.
1127 /// @param response The response callback. It accepts:
1128 /// - The node load information.
1129 /// @param exception The exception callback.
1130 /// @param sent The sent callback.
1131 /// @param context The request context.
1132 /// @return A function that can be called to cancel the invocation locally.
1133 // NOLINTNEXTLINE(modernize-use-nodiscard)
1134 std::function<void()> getNodeLoadAsync(std::string_view name, std::function<void(::IceGrid::LoadInfo)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1135
1136 /// @private
1137 void _iceI_getNodeLoad(const std::shared_ptr<IceInternal::OutgoingAsyncT<LoadInfo>>&, std::string_view, const Ice::Context&) const;
1138
1139 /// Gets the node information of a node.
1140 /// @param name The node name.
1141 /// @param context The request context.
1142 /// @return The node information.
1143 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1144 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1145 NodeInfo getNodeInfo(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1146
1147 /// Gets the node information of a node.
1148 /// @param name The node name.
1149 /// @param context The request context.
1150 /// @return A future that becomes available when the invocation completes. This future holds:
1151 /// - The node information.
1152 [[nodiscard]] std::future<NodeInfo> getNodeInfoAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1153
1154 /// Gets the node information of a node.
1155 /// @param name The node name.
1156 /// @param response The response callback. It accepts:
1157 /// - The node information.
1158 /// @param exception The exception callback.
1159 /// @param sent The sent callback.
1160 /// @param context The request context.
1161 /// @return A function that can be called to cancel the invocation locally.
1162 // NOLINTNEXTLINE(modernize-use-nodiscard)
1163 std::function<void()> getNodeInfoAsync(std::string_view name, std::function<void(::IceGrid::NodeInfo)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1164
1165 /// @private
1166 void _iceI_getNodeInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<NodeInfo>>&, std::string_view, const Ice::Context&) const;
1167
1168 /// Gets a proxy to the admin object of an IceGrid node.
1169 /// @param name The IceGrid node name.
1170 /// @param context The request context.
1171 /// @return A proxy to the IceGrid node's admin object. This proxy is never null.
1172 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1173 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1174 std::optional<Ice::ObjectPrx> getNodeAdmin(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1175
1176 /// Gets a proxy to the admin object of an IceGrid node.
1177 /// @param name The IceGrid node name.
1178 /// @param context The request context.
1179 /// @return A future that becomes available when the invocation completes. This future holds:
1180 /// - A proxy to the IceGrid node's admin object. This proxy is never null.
1181 [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getNodeAdminAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1182
1183 /// Gets a proxy to the admin object of an IceGrid node.
1184 /// @param name The IceGrid node name.
1185 /// @param response The response callback. It accepts:
1186 /// - A proxy to the IceGrid node's admin object. This proxy is never null.
1187 /// @param exception The exception callback.
1188 /// @param sent The sent callback.
1189 /// @param context The request context.
1190 /// @return A function that can be called to cancel the invocation locally.
1191 // NOLINTNEXTLINE(modernize-use-nodiscard)
1192 std::function<void()> getNodeAdminAsync(std::string_view name, std::function<void(std::optional<Ice::ObjectPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1193
1194 /// @private
1195 void _iceI_getNodeAdmin(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, std::string_view, const Ice::Context&) const;
1196
1197 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
1198 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
1199 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
1200 /// @param name The node name.
1201 /// @param context The request context.
1202 /// @return The number of processor sockets or 1 if the number of sockets can't be determined.
1203 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1204 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1205 std::int32_t getNodeProcessorSocketCount(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1206
1207 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
1208 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
1209 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
1210 /// @param name The node name.
1211 /// @param context The request context.
1212 /// @return A future that becomes available when the invocation completes. This future holds:
1213 /// - The number of processor sockets or 1 if the number of sockets can't be determined.
1214 [[nodiscard]] std::future<std::int32_t> getNodeProcessorSocketCountAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1215
1216 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
1217 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
1218 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
1219 /// @param name The node name.
1220 /// @param response The response callback. It accepts:
1221 /// - The number of processor sockets or 1 if the number of sockets can't be determined.
1222 /// @param exception The exception callback.
1223 /// @param sent The sent callback.
1224 /// @param context The request context.
1225 /// @return A function that can be called to cancel the invocation locally.
1226 // NOLINTNEXTLINE(modernize-use-nodiscard)
1227 std::function<void()> getNodeProcessorSocketCountAsync(std::string_view name, std::function<void(std::int32_t)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1228
1229 /// @private
1230 void _iceI_getNodeProcessorSocketCount(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::int32_t>>&, std::string_view, const Ice::Context&) const;
1231
1232 /// Shuts down an IceGrid node.
1233 /// @param name The node name.
1234 /// @param context The request context.
1235 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1236 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1237 void shutdownNode(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1238
1239 /// Shuts down an IceGrid node.
1240 /// @param name The node name.
1241 /// @param context The request context.
1242 /// @return A future that becomes available when the invocation completes.
1243 [[nodiscard]] std::future<void> shutdownNodeAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1244
1245 /// Shuts down an IceGrid node.
1246 /// @param name The node name.
1247 /// @param response The response callback.
1248 /// @param exception The exception callback.
1249 /// @param sent The sent callback.
1250 /// @param context The request context.
1251 /// @return A function that can be called to cancel the invocation locally.
1252 // NOLINTNEXTLINE(modernize-use-nodiscard)
1253 std::function<void()> shutdownNodeAsync(std::string_view name, 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;
1254
1255 /// @private
1256 void _iceI_shutdownNode(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
1257
1258 /// Get the hostname of a node.
1259 /// @param name The node name.
1260 /// @param context The request context.
1261 /// @return The node hostname.
1262 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1263 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1264 std::string getNodeHostname(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1265
1266 /// Get the hostname of a node.
1267 /// @param name The node name.
1268 /// @param context The request context.
1269 /// @return A future that becomes available when the invocation completes. This future holds:
1270 /// - The node hostname.
1271 [[nodiscard]] std::future<std::string> getNodeHostnameAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1272
1273 /// Get the hostname of a node.
1274 /// @param name The node name.
1275 /// @param response The response callback. It accepts:
1276 /// - The node hostname.
1277 /// @param exception The exception callback.
1278 /// @param sent The sent callback.
1279 /// @param context The request context.
1280 /// @return A function that can be called to cancel the invocation locally.
1281 // NOLINTNEXTLINE(modernize-use-nodiscard)
1282 std::function<void()> getNodeHostnameAsync(std::string_view name, std::function<void(std::string)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1283
1284 /// @private
1285 void _iceI_getNodeHostname(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::string>>&, std::string_view, const Ice::Context&) const;
1286
1287 /// Gets the names of all IceGrid nodes currently registered.
1288 /// @param context The request context.
1289 /// @return The node names.
1290 ::Ice::StringSeq getAllNodeNames(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1291
1292 /// Gets the names of all IceGrid nodes currently registered.
1293 /// @param context The request context.
1294 /// @return A future that becomes available when the invocation completes. This future holds:
1295 /// - The node names.
1296 [[nodiscard]] std::future<::Ice::StringSeq> getAllNodeNamesAsync(const Ice::Context& context = Ice::noExplicitContext) const;
1297
1298 /// Gets the names of all IceGrid nodes currently registered.
1299 /// @param response The response callback. It accepts:
1300 /// - The node names.
1301 /// @param exception The exception callback.
1302 /// @param sent The sent callback.
1303 /// @param context The request context.
1304 /// @return A function that can be called to cancel the invocation locally.
1305 // NOLINTNEXTLINE(modernize-use-nodiscard)
1306 std::function<void()> getAllNodeNamesAsync(std::function<void(::Ice::StringSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1307
1308 /// @private
1309 void _iceI_getAllNodeNames(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
1310
1311 /// Pings an IceGrid registry to see if it is active.
1312 /// @param name The registry name.
1313 /// @param context The request context.
1314 /// @return `true` if the registry ping succeeded, `false` otherwise.
1315 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
1316 bool pingRegistry(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1317
1318 /// Pings an IceGrid registry to see if it is active.
1319 /// @param name The registry name.
1320 /// @param context The request context.
1321 /// @return A future that becomes available when the invocation completes. This future holds:
1322 /// - `true` if the registry ping succeeded, `false` otherwise.
1323 [[nodiscard]] std::future<bool> pingRegistryAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1324
1325 /// Pings an IceGrid registry to see if it is active.
1326 /// @param name The registry name.
1327 /// @param response The response callback. It accepts:
1328 /// - `true` if the registry ping succeeded, `false` otherwise.
1329 /// @param exception The exception callback.
1330 /// @param sent The sent callback.
1331 /// @param context The request context.
1332 /// @return A function that can be called to cancel the invocation locally.
1333 // NOLINTNEXTLINE(modernize-use-nodiscard)
1334 std::function<void()> pingRegistryAsync(std::string_view name, std::function<void(bool)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1335
1336 /// @private
1337 void _iceI_pingRegistry(const std::shared_ptr<IceInternal::OutgoingAsyncT<bool>>&, std::string_view, const Ice::Context&) const;
1338
1339 /// Gets the registry information of an IceGrid registry.
1340 /// @param name The registry name.
1341 /// @param context The request context.
1342 /// @return The registry information.
1343 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
1344 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
1345 RegistryInfo getRegistryInfo(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1346
1347 /// Gets the registry information of an IceGrid registry.
1348 /// @param name The registry name.
1349 /// @param context The request context.
1350 /// @return A future that becomes available when the invocation completes. This future holds:
1351 /// - The registry information.
1352 [[nodiscard]] std::future<RegistryInfo> getRegistryInfoAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1353
1354 /// Gets the registry information of an IceGrid registry.
1355 /// @param name The registry name.
1356 /// @param response The response callback. It accepts:
1357 /// - The registry information.
1358 /// @param exception The exception callback.
1359 /// @param sent The sent callback.
1360 /// @param context The request context.
1361 /// @return A function that can be called to cancel the invocation locally.
1362 // NOLINTNEXTLINE(modernize-use-nodiscard)
1363 std::function<void()> getRegistryInfoAsync(std::string_view name, std::function<void(::IceGrid::RegistryInfo)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1364
1365 /// @private
1366 void _iceI_getRegistryInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<RegistryInfo>>&, std::string_view, const Ice::Context&) const;
1367
1368 /// Gets a proxy to the admin object of an IceGrid registry.
1369 /// @param name The registry name.
1370 /// @param context The request context.
1371 /// @return A proxy to the admin object of an IceGrid registry. This proxy is never null.
1372 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
1373 std::optional<Ice::ObjectPrx> getRegistryAdmin(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1374
1375 /// Gets a proxy to the admin object of an IceGrid registry.
1376 /// @param name The registry name.
1377 /// @param context The request context.
1378 /// @return A future that becomes available when the invocation completes. This future holds:
1379 /// - A proxy to the admin object of an IceGrid registry. This proxy is never null.
1380 [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getRegistryAdminAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1381
1382 /// Gets a proxy to the admin object of an IceGrid registry.
1383 /// @param name The registry name.
1384 /// @param response The response callback. It accepts:
1385 /// - A proxy to the admin object of an IceGrid registry. This proxy is never null.
1386 /// @param exception The exception callback.
1387 /// @param sent The sent callback.
1388 /// @param context The request context.
1389 /// @return A function that can be called to cancel the invocation locally.
1390 // NOLINTNEXTLINE(modernize-use-nodiscard)
1391 std::function<void()> getRegistryAdminAsync(std::string_view name, std::function<void(std::optional<Ice::ObjectPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1392
1393 /// @private
1394 void _iceI_getRegistryAdmin(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, std::string_view, const Ice::Context&) const;
1395
1396 /// Shuts down an IceGrid registry.
1397 /// @param name The registry name.
1398 /// @param context The request context.
1399 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
1400 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
1401 void shutdownRegistry(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1402
1403 /// Shuts down an IceGrid registry.
1404 /// @param name The registry name.
1405 /// @param context The request context.
1406 /// @return A future that becomes available when the invocation completes.
1407 [[nodiscard]] std::future<void> shutdownRegistryAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1408
1409 /// Shuts down an IceGrid registry.
1410 /// @param name The registry name.
1411 /// @param response The response callback.
1412 /// @param exception The exception callback.
1413 /// @param sent The sent callback.
1414 /// @param context The request context.
1415 /// @return A function that can be called to cancel the invocation locally.
1416 // NOLINTNEXTLINE(modernize-use-nodiscard)
1417 std::function<void()> shutdownRegistryAsync(std::string_view name, 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;
1418
1419 /// @private
1420 void _iceI_shutdownRegistry(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
1421
1422 /// Gets the names of all the IceGrid registries currently registered.
1423 /// @param context The request context.
1424 /// @return The registry names.
1425 ::Ice::StringSeq getAllRegistryNames(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1426
1427 /// Gets the names of all the IceGrid registries currently registered.
1428 /// @param context The request context.
1429 /// @return A future that becomes available when the invocation completes. This future holds:
1430 /// - The registry names.
1431 [[nodiscard]] std::future<::Ice::StringSeq> getAllRegistryNamesAsync(const Ice::Context& context = Ice::noExplicitContext) const;
1432
1433 /// Gets the names of all the IceGrid registries currently registered.
1434 /// @param response The response callback. It accepts:
1435 /// - The registry names.
1436 /// @param exception The exception callback.
1437 /// @param sent The sent callback.
1438 /// @param context The request context.
1439 /// @return A function that can be called to cancel the invocation locally.
1440 // NOLINTNEXTLINE(modernize-use-nodiscard)
1441 std::function<void()> getAllRegistryNamesAsync(std::function<void(::Ice::StringSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1442
1443 /// @private
1444 void _iceI_getAllRegistryNames(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
1445
1446 /// Shuts down the IceGrid registry.
1447 /// @param context The request context.
1448 void shutdown(const Ice::Context& context = Ice::noExplicitContext) const;
1449
1450 /// Shuts down the IceGrid registry.
1451 /// @param context The request context.
1452 /// @return A future that becomes available when the invocation completes.
1453 [[nodiscard]] std::future<void> shutdownAsync(const Ice::Context& context = Ice::noExplicitContext) const;
1454
1455 /// Shuts down the IceGrid registry.
1456 /// @param response The response callback.
1457 /// @param exception The exception callback.
1458 /// @param sent The sent callback.
1459 /// @param context The request context.
1460 /// @return A function that can be called to cancel the invocation locally.
1461 // NOLINTNEXTLINE(modernize-use-nodiscard)
1462 std::function<void()> shutdownAsync(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;
1463
1464 /// @private
1465 void _iceI_shutdown(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
1466
1467 /// Gets the type ID of the associated Slice interface.
1468 /// @return The string `"::IceGrid::Admin"`.
1469 static const char* ice_staticId() noexcept;
1470
1471 /// @private
1472 static AdminPrx _fromReference(IceInternal::ReferencePtr ref) { return AdminPrx{std::move(ref)}; }
1473
1474 protected:
1475 /// @private
1476 AdminPrx() = default;
1477
1478 /// @private
1479 explicit AdminPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1480 {
1481 }
1482 };
1483
1484 /// Iterates over an IceGrid log file.
1485 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::FileIterator`.
1486 /// @headerfile IceGrid/IceGrid.h
1487 class ICEGRID_API FileIteratorPrx : public Ice::Proxy<FileIteratorPrx, Ice::ObjectPrx>
1488 {
1489 public:
1490 /// Constructs a proxy from a Communicator and a proxy string.
1491 /// @param communicator The communicator of the new proxy.
1492 /// @param proxyString The proxy string to parse.
1493 FileIteratorPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1494
1495 /// Copy constructor. Constructs with a copy of the contents of @p other.
1496 /// @param other The proxy to copy from.
1497 FileIteratorPrx(const FileIteratorPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1498
1499 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
1500 /// @param other The proxy to move from.
1501 FileIteratorPrx(FileIteratorPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1502
1503 ~FileIteratorPrx() override;
1504
1505 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
1506 /// @param rhs The proxy to copy from.
1507 /// @return A reference to this proxy.
1509 {
1510 if (this != &rhs)
1511 {
1513 }
1514 return *this;
1515 }
1516
1517 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
1518 /// @param rhs The proxy to move from.
1520 {
1521 if (this != &rhs)
1522 {
1523 Ice::ObjectPrx::operator=(std::move(rhs));
1524 }
1525 return *this;
1526 }
1527
1528 /// Read lines from the log file.
1529 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
1530 /// message doesn't exceed the given size.
1531 /// @param[out] lines The lines read from the file. If there was nothing to read from the file since the last call to
1532 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
1533 /// newline character should be added when writing the last line to the to the output device).
1534 /// @param context The request context.
1535 /// @return `true` if EOF is encountered.
1536 /// @throws IceGrid::FileNotAvailableException Thrown when the implementation failed to read from the file.
1537 bool read(std::int32_t size, ::Ice::StringSeq& lines, const Ice::Context& context = Ice::noExplicitContext) const;
1538
1539 /// Read lines from the log file.
1540 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
1541 /// message doesn't exceed the given size.
1542 /// @param context The request context.
1543 /// @return A future that becomes available when the invocation completes. This future holds:
1544 /// - `returnValue` `true` if EOF is encountered.
1545 /// - `lines` The lines read from the file. If there was nothing to read from the file since the last call to
1546 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
1547 /// newline character should be added when writing the last line to the to the output device).
1548 [[nodiscard]] std::future<std::tuple<bool, ::Ice::StringSeq>> readAsync(std::int32_t size, const Ice::Context& context = Ice::noExplicitContext) const;
1549
1550 /// Read lines from the log file.
1551 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
1552 /// message doesn't exceed the given size.
1553 /// @param response The response callback. It accepts:
1554 /// - `returnValue` `true` if EOF is encountered.
1555 /// - `lines` The lines read from the file. If there was nothing to read from the file since the last call to
1556 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
1557 /// newline character should be added when writing the last line to the to the output device).
1558 /// @param exception The exception callback.
1559 /// @param sent The sent callback.
1560 /// @param context The request context.
1561 /// @return A function that can be called to cancel the invocation locally.
1562 // NOLINTNEXTLINE(modernize-use-nodiscard)
1563 std::function<void()> readAsync(std::int32_t size, std::function<void(bool, ::Ice::StringSeq)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
1564
1565 /// @private
1566 void _iceI_read(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::tuple<bool, ::Ice::StringSeq>>>&, std::int32_t, const Ice::Context&) const;
1567
1568 /// Destroys the iterator.
1569 /// @param context The request context.
1570 void destroy(const Ice::Context& context = Ice::noExplicitContext) const;
1571
1572 /// Destroys the iterator.
1573 /// @param context The request context.
1574 /// @return A future that becomes available when the invocation completes.
1575 [[nodiscard]] std::future<void> destroyAsync(const Ice::Context& context = Ice::noExplicitContext) const;
1576
1577 /// Destroys the iterator.
1578 /// @param response The response callback.
1579 /// @param exception The exception callback.
1580 /// @param sent The sent callback.
1581 /// @param context The request context.
1582 /// @return A function that can be called to cancel the invocation locally.
1583 // NOLINTNEXTLINE(modernize-use-nodiscard)
1584 std::function<void()> destroyAsync(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;
1585
1586 /// @private
1587 void _iceI_destroy(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
1588
1589 /// Gets the type ID of the associated Slice interface.
1590 /// @return The string `"::IceGrid::FileIterator"`.
1591 static const char* ice_staticId() noexcept;
1592
1593 /// @private
1594 static FileIteratorPrx _fromReference(IceInternal::ReferencePtr ref) { return FileIteratorPrx{std::move(ref)}; }
1595
1596 protected:
1597 /// @private
1598 FileIteratorPrx() = default;
1599
1600 /// @private
1601 explicit FileIteratorPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1602 {
1603 }
1604 };
1605
1606 /// Monitors changes to the state of the registries.
1607 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::RegistryObserver`.
1608 /// @headerfile IceGrid/IceGrid.h
1609 class ICEGRID_API RegistryObserverPrx : public Ice::Proxy<RegistryObserverPrx, Ice::ObjectPrx>
1610 {
1611 public:
1612 /// Constructs a proxy from a Communicator and a proxy string.
1613 /// @param communicator The communicator of the new proxy.
1614 /// @param proxyString The proxy string to parse.
1615 RegistryObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1616
1617 /// Copy constructor. Constructs with a copy of the contents of @p other.
1618 /// @param other The proxy to copy from.
1619 RegistryObserverPrx(const RegistryObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1620
1621 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
1622 /// @param other The proxy to move from.
1623 RegistryObserverPrx(RegistryObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1624
1625 ~RegistryObserverPrx() override;
1626
1627 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
1628 /// @param rhs The proxy to copy from.
1629 /// @return A reference to this proxy.
1631 {
1632 if (this != &rhs)
1633 {
1635 }
1636 return *this;
1637 }
1638
1639 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
1640 /// @param rhs The proxy to move from.
1642 {
1643 if (this != &rhs)
1644 {
1645 Ice::ObjectPrx::operator=(std::move(rhs));
1646 }
1647 return *this;
1648 }
1649
1650 /// Provides the initial state of the registries to the observer.
1651 /// @param registries The current state of the registries.
1652 /// @param context The request context.
1653 void registryInit(const RegistryInfoSeq& registries, const Ice::Context& context = Ice::noExplicitContext) const;
1654
1655 /// Provides the initial state of the registries to the observer.
1656 /// @param registries The current state of the registries.
1657 /// @param context The request context.
1658 /// @return A future that becomes available when the invocation completes.
1659 [[nodiscard]] std::future<void> registryInitAsync(const RegistryInfoSeq& registries, const Ice::Context& context = Ice::noExplicitContext) const;
1660
1661 /// Provides the initial state of the registries to the observer.
1662 /// @param registries The current state of the registries.
1663 /// @param response The response callback.
1664 /// @param exception The exception callback.
1665 /// @param sent The sent callback.
1666 /// @param context The request context.
1667 /// @return A function that can be called to cancel the invocation locally.
1668 // NOLINTNEXTLINE(modernize-use-nodiscard)
1669 std::function<void()> registryInitAsync(const RegistryInfoSeq& registries, 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;
1670
1671 /// @private
1672 void _iceI_registryInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const RegistryInfoSeq&, const Ice::Context&) const;
1673
1674 /// Notifies the observer that a registry replica came up.
1675 /// @param registryReplica The registry state.
1676 /// @param context The request context.
1677 void registryUp(const RegistryInfo& registryReplica, const Ice::Context& context = Ice::noExplicitContext) const;
1678
1679 /// Notifies the observer that a registry replica came up.
1680 /// @param registryReplica The registry state.
1681 /// @param context The request context.
1682 /// @return A future that becomes available when the invocation completes.
1683 [[nodiscard]] std::future<void> registryUpAsync(const RegistryInfo& registryReplica, const Ice::Context& context = Ice::noExplicitContext) const;
1684
1685 /// Notifies the observer that a registry replica came up.
1686 /// @param registryReplica The registry state.
1687 /// @param response The response callback.
1688 /// @param exception The exception callback.
1689 /// @param sent The sent callback.
1690 /// @param context The request context.
1691 /// @return A function that can be called to cancel the invocation locally.
1692 // NOLINTNEXTLINE(modernize-use-nodiscard)
1693 std::function<void()> registryUpAsync(const RegistryInfo& registryReplica, 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;
1694
1695 /// @private
1696 void _iceI_registryUp(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const RegistryInfo&, const Ice::Context&) const;
1697
1698 /// Notifies the observer that a registry replica went down.
1699 /// @param name The registry name.
1700 /// @param context The request context.
1701 void registryDown(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1702
1703 /// Notifies the observer that a registry replica went down.
1704 /// @param name The registry name.
1705 /// @param context The request context.
1706 /// @return A future that becomes available when the invocation completes.
1707 [[nodiscard]] std::future<void> registryDownAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1708
1709 /// Notifies the observer that a registry replica went down.
1710 /// @param name The registry name.
1711 /// @param response The response callback.
1712 /// @param exception The exception callback.
1713 /// @param sent The sent callback.
1714 /// @param context The request context.
1715 /// @return A function that can be called to cancel the invocation locally.
1716 // NOLINTNEXTLINE(modernize-use-nodiscard)
1717 std::function<void()> registryDownAsync(std::string_view name, 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;
1718
1719 /// @private
1720 void _iceI_registryDown(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
1721
1722 /// Gets the type ID of the associated Slice interface.
1723 /// @return The string `"::IceGrid::RegistryObserver"`.
1724 static const char* ice_staticId() noexcept;
1725
1726 /// @private
1727 static RegistryObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return RegistryObserverPrx{std::move(ref)}; }
1728
1729 protected:
1730 /// @private
1731 RegistryObserverPrx() = default;
1732
1733 /// @private
1734 explicit RegistryObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1735 {
1736 }
1737 };
1738
1739 /// Monitors changes to the state of the nodes.
1740 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::NodeObserver`.
1741 /// @headerfile IceGrid/IceGrid.h
1742 class ICEGRID_API NodeObserverPrx : public Ice::Proxy<NodeObserverPrx, Ice::ObjectPrx>
1743 {
1744 public:
1745 /// Constructs a proxy from a Communicator and a proxy string.
1746 /// @param communicator The communicator of the new proxy.
1747 /// @param proxyString The proxy string to parse.
1748 NodeObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1749
1750 /// Copy constructor. Constructs with a copy of the contents of @p other.
1751 /// @param other The proxy to copy from.
1752 NodeObserverPrx(const NodeObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1753
1754 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
1755 /// @param other The proxy to move from.
1756 NodeObserverPrx(NodeObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1757
1758 ~NodeObserverPrx() override;
1759
1760 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
1761 /// @param rhs The proxy to copy from.
1762 /// @return A reference to this proxy.
1764 {
1765 if (this != &rhs)
1766 {
1768 }
1769 return *this;
1770 }
1771
1772 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
1773 /// @param rhs The proxy to move from.
1775 {
1776 if (this != &rhs)
1777 {
1778 Ice::ObjectPrx::operator=(std::move(rhs));
1779 }
1780 return *this;
1781 }
1782
1783 /// Provides the initial state of the nodes to the observer.
1784 /// @param nodes The current state of the nodes.
1785 /// @param context The request context.
1786 void nodeInit(const NodeDynamicInfoSeq& nodes, const Ice::Context& context = Ice::noExplicitContext) const;
1787
1788 /// Provides the initial state of the nodes to the observer.
1789 /// @param nodes The current state of the nodes.
1790 /// @param context The request context.
1791 /// @return A future that becomes available when the invocation completes.
1792 [[nodiscard]] std::future<void> nodeInitAsync(const NodeDynamicInfoSeq& nodes, const Ice::Context& context = Ice::noExplicitContext) const;
1793
1794 /// Provides the initial state of the nodes to the observer.
1795 /// @param nodes The current state of the nodes.
1796 /// @param response The response callback.
1797 /// @param exception The exception callback.
1798 /// @param sent The sent callback.
1799 /// @param context The request context.
1800 /// @return A function that can be called to cancel the invocation locally.
1801 // NOLINTNEXTLINE(modernize-use-nodiscard)
1802 std::function<void()> nodeInitAsync(const NodeDynamicInfoSeq& nodes, 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;
1803
1804 /// @private
1805 void _iceI_nodeInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const NodeDynamicInfoSeq&, const Ice::Context&) const;
1806
1807 /// Notifies the observer that a node came up.
1808 /// @param node The node state.
1809 /// @param context The request context.
1810 void nodeUp(const NodeDynamicInfo& node, const Ice::Context& context = Ice::noExplicitContext) const;
1811
1812 /// Notifies the observer that a node came up.
1813 /// @param node The node state.
1814 /// @param context The request context.
1815 /// @return A future that becomes available when the invocation completes.
1816 [[nodiscard]] std::future<void> nodeUpAsync(const NodeDynamicInfo& node, const Ice::Context& context = Ice::noExplicitContext) const;
1817
1818 /// Notifies the observer that a node came up.
1819 /// @param node The node state.
1820 /// @param response The response callback.
1821 /// @param exception The exception callback.
1822 /// @param sent The sent callback.
1823 /// @param context The request context.
1824 /// @return A function that can be called to cancel the invocation locally.
1825 // NOLINTNEXTLINE(modernize-use-nodiscard)
1826 std::function<void()> nodeUpAsync(const NodeDynamicInfo& node, 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;
1827
1828 /// @private
1829 void _iceI_nodeUp(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const NodeDynamicInfo&, const Ice::Context&) const;
1830
1831 /// Notifies the observer that a node went down.
1832 /// @param name The node name.
1833 /// @param context The request context.
1834 void nodeDown(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1835
1836 /// Notifies the observer that a node went down.
1837 /// @param name The node name.
1838 /// @param context The request context.
1839 /// @return A future that becomes available when the invocation completes.
1840 [[nodiscard]] std::future<void> nodeDownAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1841
1842 /// Notifies the observer that a node went down.
1843 /// @param name The node name.
1844 /// @param response The response callback.
1845 /// @param exception The exception callback.
1846 /// @param sent The sent callback.
1847 /// @param context The request context.
1848 /// @return A function that can be called to cancel the invocation locally.
1849 // NOLINTNEXTLINE(modernize-use-nodiscard)
1850 std::function<void()> nodeDownAsync(std::string_view name, 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;
1851
1852 /// @private
1853 void _iceI_nodeDown(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
1854
1855 /// Notifies the observer that the state of a server changed.
1856 /// @param node The node hosting the server.
1857 /// @param updatedInfo The new server state.
1858 /// @param context The request context.
1859 void updateServer(std::string_view node, const ServerDynamicInfo& updatedInfo, const Ice::Context& context = Ice::noExplicitContext) const;
1860
1861 /// Notifies the observer that the state of a server changed.
1862 /// @param node The node hosting the server.
1863 /// @param updatedInfo The new server state.
1864 /// @param context The request context.
1865 /// @return A future that becomes available when the invocation completes.
1866 [[nodiscard]] std::future<void> updateServerAsync(std::string_view node, const ServerDynamicInfo& updatedInfo, const Ice::Context& context = Ice::noExplicitContext) const;
1867
1868 /// Notifies the observer that the state of a server changed.
1869 /// @param node The node hosting the server.
1870 /// @param updatedInfo The new server state.
1871 /// @param response The response callback.
1872 /// @param exception The exception callback.
1873 /// @param sent The sent callback.
1874 /// @param context The request context.
1875 /// @return A function that can be called to cancel the invocation locally.
1876 // NOLINTNEXTLINE(modernize-use-nodiscard)
1877 std::function<void()> updateServerAsync(std::string_view node, const ServerDynamicInfo& updatedInfo, 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;
1878
1879 /// @private
1880 void _iceI_updateServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const ServerDynamicInfo&, const Ice::Context&) const;
1881
1882 /// Notifies the observer that the state of an object adapter changed.
1883 /// @param node The node hosting the adapter.
1884 /// @param updatedInfo The new adapter state.
1885 /// @param context The request context.
1886 void updateAdapter(std::string_view node, const AdapterDynamicInfo& updatedInfo, const Ice::Context& context = Ice::noExplicitContext) const;
1887
1888 /// Notifies the observer that the state of an object adapter changed.
1889 /// @param node The node hosting the adapter.
1890 /// @param updatedInfo The new adapter state.
1891 /// @param context The request context.
1892 /// @return A future that becomes available when the invocation completes.
1893 [[nodiscard]] std::future<void> updateAdapterAsync(std::string_view node, const AdapterDynamicInfo& updatedInfo, const Ice::Context& context = Ice::noExplicitContext) const;
1894
1895 /// Notifies the observer that the state of an object adapter changed.
1896 /// @param node The node hosting the adapter.
1897 /// @param updatedInfo The new adapter state.
1898 /// @param response The response callback.
1899 /// @param exception The exception callback.
1900 /// @param sent The sent callback.
1901 /// @param context The request context.
1902 /// @return A function that can be called to cancel the invocation locally.
1903 // NOLINTNEXTLINE(modernize-use-nodiscard)
1904 std::function<void()> updateAdapterAsync(std::string_view node, const AdapterDynamicInfo& updatedInfo, 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;
1905
1906 /// @private
1907 void _iceI_updateAdapter(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const AdapterDynamicInfo&, const Ice::Context&) const;
1908
1909 /// Gets the type ID of the associated Slice interface.
1910 /// @return The string `"::IceGrid::NodeObserver"`.
1911 static const char* ice_staticId() noexcept;
1912
1913 /// @private
1914 static NodeObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return NodeObserverPrx{std::move(ref)}; }
1915
1916 protected:
1917 /// @private
1918 NodeObserverPrx() = default;
1919
1920 /// @private
1921 explicit NodeObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1922 {
1923 }
1924 };
1925
1926 /// Monitors applications.
1927 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::ApplicationObserver`.
1928 /// @headerfile IceGrid/IceGrid.h
1929 class ICEGRID_API ApplicationObserverPrx : public Ice::Proxy<ApplicationObserverPrx, Ice::ObjectPrx>
1930 {
1931 public:
1932 /// Constructs a proxy from a Communicator and a proxy string.
1933 /// @param communicator The communicator of the new proxy.
1934 /// @param proxyString The proxy string to parse.
1935 ApplicationObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1936
1937 /// Copy constructor. Constructs with a copy of the contents of @p other.
1938 /// @param other The proxy to copy from.
1939 ApplicationObserverPrx(const ApplicationObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1940
1941 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
1942 /// @param other The proxy to move from.
1943 ApplicationObserverPrx(ApplicationObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1944
1945 ~ApplicationObserverPrx() override;
1946
1947 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
1948 /// @param rhs The proxy to copy from.
1949 /// @return A reference to this proxy.
1951 {
1952 if (this != &rhs)
1953 {
1955 }
1956 return *this;
1957 }
1958
1959 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
1960 /// @param rhs The proxy to move from.
1962 {
1963 if (this != &rhs)
1964 {
1965 Ice::ObjectPrx::operator=(std::move(rhs));
1966 }
1967 return *this;
1968 }
1969
1970 /// Provides the initial application infos to the observer.
1971 /// @param serial The current serial number of the registry database. This serial number allows observers to
1972 /// make sure that their internal state is synchronized with the registry.
1973 /// @param applications The applications currently registered with the registry.
1974 /// @param context The request context.
1975 void applicationInit(std::int32_t serial, const ApplicationInfoSeq& applications, const Ice::Context& context = Ice::noExplicitContext) const;
1976
1977 /// Provides the initial application infos to the observer.
1978 /// @param serial The current serial number of the registry database. This serial number allows observers to
1979 /// make sure that their internal state is synchronized with the registry.
1980 /// @param applications The applications currently registered with the registry.
1981 /// @param context The request context.
1982 /// @return A future that becomes available when the invocation completes.
1983 [[nodiscard]] std::future<void> applicationInitAsync(std::int32_t serial, const ApplicationInfoSeq& applications, const Ice::Context& context = Ice::noExplicitContext) const;
1984
1985 /// Provides the initial application infos to the observer.
1986 /// @param serial The current serial number of the registry database. This serial number allows observers to
1987 /// make sure that their internal state is synchronized with the registry.
1988 /// @param applications The applications currently registered with the registry.
1989 /// @param response The response callback.
1990 /// @param exception The exception callback.
1991 /// @param sent The sent callback.
1992 /// @param context The request context.
1993 /// @return A function that can be called to cancel the invocation locally.
1994 // NOLINTNEXTLINE(modernize-use-nodiscard)
1995 std::function<void()> applicationInitAsync(std::int32_t serial, const ApplicationInfoSeq& applications, 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;
1996
1997 /// @private
1998 void _iceI_applicationInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::int32_t, const ApplicationInfoSeq&, const Ice::Context&) const;
1999
2000 /// Notifies the observer that an application was added.
2001 /// @param serial The new serial number of the registry database.
2002 /// @param desc The descriptor of the new application.
2003 /// @param context The request context.
2004 void applicationAdded(std::int32_t serial, const ApplicationInfo& desc, const Ice::Context& context = Ice::noExplicitContext) const;
2005
2006 /// Notifies the observer that an application was added.
2007 /// @param serial The new serial number of the registry database.
2008 /// @param desc The descriptor of the new application.
2009 /// @param context The request context.
2010 /// @return A future that becomes available when the invocation completes.
2011 [[nodiscard]] std::future<void> applicationAddedAsync(std::int32_t serial, const ApplicationInfo& desc, const Ice::Context& context = Ice::noExplicitContext) const;
2012
2013 /// Notifies the observer that an application was added.
2014 /// @param serial The new serial number of the registry database.
2015 /// @param desc The descriptor of the new application.
2016 /// @param response The response callback.
2017 /// @param exception The exception callback.
2018 /// @param sent The sent callback.
2019 /// @param context The request context.
2020 /// @return A function that can be called to cancel the invocation locally.
2021 // NOLINTNEXTLINE(modernize-use-nodiscard)
2022 std::function<void()> applicationAddedAsync(std::int32_t serial, const ApplicationInfo& desc, 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;
2023
2024 /// @private
2025 void _iceI_applicationAdded(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::int32_t, const ApplicationInfo&, const Ice::Context&) const;
2026
2027 /// Notifies the observer that an application was removed.
2028 /// @param serial The new serial number of the registry database.
2029 /// @param name The name of the application that was removed.
2030 /// @param context The request context.
2031 void applicationRemoved(std::int32_t serial, std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
2032
2033 /// Notifies the observer that an application was removed.
2034 /// @param serial The new serial number of the registry database.
2035 /// @param name The name of the application that was removed.
2036 /// @param context The request context.
2037 /// @return A future that becomes available when the invocation completes.
2038 [[nodiscard]] std::future<void> applicationRemovedAsync(std::int32_t serial, std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
2039
2040 /// Notifies the observer that an application was removed.
2041 /// @param serial The new serial number of the registry database.
2042 /// @param name The name of the application that was removed.
2043 /// @param response The response callback.
2044 /// @param exception The exception callback.
2045 /// @param sent The sent callback.
2046 /// @param context The request context.
2047 /// @return A function that can be called to cancel the invocation locally.
2048 // NOLINTNEXTLINE(modernize-use-nodiscard)
2049 std::function<void()> applicationRemovedAsync(std::int32_t serial, std::string_view name, 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;
2050
2051 /// @private
2052 void _iceI_applicationRemoved(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::int32_t, std::string_view, const Ice::Context&) const;
2053
2054 /// Notifies the observer that an application was updated.
2055 /// @param serial The new serial number of the registry database.
2056 /// @param desc The descriptor of the update.
2057 /// @param context The request context.
2058 void applicationUpdated(std::int32_t serial, const ApplicationUpdateInfo& desc, const Ice::Context& context = Ice::noExplicitContext) const;
2059
2060 /// Notifies the observer that an application was updated.
2061 /// @param serial The new serial number of the registry database.
2062 /// @param desc The descriptor of the update.
2063 /// @param context The request context.
2064 /// @return A future that becomes available when the invocation completes.
2065 [[nodiscard]] std::future<void> applicationUpdatedAsync(std::int32_t serial, const ApplicationUpdateInfo& desc, const Ice::Context& context = Ice::noExplicitContext) const;
2066
2067 /// Notifies the observer that an application was updated.
2068 /// @param serial The new serial number of the registry database.
2069 /// @param desc The descriptor of the update.
2070 /// @param response The response callback.
2071 /// @param exception The exception callback.
2072 /// @param sent The sent callback.
2073 /// @param context The request context.
2074 /// @return A function that can be called to cancel the invocation locally.
2075 // NOLINTNEXTLINE(modernize-use-nodiscard)
2076 std::function<void()> applicationUpdatedAsync(std::int32_t serial, const ApplicationUpdateInfo& desc, 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;
2077
2078 /// @private
2079 void _iceI_applicationUpdated(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::int32_t, const ApplicationUpdateInfo&, const Ice::Context&) const;
2080
2081 /// Gets the type ID of the associated Slice interface.
2082 /// @return The string `"::IceGrid::ApplicationObserver"`.
2083 static const char* ice_staticId() noexcept;
2084
2085 /// @private
2086 static ApplicationObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return ApplicationObserverPrx{std::move(ref)}; }
2087
2088 protected:
2089 /// @private
2090 ApplicationObserverPrx() = default;
2091
2092 /// @private
2093 explicit ApplicationObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
2094 {
2095 }
2096 };
2097
2098 /// Monitors dynamically-registered object adapters.
2099 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::AdapterObserver`.
2100 /// @headerfile IceGrid/IceGrid.h
2101 class ICEGRID_API AdapterObserverPrx : public Ice::Proxy<AdapterObserverPrx, Ice::ObjectPrx>
2102 {
2103 public:
2104 /// Constructs a proxy from a Communicator and a proxy string.
2105 /// @param communicator The communicator of the new proxy.
2106 /// @param proxyString The proxy string to parse.
2107 AdapterObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
2108
2109 /// Copy constructor. Constructs with a copy of the contents of @p other.
2110 /// @param other The proxy to copy from.
2111 AdapterObserverPrx(const AdapterObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
2112
2113 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
2114 /// @param other The proxy to move from.
2115 AdapterObserverPrx(AdapterObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
2116
2117 ~AdapterObserverPrx() override;
2118
2119 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
2120 /// @param rhs The proxy to copy from.
2121 /// @return A reference to this proxy.
2123 {
2124 if (this != &rhs)
2125 {
2127 }
2128 return *this;
2129 }
2130
2131 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
2132 /// @param rhs The proxy to move from.
2134 {
2135 if (this != &rhs)
2136 {
2137 Ice::ObjectPrx::operator=(std::move(rhs));
2138 }
2139 return *this;
2140 }
2141
2142 /// Provides the initial list of dynamically registered adapters to the observer.
2143 /// @param adpts The adapters that were dynamically registered with the registry.
2144 /// @param context The request context.
2145 void adapterInit(const AdapterInfoSeq& adpts, const Ice::Context& context = Ice::noExplicitContext) const;
2146
2147 /// Provides the initial list of dynamically registered adapters to the observer.
2148 /// @param adpts The adapters that were dynamically registered with the registry.
2149 /// @param context The request context.
2150 /// @return A future that becomes available when the invocation completes.
2151 [[nodiscard]] std::future<void> adapterInitAsync(const AdapterInfoSeq& adpts, const Ice::Context& context = Ice::noExplicitContext) const;
2152
2153 /// Provides the initial list of dynamically registered adapters to the observer.
2154 /// @param adpts The adapters that were dynamically registered with the registry.
2155 /// @param response The response callback.
2156 /// @param exception The exception callback.
2157 /// @param sent The sent callback.
2158 /// @param context The request context.
2159 /// @return A function that can be called to cancel the invocation locally.
2160 // NOLINTNEXTLINE(modernize-use-nodiscard)
2161 std::function<void()> adapterInitAsync(const AdapterInfoSeq& adpts, 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;
2162
2163 /// @private
2164 void _iceI_adapterInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const AdapterInfoSeq&, const Ice::Context&) const;
2165
2166 /// Notifies the observer that a dynamically-registered adapter was added.
2167 /// @param info The details of the new adapter.
2168 /// @param context The request context.
2169 void adapterAdded(const AdapterInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2170
2171 /// Notifies the observer that a dynamically-registered adapter was added.
2172 /// @param info The details of the new adapter.
2173 /// @param context The request context.
2174 /// @return A future that becomes available when the invocation completes.
2175 [[nodiscard]] std::future<void> adapterAddedAsync(const AdapterInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2176
2177 /// Notifies the observer that a dynamically-registered adapter was added.
2178 /// @param info The details of the new adapter.
2179 /// @param response The response callback.
2180 /// @param exception The exception callback.
2181 /// @param sent The sent callback.
2182 /// @param context The request context.
2183 /// @return A function that can be called to cancel the invocation locally.
2184 // NOLINTNEXTLINE(modernize-use-nodiscard)
2185 std::function<void()> adapterAddedAsync(const AdapterInfo& info, 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;
2186
2187 /// @private
2188 void _iceI_adapterAdded(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const AdapterInfo&, const Ice::Context&) const;
2189
2190 /// @param info The details of the updated adapter.
2191 /// @param context The request context.
2192 void adapterUpdated(const AdapterInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2193
2194 /// @param info The details of the updated adapter.
2195 /// @param context The request context.
2196 /// @return A future that becomes available when the invocation completes.
2197 [[nodiscard]] std::future<void> adapterUpdatedAsync(const AdapterInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2198
2199 /// @param info The details of the updated adapter.
2200 /// @param response The response callback.
2201 /// @param exception The exception callback.
2202 /// @param sent The sent callback.
2203 /// @param context The request context.
2204 /// @return A function that can be called to cancel the invocation locally.
2205 // NOLINTNEXTLINE(modernize-use-nodiscard)
2206 std::function<void()> adapterUpdatedAsync(const AdapterInfo& info, 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;
2207
2208 /// @private
2209 void _iceI_adapterUpdated(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const AdapterInfo&, const Ice::Context&) const;
2210
2211 /// Notifies the observer that a dynamically-registered adapter was removed.
2212 /// @param id The ID of the removed adapter.
2213 /// @param context The request context.
2214 void adapterRemoved(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
2215
2216 /// Notifies the observer that a dynamically-registered adapter was removed.
2217 /// @param id The ID of the removed adapter.
2218 /// @param context The request context.
2219 /// @return A future that becomes available when the invocation completes.
2220 [[nodiscard]] std::future<void> adapterRemovedAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
2221
2222 /// Notifies the observer that a dynamically-registered adapter was removed.
2223 /// @param id The ID of the removed adapter.
2224 /// @param response The response callback.
2225 /// @param exception The exception callback.
2226 /// @param sent The sent callback.
2227 /// @param context The request context.
2228 /// @return A function that can be called to cancel the invocation locally.
2229 // NOLINTNEXTLINE(modernize-use-nodiscard)
2230 std::function<void()> adapterRemovedAsync(std::string_view id, 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;
2231
2232 /// @private
2233 void _iceI_adapterRemoved(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
2234
2235 /// Gets the type ID of the associated Slice interface.
2236 /// @return The string `"::IceGrid::AdapterObserver"`.
2237 static const char* ice_staticId() noexcept;
2238
2239 /// @private
2240 static AdapterObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return AdapterObserverPrx{std::move(ref)}; }
2241
2242 protected:
2243 /// @private
2244 AdapterObserverPrx() = default;
2245
2246 /// @private
2247 explicit AdapterObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
2248 {
2249 }
2250 };
2251
2252 /// Monitors well-known objects that are added, updated or removed using AdminPrx.
2253 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::ObjectObserver`.
2254 /// @headerfile IceGrid/IceGrid.h
2255 class ICEGRID_API ObjectObserverPrx : public Ice::Proxy<ObjectObserverPrx, Ice::ObjectPrx>
2256 {
2257 public:
2258 /// Constructs a proxy from a Communicator and a proxy string.
2259 /// @param communicator The communicator of the new proxy.
2260 /// @param proxyString The proxy string to parse.
2261 ObjectObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
2262
2263 /// Copy constructor. Constructs with a copy of the contents of @p other.
2264 /// @param other The proxy to copy from.
2265 ObjectObserverPrx(const ObjectObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
2266
2267 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
2268 /// @param other The proxy to move from.
2269 ObjectObserverPrx(ObjectObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
2270
2271 ~ObjectObserverPrx() override;
2272
2273 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
2274 /// @param rhs The proxy to copy from.
2275 /// @return A reference to this proxy.
2277 {
2278 if (this != &rhs)
2279 {
2281 }
2282 return *this;
2283 }
2284
2285 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
2286 /// @param rhs The proxy to move from.
2288 {
2289 if (this != &rhs)
2290 {
2291 Ice::ObjectPrx::operator=(std::move(rhs));
2292 }
2293 return *this;
2294 }
2295
2296 /// Provides the initial list of well-known objects to the observer.
2297 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
2298 /// @param context The request context.
2299 void objectInit(const ObjectInfoSeq& objects, const Ice::Context& context = Ice::noExplicitContext) const;
2300
2301 /// Provides the initial list of well-known objects to the observer.
2302 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
2303 /// @param context The request context.
2304 /// @return A future that becomes available when the invocation completes.
2305 [[nodiscard]] std::future<void> objectInitAsync(const ObjectInfoSeq& objects, const Ice::Context& context = Ice::noExplicitContext) const;
2306
2307 /// Provides the initial list of well-known objects to the observer.
2308 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
2309 /// @param response The response callback.
2310 /// @param exception The exception callback.
2311 /// @param sent The sent callback.
2312 /// @param context The request context.
2313 /// @return A function that can be called to cancel the invocation locally.
2314 // NOLINTNEXTLINE(modernize-use-nodiscard)
2315 std::function<void()> objectInitAsync(const ObjectInfoSeq& objects, 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;
2316
2317 /// @private
2318 void _iceI_objectInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ObjectInfoSeq&, const Ice::Context&) const;
2319
2320 /// Notifies the observer that a well-known object was added.
2321 /// @param info The details of the new object.
2322 /// @param context The request context.
2323 void objectAdded(const ObjectInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2324
2325 /// Notifies the observer that a well-known object was added.
2326 /// @param info The details of the new object.
2327 /// @param context The request context.
2328 /// @return A future that becomes available when the invocation completes.
2329 [[nodiscard]] std::future<void> objectAddedAsync(const ObjectInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2330
2331 /// Notifies the observer that a well-known object was added.
2332 /// @param info The details of the new object.
2333 /// @param response The response callback.
2334 /// @param exception The exception callback.
2335 /// @param sent The sent callback.
2336 /// @param context The request context.
2337 /// @return A function that can be called to cancel the invocation locally.
2338 // NOLINTNEXTLINE(modernize-use-nodiscard)
2339 std::function<void()> objectAddedAsync(const ObjectInfo& info, 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;
2340
2341 /// @private
2342 void _iceI_objectAdded(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ObjectInfo&, const Ice::Context&) const;
2343
2344 /// Notifies the observer that a well-known object was updated.
2345 /// @param info The details of the updated object.
2346 /// @param context The request context.
2347 void objectUpdated(const ObjectInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2348
2349 /// Notifies the observer that a well-known object was updated.
2350 /// @param info The details of the updated object.
2351 /// @param context The request context.
2352 /// @return A future that becomes available when the invocation completes.
2353 [[nodiscard]] std::future<void> objectUpdatedAsync(const ObjectInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2354
2355 /// Notifies the observer that a well-known object was updated.
2356 /// @param info The details of the updated object.
2357 /// @param response The response callback.
2358 /// @param exception The exception callback.
2359 /// @param sent The sent callback.
2360 /// @param context The request context.
2361 /// @return A function that can be called to cancel the invocation locally.
2362 // NOLINTNEXTLINE(modernize-use-nodiscard)
2363 std::function<void()> objectUpdatedAsync(const ObjectInfo& info, 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;
2364
2365 /// @private
2366 void _iceI_objectUpdated(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ObjectInfo&, const Ice::Context&) const;
2367
2368 /// Notifies the observer that a well-known object was removed.
2369 /// @param id The identity of the removed object.
2370 /// @param context The request context.
2371 void objectRemoved(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
2372
2373 /// Notifies the observer that a well-known object was removed.
2374 /// @param id The identity of the removed object.
2375 /// @param context The request context.
2376 /// @return A future that becomes available when the invocation completes.
2377 [[nodiscard]] std::future<void> objectRemovedAsync(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
2378
2379 /// Notifies the observer that a well-known object was removed.
2380 /// @param id The identity of the removed object.
2381 /// @param response The response callback.
2382 /// @param exception The exception callback.
2383 /// @param sent The sent callback.
2384 /// @param context The request context.
2385 /// @return A function that can be called to cancel the invocation locally.
2386 // NOLINTNEXTLINE(modernize-use-nodiscard)
2387 std::function<void()> objectRemovedAsync(const ::Ice::Identity& id, 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;
2388
2389 /// @private
2390 void _iceI_objectRemoved(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ::Ice::Identity&, const Ice::Context&) const;
2391
2392 /// Gets the type ID of the associated Slice interface.
2393 /// @return The string `"::IceGrid::ObjectObserver"`.
2394 static const char* ice_staticId() noexcept;
2395
2396 /// @private
2397 static ObjectObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return ObjectObserverPrx{std::move(ref)}; }
2398
2399 protected:
2400 /// @private
2401 ObjectObserverPrx() = default;
2402
2403 /// @private
2404 explicit ObjectObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
2405 {
2406 }
2407 };
2408
2409 /// Represents an administrative session between an admin tool and an IceGrid registry.
2410 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::AdminSession`.
2411 /// @see RegistryPrx
2412 /// @headerfile IceGrid/IceGrid.h
2413 class ICEGRID_API AdminSessionPrx : public Ice::Proxy<AdminSessionPrx, ::Glacier2::SessionPrx>
2414 {
2415 public:
2416#if defined(__GNUC__) && !defined(__clang__)
2417# pragma GCC diagnostic push
2418# pragma GCC diagnostic ignored "-Wextra" // initialize all virtual bases in correct order
2419#endif
2420
2421 /// Constructs a proxy from a Communicator and a proxy string.
2422 /// @param communicator The communicator of the new proxy.
2423 /// @param proxyString The proxy string to parse.
2424 AdminSessionPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
2425
2426 /// Copy constructor. Constructs with a copy of the contents of @p other.
2427 /// @param other The proxy to copy from.
2428 AdminSessionPrx(const AdminSessionPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
2429
2430 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
2431 /// @param other The proxy to move from.
2432 AdminSessionPrx(AdminSessionPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
2433
2434 ~AdminSessionPrx() override;
2435
2436 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
2437 /// @param rhs The proxy to copy from.
2438 /// @return A reference to this proxy.
2440 {
2441 if (this != &rhs)
2442 {
2444 }
2445 return *this;
2446 }
2447
2448 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
2449 /// @param rhs The proxy to move from.
2451 {
2452 if (this != &rhs)
2453 {
2454 Ice::ObjectPrx::operator=(std::move(rhs));
2455 }
2456 return *this;
2457 }
2458
2459 /// Keeps the session alive.
2460 /// @param context The request context.
2461 [[deprecated("As of Ice 3.8, there is no need to call this operation, and its implementation does nothing.")]] void keepAlive(const Ice::Context& context = Ice::noExplicitContext) const;
2462
2463 /// Keeps the session alive.
2464 /// @param context The request context.
2465 /// @return A future that becomes available when the invocation completes.
2466 [[deprecated("As of Ice 3.8, there is no need to call this operation, and its implementation does nothing.")]] [[nodiscard]] std::future<void> keepAliveAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2467
2468 /// Keeps the session alive.
2469 /// @param response The response callback.
2470 /// @param exception The exception callback.
2471 /// @param sent The sent callback.
2472 /// @param context The request context.
2473 /// @return A function that can be called to cancel the invocation locally.
2474 // NOLINTNEXTLINE(modernize-use-nodiscard)
2475 [[deprecated("As of Ice 3.8, there is no need to call this operation, and its implementation does nothing.")]] std::function<void()> keepAliveAsync(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;
2476
2477 /// @private
2478 void _iceI_keepAlive(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
2479
2480 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
2481 /// by the session.
2482 /// @param context The request context.
2483 /// @return A proxy to the IceGrid admin object. This proxy is never null.
2484 std::optional<AdminPrx> getAdmin(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2485
2486 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
2487 /// by the session.
2488 /// @param context The request context.
2489 /// @return A future that becomes available when the invocation completes. This future holds:
2490 /// - A proxy to the IceGrid admin object. This proxy is never null.
2491 [[nodiscard]] std::future<std::optional<AdminPrx>> getAdminAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2492
2493 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
2494 /// by the session.
2495 /// @param response The response callback. It accepts:
2496 /// - A proxy to the IceGrid admin object. This proxy is never null.
2497 /// @param exception The exception callback.
2498 /// @param sent The sent callback.
2499 /// @param context The request context.
2500 /// @return A function that can be called to cancel the invocation locally.
2501 // NOLINTNEXTLINE(modernize-use-nodiscard)
2502 std::function<void()> getAdminAsync(std::function<void(std::optional<::IceGrid::AdminPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2503
2504 /// @private
2505 void _iceI_getAdmin(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<AdminPrx>>>&, const Ice::Context&) const;
2506
2507 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
2508 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
2509 /// @param context The request context.
2510 /// @return A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
2511 std::optional<Ice::ObjectPrx> getAdminCallbackTemplate(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2512
2513 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
2514 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
2515 /// @param context The request context.
2516 /// @return A future that becomes available when the invocation completes. This future holds:
2517 /// - A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
2518 [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getAdminCallbackTemplateAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2519
2520 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
2521 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
2522 /// @param response The response callback. It accepts:
2523 /// - A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
2524 /// @param exception The exception callback.
2525 /// @param sent The sent callback.
2526 /// @param context The request context.
2527 /// @return A function that can be called to cancel the invocation locally.
2528 // NOLINTNEXTLINE(modernize-use-nodiscard)
2529 std::function<void()> getAdminCallbackTemplateAsync(std::function<void(std::optional<Ice::ObjectPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2530
2531 /// @private
2532 void _iceI_getAdminCallbackTemplate(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, const Ice::Context&) const;
2533
2534 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
2535 /// @param registryObs The registry observer.
2536 /// @param nodeObs The node observer.
2537 /// @param appObs The application observer.
2538 /// @param adptObs The adapter observer.
2539 /// @param objObs The object observer.
2540 /// @param context The request context.
2541 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
2542 void setObservers(const std::optional<RegistryObserverPrx>& registryObs, const std::optional<NodeObserverPrx>& nodeObs, const std::optional<ApplicationObserverPrx>& appObs, const std::optional<AdapterObserverPrx>& adptObs, const std::optional<ObjectObserverPrx>& objObs, const Ice::Context& context = Ice::noExplicitContext) const;
2543
2544 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
2545 /// @param registryObs The registry observer.
2546 /// @param nodeObs The node observer.
2547 /// @param appObs The application observer.
2548 /// @param adptObs The adapter observer.
2549 /// @param objObs The object observer.
2550 /// @param context The request context.
2551 /// @return A future that becomes available when the invocation completes.
2552 [[nodiscard]] std::future<void> setObserversAsync(const std::optional<RegistryObserverPrx>& registryObs, const std::optional<NodeObserverPrx>& nodeObs, const std::optional<ApplicationObserverPrx>& appObs, const std::optional<AdapterObserverPrx>& adptObs, const std::optional<ObjectObserverPrx>& objObs, const Ice::Context& context = Ice::noExplicitContext) const;
2553
2554 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
2555 /// @param registryObs The registry observer.
2556 /// @param nodeObs The node observer.
2557 /// @param appObs The application observer.
2558 /// @param adptObs The adapter observer.
2559 /// @param objObs The object observer.
2560 /// @param response The response callback.
2561 /// @param exception The exception callback.
2562 /// @param sent The sent callback.
2563 /// @param context The request context.
2564 /// @return A function that can be called to cancel the invocation locally.
2565 // NOLINTNEXTLINE(modernize-use-nodiscard)
2566 std::function<void()> setObserversAsync(const std::optional<RegistryObserverPrx>& registryObs, const std::optional<NodeObserverPrx>& nodeObs, const std::optional<ApplicationObserverPrx>& appObs, const std::optional<AdapterObserverPrx>& adptObs, const std::optional<ObjectObserverPrx>& objObs, 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;
2567
2568 /// @private
2569 void _iceI_setObservers(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const std::optional<RegistryObserverPrx>&, const std::optional<NodeObserverPrx>&, const std::optional<ApplicationObserverPrx>&, const std::optional<AdapterObserverPrx>&, const std::optional<ObjectObserverPrx>&, const Ice::Context&) const;
2570
2571 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
2572 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
2573 /// session.
2574 /// @param registryObs The registry observer identity.
2575 /// @param nodeObs The node observer identity.
2576 /// @param appObs The application observer.
2577 /// @param adptObs The adapter observer.
2578 /// @param objObs The object observer.
2579 /// @param context The request context.
2580 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
2581 void setObserversByIdentity(const ::Ice::Identity& registryObs, const ::Ice::Identity& nodeObs, const ::Ice::Identity& appObs, const ::Ice::Identity& adptObs, const ::Ice::Identity& objObs, const Ice::Context& context = Ice::noExplicitContext) const;
2582
2583 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
2584 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
2585 /// session.
2586 /// @param registryObs The registry observer identity.
2587 /// @param nodeObs The node observer identity.
2588 /// @param appObs The application observer.
2589 /// @param adptObs The adapter observer.
2590 /// @param objObs The object observer.
2591 /// @param context The request context.
2592 /// @return A future that becomes available when the invocation completes.
2593 [[nodiscard]] std::future<void> setObserversByIdentityAsync(const ::Ice::Identity& registryObs, const ::Ice::Identity& nodeObs, const ::Ice::Identity& appObs, const ::Ice::Identity& adptObs, const ::Ice::Identity& objObs, const Ice::Context& context = Ice::noExplicitContext) const;
2594
2595 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
2596 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
2597 /// session.
2598 /// @param registryObs The registry observer identity.
2599 /// @param nodeObs The node observer identity.
2600 /// @param appObs The application observer.
2601 /// @param adptObs The adapter observer.
2602 /// @param objObs The object observer.
2603 /// @param response The response callback.
2604 /// @param exception The exception callback.
2605 /// @param sent The sent callback.
2606 /// @param context The request context.
2607 /// @return A function that can be called to cancel the invocation locally.
2608 // NOLINTNEXTLINE(modernize-use-nodiscard)
2609 std::function<void()> setObserversByIdentityAsync(const ::Ice::Identity& registryObs, const ::Ice::Identity& nodeObs, const ::Ice::Identity& appObs, const ::Ice::Identity& adptObs, const ::Ice::Identity& objObs, 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;
2610
2611 /// @private
2612 void _iceI_setObserversByIdentity(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ::Ice::Identity&, const ::Ice::Identity&, const ::Ice::Identity&, const ::Ice::Identity&, const ::Ice::Identity&, const Ice::Context&) const;
2613
2614 /// Acquires an exclusive lock to start updating the registry applications.
2615 /// @param context The request context.
2616 /// @return The current serial.
2617 /// @throws IceGrid::AccessDeniedException Thrown when the exclusive lock can't be acquired. This might happen if the
2618 /// lock is currently acquired by another session.
2619 std::int32_t startUpdate(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2620
2621 /// Acquires an exclusive lock to start updating the registry applications.
2622 /// @param context The request context.
2623 /// @return A future that becomes available when the invocation completes. This future holds:
2624 /// - The current serial.
2625 [[nodiscard]] std::future<std::int32_t> startUpdateAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2626
2627 /// Acquires an exclusive lock to start updating the registry applications.
2628 /// @param response The response callback. It accepts:
2629 /// - The current serial.
2630 /// @param exception The exception callback.
2631 /// @param sent The sent callback.
2632 /// @param context The request context.
2633 /// @return A function that can be called to cancel the invocation locally.
2634 // NOLINTNEXTLINE(modernize-use-nodiscard)
2635 std::function<void()> startUpdateAsync(std::function<void(std::int32_t)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2636
2637 /// @private
2638 void _iceI_startUpdate(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::int32_t>>&, const Ice::Context&) const;
2639
2640 /// Finishes updating the registry and releases the exclusive lock.
2641 /// @param context The request context.
2642 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock.
2644
2645 /// Finishes updating the registry and releases the exclusive lock.
2646 /// @param context The request context.
2647 /// @return A future that becomes available when the invocation completes.
2648 [[nodiscard]] std::future<void> finishUpdateAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2649
2650 /// Finishes updating the registry and releases the exclusive lock.
2651 /// @param response The response callback.
2652 /// @param exception The exception callback.
2653 /// @param sent The sent callback.
2654 /// @param context The request context.
2655 /// @return A function that can be called to cancel the invocation locally.
2656 // NOLINTNEXTLINE(modernize-use-nodiscard)
2657 std::function<void()> finishUpdateAsync(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;
2658
2659 /// @private
2660 void _iceI_finishUpdate(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
2661
2662 /// Gets the name of the registry replica hosting this session.
2663 /// @param context The request context.
2664 /// @return The replica name of the registry.
2665 std::string getReplicaName(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2666
2667 /// Gets the name of the registry replica hosting this session.
2668 /// @param context The request context.
2669 /// @return A future that becomes available when the invocation completes. This future holds:
2670 /// - The replica name of the registry.
2671 [[nodiscard]] std::future<std::string> getReplicaNameAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2672
2673 /// Gets the name of the registry replica hosting this session.
2674 /// @param response The response callback. It accepts:
2675 /// - The replica name of the registry.
2676 /// @param exception The exception callback.
2677 /// @param sent The sent callback.
2678 /// @param context The request context.
2679 /// @return A function that can be called to cancel the invocation locally.
2680 // NOLINTNEXTLINE(modernize-use-nodiscard)
2681 std::function<void()> getReplicaNameAsync(std::function<void(std::string)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2682
2683 /// @private
2684 void _iceI_getReplicaName(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::string>>&, const Ice::Context&) const;
2685
2686 /// Opens a server log file for reading.
2687 /// @param id The server ID.
2688 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
2689 /// service deployment descriptor.
2690 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2691 /// Otherwise, the file is read from the last @p count lines.
2692 /// @param context The request context.
2693 /// @return An iterator to read the file. This proxy is never null.
2694 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
2695 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2696 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2697 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
2698 std::optional<FileIteratorPrx> openServerLog(std::string_view id, std::string_view path, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2699
2700 /// Opens a server log file for reading.
2701 /// @param id The server ID.
2702 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
2703 /// service deployment descriptor.
2704 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2705 /// Otherwise, the file is read from the last @p count lines.
2706 /// @param context The request context.
2707 /// @return A future that becomes available when the invocation completes. This future holds:
2708 /// - An iterator to read the file. This proxy is never null.
2709 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openServerLogAsync(std::string_view id, std::string_view path, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2710
2711 /// Opens a server log file for reading.
2712 /// @param id The server ID.
2713 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
2714 /// service deployment descriptor.
2715 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2716 /// Otherwise, the file is read from the last @p count lines.
2717 /// @param response The response callback. It accepts:
2718 /// - An iterator to read the file. This proxy is never null.
2719 /// @param exception The exception callback.
2720 /// @param sent The sent callback.
2721 /// @param context The request context.
2722 /// @return A function that can be called to cancel the invocation locally.
2723 // NOLINTNEXTLINE(modernize-use-nodiscard)
2724 std::function<void()> openServerLogAsync(std::string_view id, std::string_view path, std::int32_t count, std::function<void(std::optional<::IceGrid::FileIteratorPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2725
2726 /// @private
2727 void _iceI_openServerLog(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::string_view, std::int32_t, const Ice::Context&) const;
2728
2729 /// Opens a server stderr file for reading.
2730 /// @param id The server ID.
2731 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2732 /// Otherwise, the file is read from the last @p count lines.
2733 /// @param context The request context.
2734 /// @return An iterator to read the file. This proxy is never null.
2735 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
2736 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2737 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2738 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
2739 std::optional<FileIteratorPrx> openServerStdErr(std::string_view id, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2740
2741 /// Opens a server stderr file for reading.
2742 /// @param id The server ID.
2743 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2744 /// Otherwise, the file is read from the last @p count lines.
2745 /// @param context The request context.
2746 /// @return A future that becomes available when the invocation completes. This future holds:
2747 /// - An iterator to read the file. This proxy is never null.
2748 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openServerStdErrAsync(std::string_view id, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2749
2750 /// Opens a server stderr file for reading.
2751 /// @param id The server ID.
2752 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2753 /// Otherwise, the file is read from the last @p count lines.
2754 /// @param response The response callback. It accepts:
2755 /// - An iterator to read the file. This proxy is never null.
2756 /// @param exception The exception callback.
2757 /// @param sent The sent callback.
2758 /// @param context The request context.
2759 /// @return A function that can be called to cancel the invocation locally.
2760 // NOLINTNEXTLINE(modernize-use-nodiscard)
2761 std::function<void()> openServerStdErrAsync(std::string_view id, std::int32_t count, std::function<void(std::optional<::IceGrid::FileIteratorPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2762
2763 /// @private
2764 void _iceI_openServerStdErr(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2765
2766 /// Opens a server stdout file for reading.
2767 /// @param id The server id.
2768 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2769 /// Otherwise, the file is read from the last @p count lines.
2770 /// @param context The request context.
2771 /// @return An iterator to read the file. This proxy is never null.
2772 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
2773 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2774 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2775 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
2776 std::optional<FileIteratorPrx> openServerStdOut(std::string_view id, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2777
2778 /// Opens a server stdout file for reading.
2779 /// @param id The server id.
2780 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2781 /// Otherwise, the file is read from the last @p count lines.
2782 /// @param context The request context.
2783 /// @return A future that becomes available when the invocation completes. This future holds:
2784 /// - An iterator to read the file. This proxy is never null.
2785 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openServerStdOutAsync(std::string_view id, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2786
2787 /// Opens a server stdout file for reading.
2788 /// @param id The server id.
2789 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2790 /// Otherwise, the file is read from the last @p count lines.
2791 /// @param response The response callback. It accepts:
2792 /// - An iterator to read the file. This proxy is never null.
2793 /// @param exception The exception callback.
2794 /// @param sent The sent callback.
2795 /// @param context The request context.
2796 /// @return A function that can be called to cancel the invocation locally.
2797 // NOLINTNEXTLINE(modernize-use-nodiscard)
2798 std::function<void()> openServerStdOutAsync(std::string_view id, std::int32_t count, std::function<void(std::optional<::IceGrid::FileIteratorPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2799
2800 /// @private
2801 void _iceI_openServerStdOut(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2802
2803 /// Opens a node stderr file for reading.
2804 /// @param name The node name.
2805 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2806 /// Otherwise, the file is read from the last @p count lines.
2807 /// @param context The request context.
2808 /// @return An iterator to read the file. This proxy is never null.
2809 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2810 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
2811 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2812 std::optional<FileIteratorPrx> openNodeStdErr(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2813
2814 /// Opens a node stderr file for reading.
2815 /// @param name The node name.
2816 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2817 /// Otherwise, the file is read from the last @p count lines.
2818 /// @param context The request context.
2819 /// @return A future that becomes available when the invocation completes. This future holds:
2820 /// - An iterator to read the file. This proxy is never null.
2821 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openNodeStdErrAsync(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2822
2823 /// Opens a node stderr file for reading.
2824 /// @param name The node name.
2825 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2826 /// Otherwise, the file is read from the last @p count lines.
2827 /// @param response The response callback. It accepts:
2828 /// - An iterator to read the file. This proxy is never null.
2829 /// @param exception The exception callback.
2830 /// @param sent The sent callback.
2831 /// @param context The request context.
2832 /// @return A function that can be called to cancel the invocation locally.
2833 // NOLINTNEXTLINE(modernize-use-nodiscard)
2834 std::function<void()> openNodeStdErrAsync(std::string_view name, std::int32_t count, std::function<void(std::optional<::IceGrid::FileIteratorPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2835
2836 /// @private
2837 void _iceI_openNodeStdErr(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2838
2839 /// Opens a node stdout file for reading.
2840 /// @param name The node name.
2841 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2842 /// Otherwise, the file is read from the last @p count lines.
2843 /// @param context The request context.
2844 /// @return An iterator to read the file. This proxy is never null.
2845 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2846 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
2847 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2848 std::optional<FileIteratorPrx> openNodeStdOut(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2849
2850 /// Opens a node stdout file for reading.
2851 /// @param name The node name.
2852 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2853 /// Otherwise, the file is read from the last @p count lines.
2854 /// @param context The request context.
2855 /// @return A future that becomes available when the invocation completes. This future holds:
2856 /// - An iterator to read the file. This proxy is never null.
2857 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openNodeStdOutAsync(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2858
2859 /// Opens a node stdout file for reading.
2860 /// @param name The node name.
2861 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2862 /// Otherwise, the file is read from the last @p count lines.
2863 /// @param response The response callback. It accepts:
2864 /// - An iterator to read the file. This proxy is never null.
2865 /// @param exception The exception callback.
2866 /// @param sent The sent callback.
2867 /// @param context The request context.
2868 /// @return A function that can be called to cancel the invocation locally.
2869 // NOLINTNEXTLINE(modernize-use-nodiscard)
2870 std::function<void()> openNodeStdOutAsync(std::string_view name, std::int32_t count, std::function<void(std::optional<::IceGrid::FileIteratorPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2871
2872 /// @private
2873 void _iceI_openNodeStdOut(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2874
2875 /// Opens a registry stderr file for reading.
2876 /// @param name The registry name.
2877 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2878 /// Otherwise, the file is read from the last @p count lines.
2879 /// @param context The request context.
2880 /// @return An iterator to read the file. This proxy is never null.
2881 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2882 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
2883 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
2884 std::optional<FileIteratorPrx> openRegistryStdErr(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2885
2886 /// Opens a registry stderr file for reading.
2887 /// @param name The registry name.
2888 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2889 /// Otherwise, the file is read from the last @p count lines.
2890 /// @param context The request context.
2891 /// @return A future that becomes available when the invocation completes. This future holds:
2892 /// - An iterator to read the file. This proxy is never null.
2893 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openRegistryStdErrAsync(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2894
2895 /// Opens a registry stderr file for reading.
2896 /// @param name The registry name.
2897 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2898 /// Otherwise, the file is read from the last @p count lines.
2899 /// @param response The response callback. It accepts:
2900 /// - An iterator to read the file. This proxy is never null.
2901 /// @param exception The exception callback.
2902 /// @param sent The sent callback.
2903 /// @param context The request context.
2904 /// @return A function that can be called to cancel the invocation locally.
2905 // NOLINTNEXTLINE(modernize-use-nodiscard)
2906 std::function<void()> openRegistryStdErrAsync(std::string_view name, std::int32_t count, std::function<void(std::optional<::IceGrid::FileIteratorPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2907
2908 /// @private
2909 void _iceI_openRegistryStdErr(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2910
2911 /// Opens a registry stdout file for reading.
2912 /// @param name The registry name.
2913 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2914 /// Otherwise, the file is read from the last @p count lines.
2915 /// @param context The request context.
2916 /// @return An iterator to read the file. This proxy is never null.
2917 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2918 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
2919 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
2920 std::optional<FileIteratorPrx> openRegistryStdOut(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2921
2922 /// Opens a registry stdout file for reading.
2923 /// @param name The registry name.
2924 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2925 /// Otherwise, the file is read from the last @p count lines.
2926 /// @param context The request context.
2927 /// @return A future that becomes available when the invocation completes. This future holds:
2928 /// - An iterator to read the file. This proxy is never null.
2929 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openRegistryStdOutAsync(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2930
2931 /// Opens a registry stdout file for reading.
2932 /// @param name The registry name.
2933 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2934 /// Otherwise, the file is read from the last @p count lines.
2935 /// @param response The response callback. It accepts:
2936 /// - An iterator to read the file. This proxy is never null.
2937 /// @param exception The exception callback.
2938 /// @param sent The sent callback.
2939 /// @param context The request context.
2940 /// @return A function that can be called to cancel the invocation locally.
2941 // NOLINTNEXTLINE(modernize-use-nodiscard)
2942 std::function<void()> openRegistryStdOutAsync(std::string_view name, std::int32_t count, std::function<void(std::optional<::IceGrid::FileIteratorPrx>)> response, std::function<void(std::exception_ptr)> exception = nullptr, std::function<void(bool)> sent = nullptr, const Ice::Context& context = Ice::noExplicitContext) const;
2943
2944 /// @private
2945 void _iceI_openRegistryStdOut(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2946
2947 /// Gets the type ID of the associated Slice interface.
2948 /// @return The string `"::IceGrid::AdminSession"`.
2949 static const char* ice_staticId() noexcept;
2950
2951 /// @private
2952 static AdminSessionPrx _fromReference(IceInternal::ReferencePtr ref) { return AdminSessionPrx{std::move(ref)}; }
2953
2954 protected:
2955 /// @private
2956 AdminSessionPrx() = default;
2957
2958 /// @private
2959 explicit AdminSessionPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
2960 {
2961 }
2962
2963#if defined(__GNUC__) && !defined(__clang__)
2964# pragma GCC diagnostic pop
2965#endif
2966 };
2967}
2968
2969namespace IceGrid
2970{
2971 /// Information about an Ice well-known object.
2972 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ObjectInfo`.
2973 /// @headerfile IceGrid/IceGrid.h
2975 {
2976 /// The proxy of the object.
2977 std::optional<Ice::ObjectPrx> proxy;
2978
2979 /// The type of the object.
2980 std::string type;
2981
2982 /// Creates a tuple with all the fields of this struct.
2983 /// @return A tuple with all the fields of this struct.
2984 [[nodiscard]] std::tuple<const std::optional<Ice::ObjectPrx>&, const std::string&> ice_tuple() const
2985 {
2986 return std::tie(proxy, type);
2987 }
2988
2989 /// Outputs the name and value of each field of this instance to the stream.
2990 /// @param os The output stream.
2991 ICEGRID_API void ice_printFields(std::ostream& os) const;
2992 };
2993
2994 /// Outputs the description of an ObjectInfo to a stream, including all its fields.
2995 /// @param os The output stream.
2996 /// @param value The instance to output.
2997 /// @return The output stream.
2998 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ObjectInfo& value);
2999
3000 /// Information about an adapter registered with the IceGrid registry.
3001 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::AdapterInfo`.
3002 /// @headerfile IceGrid/IceGrid.h
3004 {
3005 /// The ID of the adapter.
3006 std::string id;
3007
3008 /// A dummy direct proxy that contains the adapter endpoints.
3009 std::optional<Ice::ObjectPrx> proxy;
3010
3011 /// The replica group ID of the object adapter, or empty if the adapter doesn't belong to a replica group.
3012 std::string replicaGroupId;
3013
3014 /// Creates a tuple with all the fields of this struct.
3015 /// @return A tuple with all the fields of this struct.
3016 [[nodiscard]] std::tuple<const std::string&, const std::optional<Ice::ObjectPrx>&, const std::string&> ice_tuple() const
3017 {
3018 return std::tie(id, proxy, replicaGroupId);
3019 }
3020
3021 /// Outputs the name and value of each field of this instance to the stream.
3022 /// @param os The output stream.
3023 ICEGRID_API void ice_printFields(std::ostream& os) const;
3024 };
3025
3026 /// Outputs the description of an AdapterInfo to a stream, including all its fields.
3027 /// @param os The output stream.
3028 /// @param value The instance to output.
3029 /// @return The output stream.
3030 ICEGRID_API std::ostream& operator<<(std::ostream& os, const AdapterInfo& value);
3031
3032 /// Information about a server managed by an IceGrid node.
3033 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ServerInfo`.
3034 /// @headerfile IceGrid/IceGrid.h
3036 {
3037 /// The application to which this server belongs.
3038 std::string application;
3039
3040 /// The application UUID.
3041 std::string uuid;
3042
3043 /// The application revision.
3044 std::int32_t revision;
3045
3046 /// The IceGrid node where this server is deployed.
3047 std::string node;
3048
3049 /// The server descriptor.
3051
3052 /// The ID of the session which allocated the server.
3053 std::string sessionId;
3054
3055 /// Creates a tuple with all the fields of this struct.
3056 /// @return A tuple with all the fields of this struct.
3057 [[nodiscard]] std::tuple<const std::string&, const std::string&, const std::int32_t&, const std::string&, const ::IceGrid::ServerDescriptorPtr&, const std::string&> ice_tuple() const
3058 {
3059 return std::tie(application, uuid, revision, node, descriptor, sessionId);
3060 }
3061
3062 /// Outputs the name and value of each field of this instance to the stream.
3063 /// @param os The output stream.
3064 ICEGRID_API void ice_printFields(std::ostream& os) const;
3065 };
3066
3067 /// Outputs the description of a ServerInfo to a stream, including all its fields.
3068 /// @param os The output stream.
3069 /// @param value The instance to output.
3070 /// @return The output stream.
3071 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ServerInfo& value);
3072
3073 /// Information about an IceGrid node.
3074 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::NodeInfo`.
3075 /// @headerfile IceGrid/IceGrid.h
3077 {
3078 /// The name of the node.
3079 std::string name;
3080
3081 /// The operating system name.
3082 std::string os;
3083
3084 /// The network name of the host running this node.
3085 std::string hostname;
3086
3087 /// The operation system release level.
3088 std::string release;
3089
3090 /// The operation system version.
3091 std::string version;
3092
3093 /// The machine hardware type.
3094 std::string machine;
3095
3096 /// The number of processor threads on the node.
3097 /// For example, nProcessors is 8 on a computer with a single quad-core processor and two threads per core.
3098 std::int32_t nProcessors;
3099
3100 /// The path to the node data directory.
3101 std::string dataDir;
3102
3103 /// Creates a tuple with all the fields of this struct.
3104 /// @return A tuple with all the fields of this struct.
3105 [[nodiscard]] std::tuple<const std::string&, const std::string&, const std::string&, const std::string&, const std::string&, const std::string&, const std::int32_t&, const std::string&> ice_tuple() const
3106 {
3107 return std::tie(name, os, hostname, release, version, machine, nProcessors, dataDir);
3108 }
3109
3110 /// Outputs the name and value of each field of this instance to the stream.
3111 /// @param os The output stream.
3112 ICEGRID_API void ice_printFields(std::ostream& os) const;
3113 };
3114
3115 /// Outputs the description of a NodeInfo to a stream, including all its fields.
3116 /// @param os The output stream.
3117 /// @param value The instance to output.
3118 /// @return The output stream.
3119 ICEGRID_API std::ostream& operator<<(std::ostream& os, const NodeInfo& value);
3120
3121 /// Information about an IceGrid registry replica.
3122 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::RegistryInfo`.
3123 /// @headerfile IceGrid/IceGrid.h
3125 {
3126 /// The name of the registry.
3127 std::string name;
3128
3129 /// The network name of the host running this registry.
3130 std::string hostname;
3131
3132 /// Creates a tuple with all the fields of this struct.
3133 /// @return A tuple with all the fields of this struct.
3134 [[nodiscard]] std::tuple<const std::string&, const std::string&> ice_tuple() const
3135 {
3136 return std::tie(name, hostname);
3137 }
3138
3139 /// Outputs the name and value of each field of this instance to the stream.
3140 /// @param os The output stream.
3141 ICEGRID_API void ice_printFields(std::ostream& os) const;
3142 };
3143
3144 /// Outputs the description of a RegistryInfo to a stream, including all its fields.
3145 /// @param os The output stream.
3146 /// @param value The instance to output.
3147 /// @return The output stream.
3148 ICEGRID_API std::ostream& operator<<(std::ostream& os, const RegistryInfo& value);
3149
3150 /// Information about the load of a node.
3151 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::LoadInfo`.
3152 /// @headerfile IceGrid/IceGrid.h
3154 {
3155 /// The load average over the past minute.
3156 float avg1;
3157
3158 /// The load average over the past 5 minutes.
3159 float avg5;
3160
3161 /// The load average over the past 15 minutes.
3162 float avg15;
3163
3164 /// Creates a tuple with all the fields of this struct.
3165 /// @return A tuple with all the fields of this struct.
3166 [[nodiscard]] std::tuple<const float&, const float&, const float&> ice_tuple() const
3167 {
3168 return std::tie(avg1, avg5, avg15);
3169 }
3170
3171 /// Outputs the name and value of each field of this instance to the stream.
3172 /// @param os The output stream.
3173 ICEGRID_API void ice_printFields(std::ostream& os) const;
3174 };
3175
3176 /// Outputs the description of a LoadInfo to a stream, including all its fields.
3177 /// @param os The output stream.
3178 /// @param value The instance to output.
3179 /// @return The output stream.
3180 ICEGRID_API std::ostream& operator<<(std::ostream& os, const LoadInfo& value);
3181
3182 /// Information about an IceGrid application.
3183 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ApplicationInfo`.
3184 /// @headerfile IceGrid/IceGrid.h
3186 {
3187 /// Unique application identifier.
3188 std::string uuid;
3189
3190 /// The creation time.
3191 std::int64_t createTime;
3192
3193 /// The user who created the application.
3194 std::string createUser;
3195
3196 /// The last update time.
3197 std::int64_t updateTime;
3198
3199 /// The user who updated the application.
3200 std::string updateUser;
3201
3202 /// The application revision number.
3203 std::int32_t revision;
3204
3205 /// The application descriptor.
3207
3208 /// Creates a tuple with all the fields of this struct.
3209 /// @return A tuple with all the fields of this struct.
3210 [[nodiscard]] std::tuple<const std::string&, const std::int64_t&, const std::string&, const std::int64_t&, const std::string&, const std::int32_t&, const ::IceGrid::ApplicationDescriptor&> ice_tuple() const
3211 {
3213 }
3214
3215 /// Outputs the name and value of each field of this instance to the stream.
3216 /// @param os The output stream.
3217 ICEGRID_API void ice_printFields(std::ostream& os) const;
3218 };
3219
3220 /// Outputs the description of an ApplicationInfo to a stream, including all its fields.
3221 /// @param os The output stream.
3222 /// @param value The instance to output.
3223 /// @return The output stream.
3224 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ApplicationInfo& value);
3225
3226 /// Information about updates to an IceGrid application.
3227 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ApplicationUpdateInfo`.
3228 /// @headerfile IceGrid/IceGrid.h
3230 {
3231 /// The update time.
3232 std::int64_t updateTime;
3233
3234 /// The user who updated the application.
3235 std::string updateUser;
3236
3237 /// The application revision number.
3238 std::int32_t revision;
3239
3240 /// The update descriptor.
3242
3243 /// Creates a tuple with all the fields of this struct.
3244 /// @return A tuple with all the fields of this struct.
3245 [[nodiscard]] std::tuple<const std::int64_t&, const std::string&, const std::int32_t&, const ::IceGrid::ApplicationUpdateDescriptor&> ice_tuple() const
3246 {
3247 return std::tie(updateTime, updateUser, revision, descriptor);
3248 }
3249
3250 /// Outputs the name and value of each field of this instance to the stream.
3251 /// @param os The output stream.
3252 ICEGRID_API void ice_printFields(std::ostream& os) const;
3253 };
3254
3255 /// Outputs the description of an ApplicationUpdateInfo to a stream, including all its fields.
3256 /// @param os The output stream.
3257 /// @param value The instance to output.
3258 /// @return The output stream.
3259 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ApplicationUpdateInfo& value);
3260
3261 /// The exception that is thrown when IceGrid cannot deploy a server.
3262 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::DeploymentException`.
3263 /// @headerfile IceGrid/IceGrid.h
3264 class ICEGRID_API DeploymentException : public Ice::UserException
3265 {
3266 public:
3267 /// Default constructor.
3268 DeploymentException() noexcept = default;
3269
3270 /// One-shot constructor to initialize all data members.
3271 /// @param reason The reason for the failure.
3272 DeploymentException(std::string reason) noexcept :
3273 reason(std::move(reason))
3274 {
3275 }
3276
3277 /// Copy constructor.
3278 DeploymentException(const DeploymentException&) noexcept = default;
3279
3280 /// Creates a tuple with all the fields of this exception.
3281 /// @return A tuple with all the fields of this exception.
3282 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3283 {
3284 return std::tie(reason);
3285 }
3286
3287 void ice_printFields(std::ostream& os) const override;
3288 /// Gets the type ID of the associated Slice exception.
3289 /// @return The string `"::IceGrid::DeploymentException"`.
3290 static const char* ice_staticId() noexcept;
3291
3292 [[nodiscard]] const char* ice_id() const noexcept override;
3293
3294 void ice_throw() const override;
3295
3296 /// The reason for the failure.
3297 std::string reason;
3298
3299 protected:
3300 /// @private
3301 void _writeImpl(Ice::OutputStream*) const override;
3302
3303 /// @private
3304 void _readImpl(Ice::InputStream*) override;
3305 };
3306
3307 /// The exception that is thrown when IceGrid cannot reach a node.
3308 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::NodeUnreachableException`.
3309 /// @headerfile IceGrid/IceGrid.h
3310 class ICEGRID_API NodeUnreachableException : public Ice::UserException
3311 {
3312 public:
3313 /// Default constructor.
3314 NodeUnreachableException() noexcept = default;
3315
3316 /// One-shot constructor to initialize all data members.
3317 /// @param name The name of the node that is not reachable.
3318 /// @param reason The reason why the node couldn't be reached.
3319 NodeUnreachableException(std::string name, std::string reason) noexcept :
3320 name(std::move(name)),
3321 reason(std::move(reason))
3322 {
3323 }
3324
3325 /// Copy constructor.
3327
3328 /// Creates a tuple with all the fields of this exception.
3329 /// @return A tuple with all the fields of this exception.
3330 [[nodiscard]] std::tuple<const std::string&, const std::string&> ice_tuple() const
3331 {
3332 return std::tie(name, reason);
3333 }
3334
3335 void ice_printFields(std::ostream& os) const override;
3336 /// Gets the type ID of the associated Slice exception.
3337 /// @return The string `"::IceGrid::NodeUnreachableException"`.
3338 static const char* ice_staticId() noexcept;
3339
3340 [[nodiscard]] const char* ice_id() const noexcept override;
3341
3342 void ice_throw() const override;
3343
3344 /// The name of the node that is not reachable.
3345 std::string name;
3346
3347 /// The reason why the node couldn't be reached.
3348 std::string reason;
3349
3350 protected:
3351 /// @private
3352 void _writeImpl(Ice::OutputStream*) const override;
3353
3354 /// @private
3355 void _readImpl(Ice::InputStream*) override;
3356 };
3357
3358 /// The exception that is thrown when IceGrid cannot reach a registry.
3359 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::RegistryUnreachableException`.
3360 /// @headerfile IceGrid/IceGrid.h
3361 class ICEGRID_API RegistryUnreachableException : public Ice::UserException
3362 {
3363 public:
3364 /// Default constructor.
3365 RegistryUnreachableException() noexcept = default;
3366
3367 /// One-shot constructor to initialize all data members.
3368 /// @param name The name of the registry that is not reachable.
3369 /// @param reason The reason why the registry couldn't be reached.
3370 RegistryUnreachableException(std::string name, std::string reason) noexcept :
3371 name(std::move(name)),
3372 reason(std::move(reason))
3373 {
3374 }
3375
3376 /// Copy constructor.
3378
3379 /// Creates a tuple with all the fields of this exception.
3380 /// @return A tuple with all the fields of this exception.
3381 [[nodiscard]] std::tuple<const std::string&, const std::string&> ice_tuple() const
3382 {
3383 return std::tie(name, reason);
3384 }
3385
3386 void ice_printFields(std::ostream& os) const override;
3387 /// Gets the type ID of the associated Slice exception.
3388 /// @return The string `"::IceGrid::RegistryUnreachableException"`.
3389 static const char* ice_staticId() noexcept;
3390
3391 [[nodiscard]] const char* ice_id() const noexcept override;
3392
3393 void ice_throw() const override;
3394
3395 /// The name of the registry that is not reachable.
3396 std::string name;
3397
3398 /// The reason why the registry couldn't be reached.
3399 std::string reason;
3400
3401 protected:
3402 /// @private
3403 void _writeImpl(Ice::OutputStream*) const override;
3404
3405 /// @private
3406 void _readImpl(Ice::InputStream*) override;
3407 };
3408
3409 /// The exception that is thrown when an unknown signal is sent to a server.
3410 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::BadSignalException`.
3411 /// @headerfile IceGrid/IceGrid.h
3412 class ICEGRID_API BadSignalException : public Ice::UserException
3413 {
3414 public:
3415 /// Default constructor.
3416 BadSignalException() noexcept = default;
3417
3418 /// One-shot constructor to initialize all data members.
3419 /// @param reason The details of the unknown signal.
3420 BadSignalException(std::string reason) noexcept :
3421 reason(std::move(reason))
3422 {
3423 }
3424
3425 /// Copy constructor.
3426 BadSignalException(const BadSignalException&) noexcept = default;
3427
3428 /// Creates a tuple with all the fields of this exception.
3429 /// @return A tuple with all the fields of this exception.
3430 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3431 {
3432 return std::tie(reason);
3433 }
3434
3435 void ice_printFields(std::ostream& os) const override;
3436 /// Gets the type ID of the associated Slice exception.
3437 /// @return The string `"::IceGrid::BadSignalException"`.
3438 static const char* ice_staticId() noexcept;
3439
3440 [[nodiscard]] const char* ice_id() const noexcept override;
3441
3442 void ice_throw() const override;
3443
3444 /// The details of the unknown signal.
3445 std::string reason;
3446
3447 protected:
3448 /// @private
3449 void _writeImpl(Ice::OutputStream*) const override;
3450
3451 /// @private
3452 void _readImpl(Ice::InputStream*) override;
3453 };
3454
3455 /// The exception that is thrown when the registry update lock cannot be acquired.
3456 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::AccessDeniedException`.
3457 /// @headerfile IceGrid/IceGrid.h
3458 class ICEGRID_API AccessDeniedException : public Ice::UserException
3459 {
3460 public:
3461 /// Default constructor.
3462 AccessDeniedException() noexcept = default;
3463
3464 /// One-shot constructor to initialize all data members.
3465 /// @param lockUserId The id of the user holding the lock (if any).
3466 AccessDeniedException(std::string lockUserId) noexcept :
3467 lockUserId(std::move(lockUserId))
3468 {
3469 }
3470
3471 /// Copy constructor.
3473
3474 /// Creates a tuple with all the fields of this exception.
3475 /// @return A tuple with all the fields of this exception.
3476 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3477 {
3478 return std::tie(lockUserId);
3479 }
3480
3481 void ice_printFields(std::ostream& os) const override;
3482 /// Gets the type ID of the associated Slice exception.
3483 /// @return The string `"::IceGrid::AccessDeniedException"`.
3484 static const char* ice_staticId() noexcept;
3485
3486 [[nodiscard]] const char* ice_id() const noexcept override;
3487
3488 void ice_throw() const override;
3489
3490 /// The id of the user holding the lock (if any).
3491 std::string lockUserId;
3492
3493 protected:
3494 /// @private
3495 void _writeImpl(Ice::OutputStream*) const override;
3496
3497 /// @private
3498 void _readImpl(Ice::InputStream*) override;
3499 };
3500
3501 /// The exception that is thrown when a client is not allowed to create a session.
3502 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::PermissionDeniedException`.
3503 /// @headerfile IceGrid/IceGrid.h
3504 class ICEGRID_API PermissionDeniedException : public Ice::UserException
3505 {
3506 public:
3507 /// Default constructor.
3508 PermissionDeniedException() noexcept = default;
3509
3510 /// One-shot constructor to initialize all data members.
3511 /// @param reason The reason why permission was denied.
3512 PermissionDeniedException(std::string reason) noexcept :
3513 reason(std::move(reason))
3514 {
3515 }
3516
3517 /// Copy constructor.
3519
3520 /// Creates a tuple with all the fields of this exception.
3521 /// @return A tuple with all the fields of this exception.
3522 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3523 {
3524 return std::tie(reason);
3525 }
3526
3527 void ice_printFields(std::ostream& os) const override;
3528 /// Gets the type ID of the associated Slice exception.
3529 /// @return The string `"::IceGrid::PermissionDeniedException"`.
3530 static const char* ice_staticId() noexcept;
3531
3532 [[nodiscard]] const char* ice_id() const noexcept override;
3533
3534 void ice_throw() const override;
3535
3536 /// The reason why permission was denied.
3537 std::string reason;
3538
3539 protected:
3540 /// @private
3541 void _writeImpl(Ice::OutputStream*) const override;
3542
3543 /// @private
3544 void _readImpl(Ice::InputStream*) override;
3545 };
3546
3547 /// The exception that is thrown when an observer is already registered with the registry.
3548 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::ObserverAlreadyRegisteredException`.
3549 /// @see AdminSessionPrx::setObservers
3550 /// @see AdminSessionPrx::setObserversByIdentity
3551 /// @headerfile IceGrid/IceGrid.h
3552 class ICEGRID_API ObserverAlreadyRegisteredException : public Ice::UserException
3553 {
3554 public:
3555 /// Default constructor.
3557
3558 /// One-shot constructor to initialize all data members.
3559 /// @param id The identity of the observer.
3560 ObserverAlreadyRegisteredException(::Ice::Identity id) noexcept :
3561 id(std::move(id))
3562 {
3563 }
3564
3565 /// Copy constructor.
3567
3568 /// Creates a tuple with all the fields of this exception.
3569 /// @return A tuple with all the fields of this exception.
3570 [[nodiscard]] std::tuple<const ::Ice::Identity&> ice_tuple() const
3571 {
3572 return std::tie(id);
3573 }
3574
3575 void ice_printFields(std::ostream& os) const override;
3576 /// Gets the type ID of the associated Slice exception.
3577 /// @return The string `"::IceGrid::ObserverAlreadyRegisteredException"`.
3578 static const char* ice_staticId() noexcept;
3579
3580 [[nodiscard]] const char* ice_id() const noexcept override;
3581
3582 void ice_throw() const override;
3583
3584 /// The identity of the observer.
3585 ::Ice::Identity id;
3586
3587 protected:
3588 /// @private
3589 void _writeImpl(Ice::OutputStream*) const override;
3590
3591 /// @private
3592 void _readImpl(Ice::InputStream*) override;
3593 };
3594
3595 /// The exception that is thrown when a log file is not available.
3596 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::FileNotAvailableException`.
3597 /// @see AdminSessionPrx::openServerStdOut
3598 /// @see AdminSessionPrx::openServerStdErr
3599 /// @see AdminSessionPrx::openNodeStdOut
3600 /// @see AdminSessionPrx::openNodeStdErr
3601 /// @see AdminSessionPrx::openRegistryStdOut
3602 /// @see AdminSessionPrx::openRegistryStdErr
3603 /// @headerfile IceGrid/IceGrid.h
3604 class ICEGRID_API FileNotAvailableException : public Ice::UserException
3605 {
3606 public:
3607 /// Default constructor.
3608 FileNotAvailableException() noexcept = default;
3609
3610 /// One-shot constructor to initialize all data members.
3611 /// @param reason The reason for the failure.
3612 FileNotAvailableException(std::string reason) noexcept :
3613 reason(std::move(reason))
3614 {
3615 }
3616
3617 /// Copy constructor.
3619
3620 /// Creates a tuple with all the fields of this exception.
3621 /// @return A tuple with all the fields of this exception.
3622 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3623 {
3624 return std::tie(reason);
3625 }
3626
3627 void ice_printFields(std::ostream& os) const override;
3628 /// Gets the type ID of the associated Slice exception.
3629 /// @return The string `"::IceGrid::FileNotAvailableException"`.
3630 static const char* ice_staticId() noexcept;
3631
3632 [[nodiscard]] const char* ice_id() const noexcept override;
3633
3634 void ice_throw() const override;
3635
3636 /// The reason for the failure.
3637 std::string reason;
3638
3639 protected:
3640 /// @private
3641 void _writeImpl(Ice::OutputStream*) const override;
3642
3643 /// @private
3644 void _readImpl(Ice::InputStream*) override;
3645 };
3646
3647 /// Dynamic information about the state of a server.
3648 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ServerDynamicInfo`.
3649 /// @headerfile IceGrid/IceGrid.h
3651 {
3652 /// The ID of the server.
3653 std::string id;
3654
3655 /// The state of the server.
3657
3658 /// The process ID of the server.
3659 std::int32_t pid;
3660
3661 /// Indicates whether the server is enabled.
3663
3664 /// Creates a tuple with all the fields of this struct.
3665 /// @return A tuple with all the fields of this struct.
3666 [[nodiscard]] std::tuple<const std::string&, const ::IceGrid::ServerState&, const std::int32_t&, const bool&> ice_tuple() const
3667 {
3668 return std::tie(id, state, pid, enabled);
3669 }
3670
3671 /// Outputs the name and value of each field of this instance to the stream.
3672 /// @param os The output stream.
3673 ICEGRID_API void ice_printFields(std::ostream& os) const;
3674 };
3675
3676 /// Outputs the description of a ServerDynamicInfo to a stream, including all its fields.
3677 /// @param os The output stream.
3678 /// @param value The instance to output.
3679 /// @return The output stream.
3680 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ServerDynamicInfo& value);
3681
3682 /// Dynamic information about the state of an adapter.
3683 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::AdapterDynamicInfo`.
3684 /// @headerfile IceGrid/IceGrid.h
3686 {
3687 /// The id of the adapter.
3688 std::string id;
3689
3690 /// The direct proxy containing the adapter endpoints. This proxy is never null.
3691 std::optional<Ice::ObjectPrx> proxy;
3692
3693 /// Creates a tuple with all the fields of this struct.
3694 /// @return A tuple with all the fields of this struct.
3695 [[nodiscard]] std::tuple<const std::string&, const std::optional<Ice::ObjectPrx>&> ice_tuple() const
3696 {
3697 return std::tie(id, proxy);
3698 }
3699
3700 /// Outputs the name and value of each field of this instance to the stream.
3701 /// @param os The output stream.
3702 ICEGRID_API void ice_printFields(std::ostream& os) const;
3703 };
3704
3705 /// Outputs the description of an AdapterDynamicInfo to a stream, including all its fields.
3706 /// @param os The output stream.
3707 /// @param value The instance to output.
3708 /// @return The output stream.
3709 ICEGRID_API std::ostream& operator<<(std::ostream& os, const AdapterDynamicInfo& value);
3710
3711 /// Dynamic information about the state of a node.
3712 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::NodeDynamicInfo`.
3713 /// @headerfile IceGrid/IceGrid.h
3715 {
3716 /// Some static information about the node.
3718
3719 /// The dynamic information of the servers deployed on this node.
3721
3722 /// The dynamic information of the adapters deployed on this node.
3724
3725 /// Creates a tuple with all the fields of this struct.
3726 /// @return A tuple with all the fields of this struct.
3727 [[nodiscard]] std::tuple<const ::IceGrid::NodeInfo&, const ::IceGrid::ServerDynamicInfoSeq&, const ::IceGrid::AdapterDynamicInfoSeq&> ice_tuple() const
3728 {
3729 return std::tie(info, servers, adapters);
3730 }
3731
3732 /// Outputs the name and value of each field of this instance to the stream.
3733 /// @param os The output stream.
3734 ICEGRID_API void ice_printFields(std::ostream& os) const;
3735 };
3736
3737 /// Outputs the description of a NodeDynamicInfo to a stream, including all its fields.
3738 /// @param os The output stream.
3739 /// @param value The instance to output.
3740 /// @return The output stream.
3741 ICEGRID_API std::ostream& operator<<(std::ostream& os, const NodeDynamicInfo& value);
3742
3743 /// @cond INTERNAL
3744 using Ice::Tuple::operator<;
3745 using Ice::Tuple::operator<=;
3746 using Ice::Tuple::operator>;
3747 using Ice::Tuple::operator>=;
3748 using Ice::Tuple::operator==;
3749 using Ice::Tuple::operator!=;
3750 /// @endcond
3751}
3752
3753namespace IceGrid
3754{
3755 /// Provides administrative access to an IceGrid deployment.
3756 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::Admin`.
3757 /// @headerfile IceGrid/IceGrid.h
3758 class ICEGRID_API Admin : public virtual Ice::Object
3759 {
3760 public:
3761 /// The associated proxy type.
3762 using ProxyType = AdminPrx;
3763
3764 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
3765 /// @param request The incoming request.
3766 /// @param sendResponse The callback to send the response.
3767 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
3768
3769 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
3770
3771 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
3772
3773 /// Adds an application to IceGrid.
3774 /// @param descriptor The application descriptor.
3775 /// @param current The Current object of the incoming request.
3776 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3777 /// session is holding the lock.
3778 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3779 virtual void addApplication(ApplicationDescriptor descriptor, const Ice::Current& current) = 0;
3780
3781 /// @private
3782 void _iceD_addApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3783
3784 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
3785 /// @param descriptor The new application descriptor.
3786 /// @param current The Current object of the incoming request.
3787 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3788 /// session is holding the lock.
3789 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3790 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3791 virtual void syncApplication(ApplicationDescriptor descriptor, const Ice::Current& current) = 0;
3792
3793 /// @private
3794 void _iceD_syncApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3795
3796 /// Updates a deployed application.
3797 /// @param descriptor The update descriptor.
3798 /// @param current The Current object of the incoming request.
3799 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3800 /// session is holding the lock.
3801 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3802 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3803 virtual void updateApplication(ApplicationUpdateDescriptor descriptor, const Ice::Current& current) = 0;
3804
3805 /// @private
3806 void _iceD_updateApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3807
3808 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
3809 /// only if no server restarts are necessary for the update of the application. If some servers need to be
3810 /// restarted, the synchronization is rejected with a DeploymentException.
3811 /// @param descriptor The application descriptor.
3812 /// @param current The Current object of the incoming request.
3813 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3814 /// session is holding the lock.
3815 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3816 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3817 virtual void syncApplicationWithoutRestart(ApplicationDescriptor descriptor, const Ice::Current& current) = 0;
3818
3819 /// @private
3820 void _iceD_syncApplicationWithoutRestart(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3821
3822 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
3823 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
3824 /// DeploymentException.
3825 /// @param descriptor The update descriptor.
3826 /// @param current The Current object of the incoming request.
3827 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3828 /// session is holding the lock.
3829 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3830 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3831 virtual void updateApplicationWithoutRestart(ApplicationUpdateDescriptor descriptor, const Ice::Current& current) = 0;
3832
3833 /// @private
3834 void _iceD_updateApplicationWithoutRestart(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3835
3836 /// Removes an application from IceGrid.
3837 /// @param name The application name.
3838 /// @param current The Current object of the incoming request.
3839 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3840 /// session is holding the lock.
3841 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3842 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3843 virtual void removeApplication(std::string name, const Ice::Current& current) = 0;
3844
3845 /// @private
3846 void _iceD_removeApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3847
3848 /// Instantiates a server template.
3849 /// @param application The application name.
3850 /// @param node The name of the node where the server will be deployed.
3851 /// @param desc The descriptor of the server instance to deploy.
3852 /// @param current The Current object of the incoming request.
3853 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3854 /// session is holding the lock.
3855 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3856 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3857 virtual void instantiateServer(std::string application, std::string node, ServerInstanceDescriptor desc, const Ice::Current& current) = 0;
3858
3859 /// @private
3860 void _iceD_instantiateServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3861
3862 /// Gets an application descriptor.
3863 /// @param name The application name.
3864 /// @param current The Current object of the incoming request.
3865 /// @return The application descriptor.
3866 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3867 [[nodiscard]] virtual ApplicationInfo getApplicationInfo(std::string name, const Ice::Current& current) const = 0;
3868
3869 /// @private
3870 void _iceD_getApplicationInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3871
3872 /// Gets the default application descriptor.
3873 /// @param current The Current object of the incoming request.
3874 /// @return The default application descriptor.
3875 /// @throws IceGrid::DeploymentException Thrown when the default application descriptor is invalid or unreachable.
3876 [[nodiscard]] virtual ApplicationDescriptor getDefaultApplicationDescriptor(const Ice::Current& current) const = 0;
3877
3878 /// @private
3879 void _iceD_getDefaultApplicationDescriptor(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3880
3881 /// Gets all the IceGrid applications currently registered.
3882 /// @param current The Current object of the incoming request.
3883 /// @return The application names.
3884 [[nodiscard]] virtual ::Ice::StringSeq getAllApplicationNames(const Ice::Current& current) const = 0;
3885
3886 /// @private
3887 void _iceD_getAllApplicationNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3888
3889 /// Gets information about a server.
3890 /// @param id The server ID.
3891 /// @param current The Current object of the incoming request.
3892 /// @return The server information.
3893 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3894 [[nodiscard]] virtual ServerInfo getServerInfo(std::string id, const Ice::Current& current) const = 0;
3895
3896 /// @private
3897 void _iceD_getServerInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3898
3899 /// Gets the state of a server.
3900 /// @param id The server ID.
3901 /// @param current The Current object of the incoming request.
3902 /// @return The server state.
3903 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3904 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3905 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3906 [[nodiscard]] virtual ServerState getServerState(std::string id, const Ice::Current& current) const = 0;
3907
3908 /// @private
3909 void _iceD_getServerState(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3910
3911 /// Gets the system process ID of a server. The process ID is operating system dependent.
3912 /// @param id The server ID.
3913 /// @param current The Current object of the incoming request.
3914 /// @return The process ID.
3915 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3916 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3917 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3918 [[nodiscard]] virtual std::int32_t getServerPid(std::string id, const Ice::Current& current) const = 0;
3919
3920 /// @private
3921 void _iceD_getServerPid(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3922
3923 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
3924 /// changing its identity: use the server ID as name and the returned category as category.
3925 /// @param current The Current object of the incoming request.
3926 /// @return The category for server admin objects.
3927 [[nodiscard]] virtual std::string getServerAdminCategory(const Ice::Current& current) const = 0;
3928
3929 /// @private
3930 void _iceD_getServerAdminCategory(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3931
3932 /// Gets a proxy to the admin object of a server.
3933 /// @param id The server ID.
3934 /// @param current The Current object of the incoming request.
3935 /// @return A proxy to the admin object of the server. This proxy is never null.
3936 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3937 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3938 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3939 [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getServerAdmin(std::string id, const Ice::Current& current) const = 0;
3940
3941 /// @private
3942 void _iceD_getServerAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3943
3944 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
3945 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
3946 /// default.
3947 /// @param id The server ID.
3948 /// @param enabled `true` to enable the server, `false` to disable it.
3949 /// @param current The Current object of the incoming request.
3950 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3951 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3952 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3953 virtual void enableServer(std::string id, bool enabled, const Ice::Current& current) = 0;
3954
3955 /// @private
3956 void _iceD_enableServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3957
3958 /// Checks if the server is enabled or disabled.
3959 /// @param id The server ID.
3960 /// @param current The Current object of the incoming request.
3961 /// @return `true` if the server is enabled, `false` otherwise.
3962 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3963 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3964 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3965 [[nodiscard]] virtual bool isServerEnabled(std::string id, const Ice::Current& current) const = 0;
3966
3967 /// @private
3968 void _iceD_isServerEnabled(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3969
3970 /// Starts a server and waits for its activation.
3971 /// @param id The server id.
3972 /// @param response The response callback.
3973 /// @param exception The exception callback.
3974 /// @param current The Current object of the incoming request.
3975 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3976 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3977 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3978 /// @throws IceGrid::ServerStartException Thrown when the server startup failed.
3979 virtual void startServerAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
3980
3981 /// @private
3982 void _iceD_startServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3983
3984 /// Stops a server.
3985 /// @param id The server ID.
3986 /// @param response The response callback.
3987 /// @param exception The exception callback.
3988 /// @param current The Current object of the incoming request.
3989 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3990 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3991 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3992 /// @throws IceGrid::ServerStopException Thrown when the server stop failed.
3993 virtual void stopServerAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
3994
3995 /// @private
3996 void _iceD_stopServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3997
3998 /// Sends a signal to a server.
3999 /// @param id The server ID.
4000 /// @param signal The signal, for example SIGTERM or 15.
4001 /// @param current The Current object of the incoming request.
4002 /// @throws IceGrid::BadSignalException Thrown when the signal is not recognized by the target server.
4003 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
4004 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4005 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4006 virtual void sendSignal(std::string id, std::string signal, const Ice::Current& current) = 0;
4007
4008 /// @private
4009 void _iceD_sendSignal(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4010
4011 /// Gets the IDs of all the servers registered with IceGrid.
4012 /// @param current The Current object of the incoming request.
4013 /// @return The server IDs.
4014 [[nodiscard]] virtual ::Ice::StringSeq getAllServerIds(const Ice::Current& current) const = 0;
4015
4016 /// @private
4017 void _iceD_getAllServerIds(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4018
4019 /// Gets adapter information for the replica group or adapter with the given ID.
4020 /// @param id The adapter or replica group ID.
4021 /// @param current The Current object of the incoming request.
4022 /// @return A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
4023 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
4024 /// replica group.
4025 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter or replica group doesn't exist.
4026 [[nodiscard]] virtual AdapterInfoSeq getAdapterInfo(std::string id, const Ice::Current& current) const = 0;
4027
4028 /// @private
4029 void _iceD_getAdapterInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4030
4031 /// Removes the adapter with the given ID.
4032 /// @param id The adapter ID.
4033 /// @param current The Current object of the incoming request.
4034 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter doesn't exist.
4035 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4036 virtual void removeAdapter(std::string id, const Ice::Current& current) = 0;
4037
4038 /// @private
4039 void _iceD_removeAdapter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4040
4041 /// Gets the IDs of all adapters registered with IceGrid.
4042 /// @param current The Current object of the incoming request.
4043 /// @return The adapter IDs.
4044 [[nodiscard]] virtual ::Ice::StringSeq getAllAdapterIds(const Ice::Current& current) const = 0;
4045
4046 /// @private
4047 void _iceD_getAllAdapterIds(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4048
4049 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
4050 /// object must be reachable.
4051 /// @param obj A proxy to the object. This proxy is never null.
4052 /// @param current The Current object of the incoming request.
4053 /// @throws IceGrid::DeploymentException Thrown when the object can't be added.
4054 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
4055 virtual void addObject(std::optional<Ice::ObjectPrx> obj, const Ice::Current& current) = 0;
4056
4057 /// @private
4058 void _iceD_addObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4059
4060 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
4061 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
4062 /// @param obj A proxy to the object. This proxy is never null.
4063 /// @param current The Current object of the incoming request.
4064 /// @throws IceGrid::DeploymentException Thrown when the object can't be updated.
4065 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
4066 virtual void updateObject(std::optional<Ice::ObjectPrx> obj, const Ice::Current& current) = 0;
4067
4068 /// @private
4069 void _iceD_updateObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4070
4071 /// Adds an object to the object registry and explicitly specifies its type.
4072 /// @param obj The object to be added to the registry. The proxy is never null.
4073 /// @param type The type name.
4074 /// @param current The Current object of the incoming request.
4075 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4076 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
4077 virtual void addObjectWithType(std::optional<Ice::ObjectPrx> obj, std::string type, const Ice::Current& current) = 0;
4078
4079 /// @private
4080 void _iceD_addObjectWithType(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4081
4082 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
4083 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
4084 /// @param id The identity of the object to remove.
4085 /// @param current The Current object of the incoming request.
4086 /// @throws IceGrid::DeploymentException Thrown when the object can't be removed.
4087 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
4088 virtual void removeObject(::Ice::Identity id, const Ice::Current& current) = 0;
4089
4090 /// @private
4091 void _iceD_removeObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4092
4093 /// Gets the object info for the object.
4094 /// @param id The identity of the object.
4095 /// @param current The Current object of the incoming request.
4096 /// @return The object info.
4097 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
4098 [[nodiscard]] virtual ObjectInfo getObjectInfo(::Ice::Identity id, const Ice::Current& current) const = 0;
4099
4100 /// @private
4101 void _iceD_getObjectInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4102
4103 /// Gets the object info of all the registered objects with a given type.
4104 /// @param type The type name.
4105 /// @param current The Current object of the incoming request.
4106 /// @return The object infos.
4107 [[nodiscard]] virtual ObjectInfoSeq getObjectInfosByType(std::string type, const Ice::Current& current) const = 0;
4108
4109 /// @private
4110 void _iceD_getObjectInfosByType(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4111
4112 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
4113 /// @param expr The expression to match against the stringified identities of registered objects. The expression
4114 /// may contain a trailing wildcard (`*`) character.
4115 /// @param current The Current object of the incoming request.
4116 /// @return All the object infos with a stringified identity matching the given expression.
4117 [[nodiscard]] virtual ObjectInfoSeq getAllObjectInfos(std::string expr, const Ice::Current& current) const = 0;
4118
4119 /// @private
4120 void _iceD_getAllObjectInfos(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4121
4122 /// Pings an IceGrid node to see if it is active.
4123 /// @param name The node name.
4124 /// @param current The Current object of the incoming request.
4125 /// @return `true` if the node ping succeeded, `false` otherwise.
4126 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4127 [[nodiscard]] virtual bool pingNode(std::string name, const Ice::Current& current) const = 0;
4128
4129 /// @private
4130 void _iceD_pingNode(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4131
4132 /// Gets the load averages of a node.
4133 /// @param name The node name.
4134 /// @param current The Current object of the incoming request.
4135 /// @return The node load information.
4136 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4137 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4138 [[nodiscard]] virtual LoadInfo getNodeLoad(std::string name, const Ice::Current& current) const = 0;
4139
4140 /// @private
4141 void _iceD_getNodeLoad(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4142
4143 /// Gets the node information of a node.
4144 /// @param name The node name.
4145 /// @param current The Current object of the incoming request.
4146 /// @return The node information.
4147 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4148 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4149 [[nodiscard]] virtual NodeInfo getNodeInfo(std::string name, const Ice::Current& current) const = 0;
4150
4151 /// @private
4152 void _iceD_getNodeInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4153
4154 /// Gets a proxy to the admin object of an IceGrid node.
4155 /// @param name The IceGrid node name.
4156 /// @param current The Current object of the incoming request.
4157 /// @return A proxy to the IceGrid node's admin object. This proxy is never null.
4158 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4159 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4160 [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getNodeAdmin(std::string name, const Ice::Current& current) const = 0;
4161
4162 /// @private
4163 void _iceD_getNodeAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4164
4165 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
4166 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
4167 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
4168 /// @param name The node name.
4169 /// @param current The Current object of the incoming request.
4170 /// @return The number of processor sockets or 1 if the number of sockets can't be determined.
4171 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4172 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4173 [[nodiscard]] virtual std::int32_t getNodeProcessorSocketCount(std::string name, const Ice::Current& current) const = 0;
4174
4175 /// @private
4176 void _iceD_getNodeProcessorSocketCount(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4177
4178 /// Shuts down an IceGrid node.
4179 /// @param name The node name.
4180 /// @param current The Current object of the incoming request.
4181 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4182 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4183 virtual void shutdownNode(std::string name, const Ice::Current& current) = 0;
4184
4185 /// @private
4186 void _iceD_shutdownNode(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4187
4188 /// Get the hostname of a node.
4189 /// @param name The node name.
4190 /// @param current The Current object of the incoming request.
4191 /// @return The node hostname.
4192 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4193 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4194 [[nodiscard]] virtual std::string getNodeHostname(std::string name, const Ice::Current& current) const = 0;
4195
4196 /// @private
4197 void _iceD_getNodeHostname(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4198
4199 /// Gets the names of all IceGrid nodes currently registered.
4200 /// @param current The Current object of the incoming request.
4201 /// @return The node names.
4202 [[nodiscard]] virtual ::Ice::StringSeq getAllNodeNames(const Ice::Current& current) const = 0;
4203
4204 /// @private
4205 void _iceD_getAllNodeNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4206
4207 /// Pings an IceGrid registry to see if it is active.
4208 /// @param name The registry name.
4209 /// @param current The Current object of the incoming request.
4210 /// @return `true` if the registry ping succeeded, `false` otherwise.
4211 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4212 [[nodiscard]] virtual bool pingRegistry(std::string name, const Ice::Current& current) const = 0;
4213
4214 /// @private
4215 void _iceD_pingRegistry(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4216
4217 /// Gets the registry information of an IceGrid registry.
4218 /// @param name The registry name.
4219 /// @param current The Current object of the incoming request.
4220 /// @return The registry information.
4221 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4222 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
4223 [[nodiscard]] virtual RegistryInfo getRegistryInfo(std::string name, const Ice::Current& current) const = 0;
4224
4225 /// @private
4226 void _iceD_getRegistryInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4227
4228 /// Gets a proxy to the admin object of an IceGrid registry.
4229 /// @param name The registry name.
4230 /// @param current The Current object of the incoming request.
4231 /// @return A proxy to the admin object of an IceGrid registry. This proxy is never null.
4232 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4233 [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getRegistryAdmin(std::string name, const Ice::Current& current) const = 0;
4234
4235 /// @private
4236 void _iceD_getRegistryAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4237
4238 /// Shuts down an IceGrid registry.
4239 /// @param name The registry name.
4240 /// @param current The Current object of the incoming request.
4241 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4242 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
4243 virtual void shutdownRegistry(std::string name, const Ice::Current& current) = 0;
4244
4245 /// @private
4246 void _iceD_shutdownRegistry(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4247
4248 /// Gets the names of all the IceGrid registries currently registered.
4249 /// @param current The Current object of the incoming request.
4250 /// @return The registry names.
4251 [[nodiscard]] virtual ::Ice::StringSeq getAllRegistryNames(const Ice::Current& current) const = 0;
4252
4253 /// @private
4254 void _iceD_getAllRegistryNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4255
4256 /// Shuts down the IceGrid registry.
4257 /// @param current The Current object of the incoming request.
4258 virtual void shutdown(const Ice::Current& current) = 0;
4259
4260 /// @private
4261 void _iceD_shutdown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4262
4263 /// Gets the type ID of the associated Slice interface.
4264 /// @return The string `"::IceGrid::Admin"`.
4265 static const char* ice_staticId() noexcept;
4266 };
4267
4268 /// A shared pointer to an Admin.
4269 using AdminPtr = std::shared_ptr<Admin>;
4270
4271 /// Iterates over an IceGrid log file.
4272 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::FileIterator`.
4273 /// @headerfile IceGrid/IceGrid.h
4274 class ICEGRID_API FileIterator : public virtual Ice::Object
4275 {
4276 public:
4277 /// The associated proxy type.
4278 using ProxyType = FileIteratorPrx;
4279
4280 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4281 /// @param request The incoming request.
4282 /// @param sendResponse The callback to send the response.
4283 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4284
4285 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4286
4287 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4288
4289 /// Read lines from the log file.
4290 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
4291 /// message doesn't exceed the given size.
4292 /// @param[out] lines The lines read from the file. If there was nothing to read from the file since the last call to
4293 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
4294 /// newline character should be added when writing the last line to the to the output device).
4295 /// @param current The Current object of the incoming request.
4296 /// @return `true` if EOF is encountered.
4297 /// @throws IceGrid::FileNotAvailableException Thrown when the implementation failed to read from the file.
4298 virtual bool read(std::int32_t size, ::Ice::StringSeq& lines, const Ice::Current& current) = 0;
4299
4300 /// @private
4301 void _iceD_read(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4302
4303 /// Destroys the iterator.
4304 /// @param current The Current object of the incoming request.
4305 virtual void destroy(const Ice::Current& current) = 0;
4306
4307 /// @private
4308 void _iceD_destroy(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4309
4310 /// Gets the type ID of the associated Slice interface.
4311 /// @return The string `"::IceGrid::FileIterator"`.
4312 static const char* ice_staticId() noexcept;
4313 };
4314
4315 /// A shared pointer to a FileIterator.
4316 using FileIteratorPtr = std::shared_ptr<FileIterator>;
4317
4318 /// Monitors changes to the state of the registries.
4319 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::RegistryObserver`.
4320 /// @headerfile IceGrid/IceGrid.h
4321 class ICEGRID_API RegistryObserver : public virtual Ice::Object
4322 {
4323 public:
4324 /// The associated proxy type.
4326
4327 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4328 /// @param request The incoming request.
4329 /// @param sendResponse The callback to send the response.
4330 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4331
4332 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4333
4334 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4335
4336 /// Provides the initial state of the registries to the observer.
4337 /// @param registries The current state of the registries.
4338 /// @param current The Current object of the incoming request.
4339 virtual void registryInit(RegistryInfoSeq registries, const Ice::Current& current) = 0;
4340
4341 /// @private
4342 void _iceD_registryInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4343
4344 /// Notifies the observer that a registry replica came up.
4345 /// @param registryReplica The registry state.
4346 /// @param current The Current object of the incoming request.
4347 virtual void registryUp(RegistryInfo registryReplica, const Ice::Current& current) = 0;
4348
4349 /// @private
4350 void _iceD_registryUp(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4351
4352 /// Notifies the observer that a registry replica went down.
4353 /// @param name The registry name.
4354 /// @param current The Current object of the incoming request.
4355 virtual void registryDown(std::string name, const Ice::Current& current) = 0;
4356
4357 /// @private
4358 void _iceD_registryDown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4359
4360 /// Gets the type ID of the associated Slice interface.
4361 /// @return The string `"::IceGrid::RegistryObserver"`.
4362 static const char* ice_staticId() noexcept;
4363 };
4364
4365 /// A shared pointer to a RegistryObserver.
4366 using RegistryObserverPtr = std::shared_ptr<RegistryObserver>;
4367
4368 /// Monitors changes to the state of the nodes.
4369 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::NodeObserver`.
4370 /// @headerfile IceGrid/IceGrid.h
4371 class ICEGRID_API NodeObserver : public virtual Ice::Object
4372 {
4373 public:
4374 /// The associated proxy type.
4376
4377 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4378 /// @param request The incoming request.
4379 /// @param sendResponse The callback to send the response.
4380 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4381
4382 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4383
4384 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4385
4386 /// Provides the initial state of the nodes to the observer.
4387 /// @param nodes The current state of the nodes.
4388 /// @param current The Current object of the incoming request.
4389 virtual void nodeInit(NodeDynamicInfoSeq nodes, const Ice::Current& current) = 0;
4390
4391 /// @private
4392 void _iceD_nodeInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4393
4394 /// Notifies the observer that a node came up.
4395 /// @param node The node state.
4396 /// @param current The Current object of the incoming request.
4397 virtual void nodeUp(NodeDynamicInfo node, const Ice::Current& current) = 0;
4398
4399 /// @private
4400 void _iceD_nodeUp(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4401
4402 /// Notifies the observer that a node went down.
4403 /// @param name The node name.
4404 /// @param current The Current object of the incoming request.
4405 virtual void nodeDown(std::string name, const Ice::Current& current) = 0;
4406
4407 /// @private
4408 void _iceD_nodeDown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4409
4410 /// Notifies the observer that the state of a server changed.
4411 /// @param node The node hosting the server.
4412 /// @param updatedInfo The new server state.
4413 /// @param current The Current object of the incoming request.
4414 virtual void updateServer(std::string node, ServerDynamicInfo updatedInfo, const Ice::Current& current) = 0;
4415
4416 /// @private
4417 void _iceD_updateServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4418
4419 /// Notifies the observer that the state of an object adapter changed.
4420 /// @param node The node hosting the adapter.
4421 /// @param updatedInfo The new adapter state.
4422 /// @param current The Current object of the incoming request.
4423 virtual void updateAdapter(std::string node, AdapterDynamicInfo updatedInfo, const Ice::Current& current) = 0;
4424
4425 /// @private
4426 void _iceD_updateAdapter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4427
4428 /// Gets the type ID of the associated Slice interface.
4429 /// @return The string `"::IceGrid::NodeObserver"`.
4430 static const char* ice_staticId() noexcept;
4431 };
4432
4433 /// A shared pointer to a NodeObserver.
4434 using NodeObserverPtr = std::shared_ptr<NodeObserver>;
4435
4436 /// Monitors applications.
4437 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::ApplicationObserver`.
4438 /// @headerfile IceGrid/IceGrid.h
4439 class ICEGRID_API ApplicationObserver : public virtual Ice::Object
4440 {
4441 public:
4442 /// The associated proxy type.
4444
4445 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4446 /// @param request The incoming request.
4447 /// @param sendResponse The callback to send the response.
4448 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4449
4450 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4451
4452 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4453
4454 /// Provides the initial application infos to the observer.
4455 /// @param serial The current serial number of the registry database. This serial number allows observers to
4456 /// make sure that their internal state is synchronized with the registry.
4457 /// @param applications The applications currently registered with the registry.
4458 /// @param current The Current object of the incoming request.
4459 virtual void applicationInit(std::int32_t serial, ApplicationInfoSeq applications, const Ice::Current& current) = 0;
4460
4461 /// @private
4462 void _iceD_applicationInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4463
4464 /// Notifies the observer that an application was added.
4465 /// @param serial The new serial number of the registry database.
4466 /// @param desc The descriptor of the new application.
4467 /// @param current The Current object of the incoming request.
4468 virtual void applicationAdded(std::int32_t serial, ApplicationInfo desc, const Ice::Current& current) = 0;
4469
4470 /// @private
4471 void _iceD_applicationAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4472
4473 /// Notifies the observer that an application was removed.
4474 /// @param serial The new serial number of the registry database.
4475 /// @param name The name of the application that was removed.
4476 /// @param current The Current object of the incoming request.
4477 virtual void applicationRemoved(std::int32_t serial, std::string name, const Ice::Current& current) = 0;
4478
4479 /// @private
4480 void _iceD_applicationRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4481
4482 /// Notifies the observer that an application was updated.
4483 /// @param serial The new serial number of the registry database.
4484 /// @param desc The descriptor of the update.
4485 /// @param current The Current object of the incoming request.
4486 virtual void applicationUpdated(std::int32_t serial, ApplicationUpdateInfo desc, const Ice::Current& current) = 0;
4487
4488 /// @private
4489 void _iceD_applicationUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4490
4491 /// Gets the type ID of the associated Slice interface.
4492 /// @return The string `"::IceGrid::ApplicationObserver"`.
4493 static const char* ice_staticId() noexcept;
4494 };
4495
4496 /// A shared pointer to an ApplicationObserver.
4498
4499 /// Monitors dynamically-registered object adapters.
4500 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::AdapterObserver`.
4501 /// @headerfile IceGrid/IceGrid.h
4502 class ICEGRID_API AdapterObserver : public virtual Ice::Object
4503 {
4504 public:
4505 /// The associated proxy type.
4507
4508 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4509 /// @param request The incoming request.
4510 /// @param sendResponse The callback to send the response.
4511 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4512
4513 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4514
4515 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4516
4517 /// Provides the initial list of dynamically registered adapters to the observer.
4518 /// @param adpts The adapters that were dynamically registered with the registry.
4519 /// @param current The Current object of the incoming request.
4520 virtual void adapterInit(AdapterInfoSeq adpts, const Ice::Current& current) = 0;
4521
4522 /// @private
4523 void _iceD_adapterInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4524
4525 /// Notifies the observer that a dynamically-registered adapter was added.
4526 /// @param info The details of the new adapter.
4527 /// @param current The Current object of the incoming request.
4528 virtual void adapterAdded(AdapterInfo info, const Ice::Current& current) = 0;
4529
4530 /// @private
4531 void _iceD_adapterAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4532
4533 /// @param info The details of the updated adapter.
4534 /// @param current The Current object of the incoming request.
4535 virtual void adapterUpdated(AdapterInfo info, const Ice::Current& current) = 0;
4536
4537 /// @private
4538 void _iceD_adapterUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4539
4540 /// Notifies the observer that a dynamically-registered adapter was removed.
4541 /// @param id The ID of the removed adapter.
4542 /// @param current The Current object of the incoming request.
4543 virtual void adapterRemoved(std::string id, const Ice::Current& current) = 0;
4544
4545 /// @private
4546 void _iceD_adapterRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4547
4548 /// Gets the type ID of the associated Slice interface.
4549 /// @return The string `"::IceGrid::AdapterObserver"`.
4550 static const char* ice_staticId() noexcept;
4551 };
4552
4553 /// A shared pointer to an AdapterObserver.
4554 using AdapterObserverPtr = std::shared_ptr<AdapterObserver>;
4555
4556 /// Monitors well-known objects that are added, updated or removed using AdminPrx.
4557 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::ObjectObserver`.
4558 /// @headerfile IceGrid/IceGrid.h
4559 class ICEGRID_API ObjectObserver : public virtual Ice::Object
4560 {
4561 public:
4562 /// The associated proxy type.
4564
4565 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4566 /// @param request The incoming request.
4567 /// @param sendResponse The callback to send the response.
4568 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4569
4570 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4571
4572 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4573
4574 /// Provides the initial list of well-known objects to the observer.
4575 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
4576 /// @param current The Current object of the incoming request.
4577 virtual void objectInit(ObjectInfoSeq objects, const Ice::Current& current) = 0;
4578
4579 /// @private
4580 void _iceD_objectInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4581
4582 /// Notifies the observer that a well-known object was added.
4583 /// @param info The details of the new object.
4584 /// @param current The Current object of the incoming request.
4585 virtual void objectAdded(ObjectInfo info, const Ice::Current& current) = 0;
4586
4587 /// @private
4588 void _iceD_objectAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4589
4590 /// Notifies the observer that a well-known object was updated.
4591 /// @param info The details of the updated object.
4592 /// @param current The Current object of the incoming request.
4593 virtual void objectUpdated(ObjectInfo info, const Ice::Current& current) = 0;
4594
4595 /// @private
4596 void _iceD_objectUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4597
4598 /// Notifies the observer that a well-known object was removed.
4599 /// @param id The identity of the removed object.
4600 /// @param current The Current object of the incoming request.
4601 virtual void objectRemoved(::Ice::Identity id, const Ice::Current& current) = 0;
4602
4603 /// @private
4604 void _iceD_objectRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4605
4606 /// Gets the type ID of the associated Slice interface.
4607 /// @return The string `"::IceGrid::ObjectObserver"`.
4608 static const char* ice_staticId() noexcept;
4609 };
4610
4611 /// A shared pointer to an ObjectObserver.
4612 using ObjectObserverPtr = std::shared_ptr<ObjectObserver>;
4613
4614 /// Represents an administrative session between an admin tool and an IceGrid registry.
4615 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::AdminSession`.
4616 /// @see RegistryPrx
4617 /// @headerfile IceGrid/IceGrid.h
4618 class ICEGRID_API AdminSession : public virtual ::Glacier2::Session
4619 {
4620 public:
4621 /// The associated proxy type.
4622 using ProxyType = AdminSessionPrx;
4623
4624 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4625 /// @param request The incoming request.
4626 /// @param sendResponse The callback to send the response.
4627 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4628
4629 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4630
4631 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4632
4633 /// Keeps the session alive.
4634 /// @param current The Current object of the incoming request.
4635 virtual void keepAlive(const Ice::Current& current) = 0;
4636
4637 /// @private
4638 void _iceD_keepAlive(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4639
4640 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
4641 /// by the session.
4642 /// @param current The Current object of the incoming request.
4643 /// @return A proxy to the IceGrid admin object. This proxy is never null.
4644 [[nodiscard]] virtual std::optional<AdminPrx> getAdmin(const Ice::Current& current) const = 0;
4645
4646 /// @private
4647 void _iceD_getAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4648
4649 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
4650 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
4651 /// @param current The Current object of the incoming request.
4652 /// @return A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
4653 [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getAdminCallbackTemplate(const Ice::Current& current) const = 0;
4654
4655 /// @private
4656 void _iceD_getAdminCallbackTemplate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4657
4658 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
4659 /// @param registryObs The registry observer.
4660 /// @param nodeObs The node observer.
4661 /// @param appObs The application observer.
4662 /// @param adptObs The adapter observer.
4663 /// @param objObs The object observer.
4664 /// @param current The Current object of the incoming request.
4665 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
4666 virtual void setObservers(std::optional<RegistryObserverPrx> registryObs, std::optional<NodeObserverPrx> nodeObs, std::optional<ApplicationObserverPrx> appObs, std::optional<AdapterObserverPrx> adptObs, std::optional<ObjectObserverPrx> objObs, const Ice::Current& current) = 0;
4667
4668 /// @private
4669 void _iceD_setObservers(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4670
4671 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
4672 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
4673 /// session.
4674 /// @param registryObs The registry observer identity.
4675 /// @param nodeObs The node observer identity.
4676 /// @param appObs The application observer.
4677 /// @param adptObs The adapter observer.
4678 /// @param objObs The object observer.
4679 /// @param current The Current object of the incoming request.
4680 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
4681 virtual void setObserversByIdentity(::Ice::Identity registryObs, ::Ice::Identity nodeObs, ::Ice::Identity appObs, ::Ice::Identity adptObs, ::Ice::Identity objObs, const Ice::Current& current) = 0;
4682
4683 /// @private
4684 void _iceD_setObserversByIdentity(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4685
4686 /// Acquires an exclusive lock to start updating the registry applications.
4687 /// @param current The Current object of the incoming request.
4688 /// @return The current serial.
4689 /// @throws IceGrid::AccessDeniedException Thrown when the exclusive lock can't be acquired. This might happen if the
4690 /// lock is currently acquired by another session.
4691 virtual std::int32_t startUpdate(const Ice::Current& current) = 0;
4692
4693 /// @private
4694 void _iceD_startUpdate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4695
4696 /// Finishes updating the registry and releases the exclusive lock.
4697 /// @param current The Current object of the incoming request.
4698 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock.
4699 virtual void finishUpdate(const Ice::Current& current) = 0;
4700
4701 /// @private
4702 void _iceD_finishUpdate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4703
4704 /// Gets the name of the registry replica hosting this session.
4705 /// @param current The Current object of the incoming request.
4706 /// @return The replica name of the registry.
4707 [[nodiscard]] virtual std::string getReplicaName(const Ice::Current& current) const = 0;
4708
4709 /// @private
4710 void _iceD_getReplicaName(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4711
4712 /// Opens a server log file for reading.
4713 /// @param id The server ID.
4714 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
4715 /// service deployment descriptor.
4716 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4717 /// Otherwise, the file is read from the last @p count lines.
4718 /// @param current The Current object of the incoming request.
4719 /// @return An iterator to read the file. This proxy is never null.
4720 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
4721 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4722 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4723 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4724 virtual std::optional<FileIteratorPrx> openServerLog(std::string id, std::string path, std::int32_t count, const Ice::Current& current) = 0;
4725
4726 /// @private
4727 void _iceD_openServerLog(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4728
4729 /// Opens a server stderr file for reading.
4730 /// @param id The server ID.
4731 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4732 /// Otherwise, the file is read from the last @p count lines.
4733 /// @param current The Current object of the incoming request.
4734 /// @return An iterator to read the file. This proxy is never null.
4735 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
4736 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4737 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4738 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4739 virtual std::optional<FileIteratorPrx> openServerStdErr(std::string id, std::int32_t count, const Ice::Current& current) = 0;
4740
4741 /// @private
4742 void _iceD_openServerStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4743
4744 /// Opens a server stdout file for reading.
4745 /// @param id The server id.
4746 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4747 /// Otherwise, the file is read from the last @p count lines.
4748 /// @param current The Current object of the incoming request.
4749 /// @return An iterator to read the file. This proxy is never null.
4750 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
4751 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4752 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4753 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4754 virtual std::optional<FileIteratorPrx> openServerStdOut(std::string id, std::int32_t count, const Ice::Current& current) = 0;
4755
4756 /// @private
4757 void _iceD_openServerStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4758
4759 /// Opens a node stderr file for reading.
4760 /// @param name The node name.
4761 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4762 /// Otherwise, the file is read from the last @p count lines.
4763 /// @param current The Current object of the incoming request.
4764 /// @return An iterator to read the file. This proxy is never null.
4765 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4766 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4767 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4768 virtual std::optional<FileIteratorPrx> openNodeStdErr(std::string name, std::int32_t count, const Ice::Current& current) = 0;
4769
4770 /// @private
4771 void _iceD_openNodeStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4772
4773 /// Opens a node stdout file for reading.
4774 /// @param name The node name.
4775 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4776 /// Otherwise, the file is read from the last @p count lines.
4777 /// @param current The Current object of the incoming request.
4778 /// @return An iterator to read the file. This proxy is never null.
4779 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4780 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4781 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4782 virtual std::optional<FileIteratorPrx> openNodeStdOut(std::string name, std::int32_t count, const Ice::Current& current) = 0;
4783
4784 /// @private
4785 void _iceD_openNodeStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4786
4787 /// Opens a registry stderr file for reading.
4788 /// @param name The registry name.
4789 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4790 /// Otherwise, the file is read from the last @p count lines.
4791 /// @param current The Current object of the incoming request.
4792 /// @return An iterator to read the file. This proxy is never null.
4793 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4794 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4795 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
4796 virtual std::optional<FileIteratorPrx> openRegistryStdErr(std::string name, std::int32_t count, const Ice::Current& current) = 0;
4797
4798 /// @private
4799 void _iceD_openRegistryStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4800
4801 /// Opens a registry stdout file for reading.
4802 /// @param name The registry name.
4803 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4804 /// Otherwise, the file is read from the last @p count lines.
4805 /// @param current The Current object of the incoming request.
4806 /// @return An iterator to read the file. This proxy is never null.
4807 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4808 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4809 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
4810 virtual std::optional<FileIteratorPrx> openRegistryStdOut(std::string name, std::int32_t count, const Ice::Current& current) = 0;
4811
4812 /// @private
4813 void _iceD_openRegistryStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4814
4815 /// Gets the type ID of the associated Slice interface.
4816 /// @return The string `"::IceGrid::AdminSession"`.
4817 static const char* ice_staticId() noexcept;
4818 };
4819
4820 /// A shared pointer to an AdminSession.
4821 using AdminSessionPtr = std::shared_ptr<AdminSession>;
4822}
4823
4824namespace IceGrid
4825{
4826 /// Provides administrative access to an IceGrid deployment.
4827 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::Admin`.
4828 /// @headerfile IceGrid/IceGrid.h
4829 class ICEGRID_API AsyncAdmin : public virtual Ice::Object
4830 {
4831 public:
4832 /// The associated proxy type.
4834
4835 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4836 /// @param request The incoming request.
4837 /// @param sendResponse The callback to send the response.
4838 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4839
4840 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4841
4842 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4843
4844 /// Adds an application to IceGrid.
4845 /// @param descriptor The application descriptor.
4846 /// @param response The response callback.
4847 /// @param exception The exception callback.
4848 /// @param current The Current object of the incoming request.
4849 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4850 /// session is holding the lock.
4851 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4852 virtual void addApplicationAsync(ApplicationDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4853
4854 /// @private
4855 void _iceD_addApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4856
4857 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
4858 /// @param descriptor The new application descriptor.
4859 /// @param response The response callback.
4860 /// @param exception The exception callback.
4861 /// @param current The Current object of the incoming request.
4862 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4863 /// session is holding the lock.
4864 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4865 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4866 virtual void syncApplicationAsync(ApplicationDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4867
4868 /// @private
4869 void _iceD_syncApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4870
4871 /// Updates a deployed application.
4872 /// @param descriptor The update descriptor.
4873 /// @param response The response callback.
4874 /// @param exception The exception callback.
4875 /// @param current The Current object of the incoming request.
4876 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4877 /// session is holding the lock.
4878 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4879 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4880 virtual void updateApplicationAsync(ApplicationUpdateDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4881
4882 /// @private
4883 void _iceD_updateApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4884
4885 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
4886 /// only if no server restarts are necessary for the update of the application. If some servers need to be
4887 /// restarted, the synchronization is rejected with a DeploymentException.
4888 /// @param descriptor The application descriptor.
4889 /// @param response The response callback.
4890 /// @param exception The exception callback.
4891 /// @param current The Current object of the incoming request.
4892 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4893 /// session is holding the lock.
4894 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4895 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4896 virtual void syncApplicationWithoutRestartAsync(ApplicationDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4897
4898 /// @private
4899 void _iceD_syncApplicationWithoutRestart(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4900
4901 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
4902 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
4903 /// DeploymentException.
4904 /// @param descriptor The update descriptor.
4905 /// @param response The response callback.
4906 /// @param exception The exception callback.
4907 /// @param current The Current object of the incoming request.
4908 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4909 /// session is holding the lock.
4910 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4911 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4912 virtual void updateApplicationWithoutRestartAsync(ApplicationUpdateDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4913
4914 /// @private
4915 void _iceD_updateApplicationWithoutRestart(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4916
4917 /// Removes an application from IceGrid.
4918 /// @param name The application name.
4919 /// @param response The response callback.
4920 /// @param exception The exception callback.
4921 /// @param current The Current object of the incoming request.
4922 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4923 /// session is holding the lock.
4924 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4925 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4926 virtual void removeApplicationAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4927
4928 /// @private
4929 void _iceD_removeApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4930
4931 /// Instantiates a server template.
4932 /// @param application The application name.
4933 /// @param node The name of the node where the server will be deployed.
4934 /// @param desc The descriptor of the server instance to deploy.
4935 /// @param response The response callback.
4936 /// @param exception The exception callback.
4937 /// @param current The Current object of the incoming request.
4938 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4939 /// session is holding the lock.
4940 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4941 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4942 virtual void instantiateServerAsync(std::string application, std::string node, ServerInstanceDescriptor desc, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4943
4944 /// @private
4945 void _iceD_instantiateServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4946
4947 /// Gets an application descriptor.
4948 /// @param name The application name.
4949 /// @param response The response callback. It accepts:
4950 /// - The application descriptor.
4951 /// @param exception The exception callback.
4952 /// @param current The Current object of the incoming request.
4953 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4954 virtual void getApplicationInfoAsync(std::string name, std::function<void(const ApplicationInfo& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
4955
4956 /// @private
4957 void _iceD_getApplicationInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4958
4959 /// Gets the default application descriptor.
4960 /// @param response The response callback. It accepts:
4961 /// - The default application descriptor.
4962 /// @param exception The exception callback.
4963 /// @param current The Current object of the incoming request.
4964 /// @throws IceGrid::DeploymentException Thrown when the default application descriptor is invalid or unreachable.
4965 virtual void getDefaultApplicationDescriptorAsync(std::function<void(const ApplicationDescriptor& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
4966
4967 /// @private
4968 void _iceD_getDefaultApplicationDescriptor(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4969
4970 /// Gets all the IceGrid applications currently registered.
4971 /// @param response The response callback. It accepts:
4972 /// - The application names.
4973 /// @param exception The exception callback.
4974 /// @param current The Current object of the incoming request.
4975 virtual void getAllApplicationNamesAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
4976
4977 /// @private
4978 void _iceD_getAllApplicationNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4979
4980 /// Gets information about a server.
4981 /// @param id The server ID.
4982 /// @param response The response callback. It accepts:
4983 /// - The server information.
4984 /// @param exception The exception callback.
4985 /// @param current The Current object of the incoming request.
4986 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4987 virtual void getServerInfoAsync(std::string id, std::function<void(const ServerInfo& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
4988
4989 /// @private
4990 void _iceD_getServerInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4991
4992 /// Gets the state of a server.
4993 /// @param id The server ID.
4994 /// @param response The response callback. It accepts:
4995 /// - The server state.
4996 /// @param exception The exception callback.
4997 /// @param current The Current object of the incoming request.
4998 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
4999 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5000 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5001 virtual void getServerStateAsync(std::string id, std::function<void(ServerState returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5002
5003 /// @private
5004 void _iceD_getServerState(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5005
5006 /// Gets the system process ID of a server. The process ID is operating system dependent.
5007 /// @param id The server ID.
5008 /// @param response The response callback. It accepts:
5009 /// - The process ID.
5010 /// @param exception The exception callback.
5011 /// @param current The Current object of the incoming request.
5012 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5013 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5014 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5015 virtual void getServerPidAsync(std::string id, std::function<void(std::int32_t returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5016
5017 /// @private
5018 void _iceD_getServerPid(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5019
5020 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
5021 /// changing its identity: use the server ID as name and the returned category as category.
5022 /// @param response The response callback. It accepts:
5023 /// - The category for server admin objects.
5024 /// @param exception The exception callback.
5025 /// @param current The Current object of the incoming request.
5026 virtual void getServerAdminCategoryAsync(std::function<void(std::string_view returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5027
5028 /// @private
5029 void _iceD_getServerAdminCategory(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5030
5031 /// Gets a proxy to the admin object of a server.
5032 /// @param id The server ID.
5033 /// @param response The response callback. It accepts:
5034 /// - A proxy to the admin object of the server. This proxy is never null.
5035 /// @param exception The exception callback.
5036 /// @param current The Current object of the incoming request.
5037 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5038 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5039 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5040 virtual void getServerAdminAsync(std::string id, std::function<void(const std::optional<Ice::ObjectPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5041
5042 /// @private
5043 void _iceD_getServerAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5044
5045 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
5046 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
5047 /// default.
5048 /// @param id The server ID.
5049 /// @param enabled `true` to enable the server, `false` to disable it.
5050 /// @param response The response callback.
5051 /// @param exception The exception callback.
5052 /// @param current The Current object of the incoming request.
5053 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5054 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5055 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5056 virtual void enableServerAsync(std::string id, bool enabled, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5057
5058 /// @private
5059 void _iceD_enableServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5060
5061 /// Checks if the server is enabled or disabled.
5062 /// @param id The server ID.
5063 /// @param response The response callback. It accepts:
5064 /// - `true` if the server is enabled, `false` otherwise.
5065 /// @param exception The exception callback.
5066 /// @param current The Current object of the incoming request.
5067 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5068 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5069 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5070 virtual void isServerEnabledAsync(std::string id, std::function<void(bool returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5071
5072 /// @private
5073 void _iceD_isServerEnabled(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5074
5075 /// Starts a server and waits for its activation.
5076 /// @param id The server id.
5077 /// @param response The response callback.
5078 /// @param exception The exception callback.
5079 /// @param current The Current object of the incoming request.
5080 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5081 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5082 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5083 /// @throws IceGrid::ServerStartException Thrown when the server startup failed.
5084 virtual void startServerAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5085
5086 /// @private
5087 void _iceD_startServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5088
5089 /// Stops a server.
5090 /// @param id The server ID.
5091 /// @param response The response callback.
5092 /// @param exception The exception callback.
5093 /// @param current The Current object of the incoming request.
5094 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5095 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5096 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5097 /// @throws IceGrid::ServerStopException Thrown when the server stop failed.
5098 virtual void stopServerAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5099
5100 /// @private
5101 void _iceD_stopServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5102
5103 /// Sends a signal to a server.
5104 /// @param id The server ID.
5105 /// @param signal The signal, for example SIGTERM or 15.
5106 /// @param response The response callback.
5107 /// @param exception The exception callback.
5108 /// @param current The Current object of the incoming request.
5109 /// @throws IceGrid::BadSignalException Thrown when the signal is not recognized by the target server.
5110 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5111 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5112 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5113 virtual void sendSignalAsync(std::string id, std::string signal, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5114
5115 /// @private
5116 void _iceD_sendSignal(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5117
5118 /// Gets the IDs of all the servers registered with IceGrid.
5119 /// @param response The response callback. It accepts:
5120 /// - The server IDs.
5121 /// @param exception The exception callback.
5122 /// @param current The Current object of the incoming request.
5123 virtual void getAllServerIdsAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5124
5125 /// @private
5126 void _iceD_getAllServerIds(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5127
5128 /// Gets adapter information for the replica group or adapter with the given ID.
5129 /// @param id The adapter or replica group ID.
5130 /// @param response The response callback. It accepts:
5131 /// - A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
5132 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
5133 /// replica group.
5134 /// @param exception The exception callback.
5135 /// @param current The Current object of the incoming request.
5136 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter or replica group doesn't exist.
5137 virtual void getAdapterInfoAsync(std::string id, std::function<void(const AdapterInfoSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5138
5139 /// @private
5140 void _iceD_getAdapterInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5141
5142 /// Removes the adapter with the given ID.
5143 /// @param id The adapter ID.
5144 /// @param response The response callback.
5145 /// @param exception The exception callback.
5146 /// @param current The Current object of the incoming request.
5147 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter doesn't exist.
5148 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
5149 virtual void removeAdapterAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5150
5151 /// @private
5152 void _iceD_removeAdapter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5153
5154 /// Gets the IDs of all adapters registered with IceGrid.
5155 /// @param response The response callback. It accepts:
5156 /// - The adapter IDs.
5157 /// @param exception The exception callback.
5158 /// @param current The Current object of the incoming request.
5159 virtual void getAllAdapterIdsAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5160
5161 /// @private
5162 void _iceD_getAllAdapterIds(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5163
5164 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
5165 /// object must be reachable.
5166 /// @param obj A proxy to the object. This proxy is never null.
5167 /// @param response The response callback.
5168 /// @param exception The exception callback.
5169 /// @param current The Current object of the incoming request.
5170 /// @throws IceGrid::DeploymentException Thrown when the object can't be added.
5171 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
5172 virtual void addObjectAsync(std::optional<Ice::ObjectPrx> obj, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5173
5174 /// @private
5175 void _iceD_addObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5176
5177 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
5178 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
5179 /// @param obj A proxy to the object. This proxy is never null.
5180 /// @param response The response callback.
5181 /// @param exception The exception callback.
5182 /// @param current The Current object of the incoming request.
5183 /// @throws IceGrid::DeploymentException Thrown when the object can't be updated.
5184 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
5185 virtual void updateObjectAsync(std::optional<Ice::ObjectPrx> obj, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5186
5187 /// @private
5188 void _iceD_updateObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5189
5190 /// Adds an object to the object registry and explicitly specifies its type.
5191 /// @param obj The object to be added to the registry. The proxy is never null.
5192 /// @param type The type name.
5193 /// @param response The response callback.
5194 /// @param exception The exception callback.
5195 /// @param current The Current object of the incoming request.
5196 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
5197 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
5198 virtual void addObjectWithTypeAsync(std::optional<Ice::ObjectPrx> obj, std::string type, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5199
5200 /// @private
5201 void _iceD_addObjectWithType(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5202
5203 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
5204 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
5205 /// @param id The identity of the object to remove.
5206 /// @param response The response callback.
5207 /// @param exception The exception callback.
5208 /// @param current The Current object of the incoming request.
5209 /// @throws IceGrid::DeploymentException Thrown when the object can't be removed.
5210 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
5211 virtual void removeObjectAsync(::Ice::Identity id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5212
5213 /// @private
5214 void _iceD_removeObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5215
5216 /// Gets the object info for the object.
5217 /// @param id The identity of the object.
5218 /// @param response The response callback. It accepts:
5219 /// - The object info.
5220 /// @param exception The exception callback.
5221 /// @param current The Current object of the incoming request.
5222 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
5223 virtual void getObjectInfoAsync(::Ice::Identity id, std::function<void(const ObjectInfo& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5224
5225 /// @private
5226 void _iceD_getObjectInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5227
5228 /// Gets the object info of all the registered objects with a given type.
5229 /// @param type The type name.
5230 /// @param response The response callback. It accepts:
5231 /// - The object infos.
5232 /// @param exception The exception callback.
5233 /// @param current The Current object of the incoming request.
5234 virtual void getObjectInfosByTypeAsync(std::string type, std::function<void(const ObjectInfoSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5235
5236 /// @private
5237 void _iceD_getObjectInfosByType(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5238
5239 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
5240 /// @param expr The expression to match against the stringified identities of registered objects. The expression
5241 /// may contain a trailing wildcard (`*`) character.
5242 /// @param response The response callback. It accepts:
5243 /// - All the object infos with a stringified identity matching the given expression.
5244 /// @param exception The exception callback.
5245 /// @param current The Current object of the incoming request.
5246 virtual void getAllObjectInfosAsync(std::string expr, std::function<void(const ObjectInfoSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5247
5248 /// @private
5249 void _iceD_getAllObjectInfos(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5250
5251 /// Pings an IceGrid node to see if it is active.
5252 /// @param name The node name.
5253 /// @param response The response callback. It accepts:
5254 /// - `true` if the node ping succeeded, `false` otherwise.
5255 /// @param exception The exception callback.
5256 /// @param current The Current object of the incoming request.
5257 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5258 virtual void pingNodeAsync(std::string name, std::function<void(bool returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5259
5260 /// @private
5261 void _iceD_pingNode(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5262
5263 /// Gets the load averages of a node.
5264 /// @param name The node name.
5265 /// @param response The response callback. It accepts:
5266 /// - The node load information.
5267 /// @param exception The exception callback.
5268 /// @param current The Current object of the incoming request.
5269 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5270 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5271 virtual void getNodeLoadAsync(std::string name, std::function<void(const LoadInfo& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5272
5273 /// @private
5274 void _iceD_getNodeLoad(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5275
5276 /// Gets the node information of a node.
5277 /// @param name The node name.
5278 /// @param response The response callback. It accepts:
5279 /// - The node information.
5280 /// @param exception The exception callback.
5281 /// @param current The Current object of the incoming request.
5282 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5283 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5284 virtual void getNodeInfoAsync(std::string name, std::function<void(const NodeInfo& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5285
5286 /// @private
5287 void _iceD_getNodeInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5288
5289 /// Gets a proxy to the admin object of an IceGrid node.
5290 /// @param name The IceGrid node name.
5291 /// @param response The response callback. It accepts:
5292 /// - A proxy to the IceGrid node's admin object. This proxy is never null.
5293 /// @param exception The exception callback.
5294 /// @param current The Current object of the incoming request.
5295 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5296 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5297 virtual void getNodeAdminAsync(std::string name, std::function<void(const std::optional<Ice::ObjectPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5298
5299 /// @private
5300 void _iceD_getNodeAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5301
5302 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
5303 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
5304 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
5305 /// @param name The node name.
5306 /// @param response The response callback. It accepts:
5307 /// - The number of processor sockets or 1 if the number of sockets can't be determined.
5308 /// @param exception The exception callback.
5309 /// @param current The Current object of the incoming request.
5310 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5311 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5312 virtual void getNodeProcessorSocketCountAsync(std::string name, std::function<void(std::int32_t returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5313
5314 /// @private
5315 void _iceD_getNodeProcessorSocketCount(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5316
5317 /// Shuts down an IceGrid node.
5318 /// @param name The node name.
5319 /// @param response The response callback.
5320 /// @param exception The exception callback.
5321 /// @param current The Current object of the incoming request.
5322 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5323 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5324 virtual void shutdownNodeAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5325
5326 /// @private
5327 void _iceD_shutdownNode(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5328
5329 /// Get the hostname of a node.
5330 /// @param name The node name.
5331 /// @param response The response callback. It accepts:
5332 /// - The node hostname.
5333 /// @param exception The exception callback.
5334 /// @param current The Current object of the incoming request.
5335 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5336 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5337 virtual void getNodeHostnameAsync(std::string name, std::function<void(std::string_view returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5338
5339 /// @private
5340 void _iceD_getNodeHostname(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5341
5342 /// Gets the names of all IceGrid nodes currently registered.
5343 /// @param response The response callback. It accepts:
5344 /// - The node names.
5345 /// @param exception The exception callback.
5346 /// @param current The Current object of the incoming request.
5347 virtual void getAllNodeNamesAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5348
5349 /// @private
5350 void _iceD_getAllNodeNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5351
5352 /// Pings an IceGrid registry to see if it is active.
5353 /// @param name The registry name.
5354 /// @param response The response callback. It accepts:
5355 /// - `true` if the registry ping succeeded, `false` otherwise.
5356 /// @param exception The exception callback.
5357 /// @param current The Current object of the incoming request.
5358 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
5359 virtual void pingRegistryAsync(std::string name, std::function<void(bool returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5360
5361 /// @private
5362 void _iceD_pingRegistry(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5363
5364 /// Gets the registry information of an IceGrid registry.
5365 /// @param name The registry name.
5366 /// @param response The response callback. It accepts:
5367 /// - The registry information.
5368 /// @param exception The exception callback.
5369 /// @param current The Current object of the incoming request.
5370 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
5371 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
5372 virtual void getRegistryInfoAsync(std::string name, std::function<void(const RegistryInfo& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5373
5374 /// @private
5375 void _iceD_getRegistryInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5376
5377 /// Gets a proxy to the admin object of an IceGrid registry.
5378 /// @param name The registry name.
5379 /// @param response The response callback. It accepts:
5380 /// - A proxy to the admin object of an IceGrid registry. This proxy is never null.
5381 /// @param exception The exception callback.
5382 /// @param current The Current object of the incoming request.
5383 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
5384 virtual void getRegistryAdminAsync(std::string name, std::function<void(const std::optional<Ice::ObjectPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5385
5386 /// @private
5387 void _iceD_getRegistryAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5388
5389 /// Shuts down an IceGrid registry.
5390 /// @param name The registry name.
5391 /// @param response The response callback.
5392 /// @param exception The exception callback.
5393 /// @param current The Current object of the incoming request.
5394 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
5395 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
5396 virtual void shutdownRegistryAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5397
5398 /// @private
5399 void _iceD_shutdownRegistry(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5400
5401 /// Gets the names of all the IceGrid registries currently registered.
5402 /// @param response The response callback. It accepts:
5403 /// - The registry names.
5404 /// @param exception The exception callback.
5405 /// @param current The Current object of the incoming request.
5406 virtual void getAllRegistryNamesAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5407
5408 /// @private
5409 void _iceD_getAllRegistryNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5410
5411 /// Shuts down the IceGrid registry.
5412 /// @param response The response callback.
5413 /// @param exception The exception callback.
5414 /// @param current The Current object of the incoming request.
5415 virtual void shutdownAsync(std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5416
5417 /// @private
5418 void _iceD_shutdown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5419
5420 /// Gets the type ID of the associated Slice interface.
5421 /// @return The string `"::IceGrid::Admin"`.
5422 static const char* ice_staticId() noexcept;
5423 };
5424
5425 /// A shared pointer to an AsyncAdmin.
5426 using AsyncAdminPtr = std::shared_ptr<AsyncAdmin>;
5427
5428 /// Iterates over an IceGrid log file.
5429 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::FileIterator`.
5430 /// @headerfile IceGrid/IceGrid.h
5431 class ICEGRID_API AsyncFileIterator : public virtual Ice::Object
5432 {
5433 public:
5434 /// The associated proxy type.
5436
5437 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5438 /// @param request The incoming request.
5439 /// @param sendResponse The callback to send the response.
5440 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5441
5442 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5443
5444 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5445
5446 /// Read lines from the log file.
5447 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
5448 /// message doesn't exceed the given size.
5449 /// @param response The response callback. It accepts:
5450 /// - `returnValue` `true` if EOF is encountered.
5451 /// - `lines` The lines read from the file. If there was nothing to read from the file since the last call to
5452 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
5453 /// newline character should be added when writing the last line to the to the output device).
5454 /// @param exception The exception callback.
5455 /// @param current The Current object of the incoming request.
5456 /// @throws IceGrid::FileNotAvailableException Thrown when the implementation failed to read from the file.
5457 virtual void readAsync(std::int32_t size, std::function<void(bool returnValue, const ::Ice::StringSeq& lines)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5458
5459 /// @private
5460 void _iceD_read(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5461
5462 /// Destroys the iterator.
5463 /// @param response The response callback.
5464 /// @param exception The exception callback.
5465 /// @param current The Current object of the incoming request.
5466 virtual void destroyAsync(std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5467
5468 /// @private
5469 void _iceD_destroy(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5470
5471 /// Gets the type ID of the associated Slice interface.
5472 /// @return The string `"::IceGrid::FileIterator"`.
5473 static const char* ice_staticId() noexcept;
5474 };
5475
5476 /// A shared pointer to an AsyncFileIterator.
5477 using AsyncFileIteratorPtr = std::shared_ptr<AsyncFileIterator>;
5478
5479 /// Monitors changes to the state of the registries.
5480 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::RegistryObserver`.
5481 /// @headerfile IceGrid/IceGrid.h
5482 class ICEGRID_API AsyncRegistryObserver : public virtual Ice::Object
5483 {
5484 public:
5485 /// The associated proxy type.
5487
5488 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5489 /// @param request The incoming request.
5490 /// @param sendResponse The callback to send the response.
5491 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5492
5493 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5494
5495 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5496
5497 /// Provides the initial state of the registries to the observer.
5498 /// @param registries The current state of the registries.
5499 /// @param response The response callback.
5500 /// @param exception The exception callback.
5501 /// @param current The Current object of the incoming request.
5502 virtual void registryInitAsync(RegistryInfoSeq registries, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5503
5504 /// @private
5505 void _iceD_registryInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5506
5507 /// Notifies the observer that a registry replica came up.
5508 /// @param registryReplica The registry state.
5509 /// @param response The response callback.
5510 /// @param exception The exception callback.
5511 /// @param current The Current object of the incoming request.
5512 virtual void registryUpAsync(RegistryInfo registryReplica, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5513
5514 /// @private
5515 void _iceD_registryUp(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5516
5517 /// Notifies the observer that a registry replica went down.
5518 /// @param name The registry name.
5519 /// @param response The response callback.
5520 /// @param exception The exception callback.
5521 /// @param current The Current object of the incoming request.
5522 virtual void registryDownAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5523
5524 /// @private
5525 void _iceD_registryDown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5526
5527 /// Gets the type ID of the associated Slice interface.
5528 /// @return The string `"::IceGrid::RegistryObserver"`.
5529 static const char* ice_staticId() noexcept;
5530 };
5531
5532 /// A shared pointer to an AsyncRegistryObserver.
5534
5535 /// Monitors changes to the state of the nodes.
5536 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::NodeObserver`.
5537 /// @headerfile IceGrid/IceGrid.h
5538 class ICEGRID_API AsyncNodeObserver : public virtual Ice::Object
5539 {
5540 public:
5541 /// The associated proxy type.
5543
5544 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5545 /// @param request The incoming request.
5546 /// @param sendResponse The callback to send the response.
5547 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5548
5549 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5550
5551 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5552
5553 /// Provides the initial state of the nodes to the observer.
5554 /// @param nodes The current state of the nodes.
5555 /// @param response The response callback.
5556 /// @param exception The exception callback.
5557 /// @param current The Current object of the incoming request.
5558 virtual void nodeInitAsync(NodeDynamicInfoSeq nodes, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5559
5560 /// @private
5561 void _iceD_nodeInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5562
5563 /// Notifies the observer that a node came up.
5564 /// @param node The node state.
5565 /// @param response The response callback.
5566 /// @param exception The exception callback.
5567 /// @param current The Current object of the incoming request.
5568 virtual void nodeUpAsync(NodeDynamicInfo node, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5569
5570 /// @private
5571 void _iceD_nodeUp(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5572
5573 /// Notifies the observer that a node went down.
5574 /// @param name The node name.
5575 /// @param response The response callback.
5576 /// @param exception The exception callback.
5577 /// @param current The Current object of the incoming request.
5578 virtual void nodeDownAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5579
5580 /// @private
5581 void _iceD_nodeDown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5582
5583 /// Notifies the observer that the state of a server changed.
5584 /// @param node The node hosting the server.
5585 /// @param updatedInfo The new server state.
5586 /// @param response The response callback.
5587 /// @param exception The exception callback.
5588 /// @param current The Current object of the incoming request.
5589 virtual void updateServerAsync(std::string node, ServerDynamicInfo updatedInfo, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5590
5591 /// @private
5592 void _iceD_updateServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5593
5594 /// Notifies the observer that the state of an object adapter changed.
5595 /// @param node The node hosting the adapter.
5596 /// @param updatedInfo The new adapter state.
5597 /// @param response The response callback.
5598 /// @param exception The exception callback.
5599 /// @param current The Current object of the incoming request.
5600 virtual void updateAdapterAsync(std::string node, AdapterDynamicInfo updatedInfo, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5601
5602 /// @private
5603 void _iceD_updateAdapter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5604
5605 /// Gets the type ID of the associated Slice interface.
5606 /// @return The string `"::IceGrid::NodeObserver"`.
5607 static const char* ice_staticId() noexcept;
5608 };
5609
5610 /// A shared pointer to an AsyncNodeObserver.
5611 using AsyncNodeObserverPtr = std::shared_ptr<AsyncNodeObserver>;
5612
5613 /// Monitors applications.
5614 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::ApplicationObserver`.
5615 /// @headerfile IceGrid/IceGrid.h
5616 class ICEGRID_API AsyncApplicationObserver : public virtual Ice::Object
5617 {
5618 public:
5619 /// The associated proxy type.
5621
5622 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5623 /// @param request The incoming request.
5624 /// @param sendResponse The callback to send the response.
5625 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5626
5627 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5628
5629 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5630
5631 /// Provides the initial application infos to the observer.
5632 /// @param serial The current serial number of the registry database. This serial number allows observers to
5633 /// make sure that their internal state is synchronized with the registry.
5634 /// @param applications The applications currently registered with the registry.
5635 /// @param response The response callback.
5636 /// @param exception The exception callback.
5637 /// @param current The Current object of the incoming request.
5638 virtual void applicationInitAsync(std::int32_t serial, ApplicationInfoSeq applications, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5639
5640 /// @private
5641 void _iceD_applicationInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5642
5643 /// Notifies the observer that an application was added.
5644 /// @param serial The new serial number of the registry database.
5645 /// @param desc The descriptor of the new application.
5646 /// @param response The response callback.
5647 /// @param exception The exception callback.
5648 /// @param current The Current object of the incoming request.
5649 virtual void applicationAddedAsync(std::int32_t serial, ApplicationInfo desc, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5650
5651 /// @private
5652 void _iceD_applicationAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5653
5654 /// Notifies the observer that an application was removed.
5655 /// @param serial The new serial number of the registry database.
5656 /// @param name The name of the application that was removed.
5657 /// @param response The response callback.
5658 /// @param exception The exception callback.
5659 /// @param current The Current object of the incoming request.
5660 virtual void applicationRemovedAsync(std::int32_t serial, std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5661
5662 /// @private
5663 void _iceD_applicationRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5664
5665 /// Notifies the observer that an application was updated.
5666 /// @param serial The new serial number of the registry database.
5667 /// @param desc The descriptor of the update.
5668 /// @param response The response callback.
5669 /// @param exception The exception callback.
5670 /// @param current The Current object of the incoming request.
5671 virtual void applicationUpdatedAsync(std::int32_t serial, ApplicationUpdateInfo desc, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5672
5673 /// @private
5674 void _iceD_applicationUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5675
5676 /// Gets the type ID of the associated Slice interface.
5677 /// @return The string `"::IceGrid::ApplicationObserver"`.
5678 static const char* ice_staticId() noexcept;
5679 };
5680
5681 /// A shared pointer to an AsyncApplicationObserver.
5683
5684 /// Monitors dynamically-registered object adapters.
5685 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::AdapterObserver`.
5686 /// @headerfile IceGrid/IceGrid.h
5687 class ICEGRID_API AsyncAdapterObserver : public virtual Ice::Object
5688 {
5689 public:
5690 /// The associated proxy type.
5692
5693 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5694 /// @param request The incoming request.
5695 /// @param sendResponse The callback to send the response.
5696 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5697
5698 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5699
5700 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5701
5702 /// Provides the initial list of dynamically registered adapters to the observer.
5703 /// @param adpts The adapters that were dynamically registered with the registry.
5704 /// @param response The response callback.
5705 /// @param exception The exception callback.
5706 /// @param current The Current object of the incoming request.
5707 virtual void adapterInitAsync(AdapterInfoSeq adpts, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5708
5709 /// @private
5710 void _iceD_adapterInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5711
5712 /// Notifies the observer that a dynamically-registered adapter was added.
5713 /// @param info The details of the new adapter.
5714 /// @param response The response callback.
5715 /// @param exception The exception callback.
5716 /// @param current The Current object of the incoming request.
5717 virtual void adapterAddedAsync(AdapterInfo info, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5718
5719 /// @private
5720 void _iceD_adapterAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5721
5722 /// @param info The details of the updated adapter.
5723 /// @param response The response callback.
5724 /// @param exception The exception callback.
5725 /// @param current The Current object of the incoming request.
5726 virtual void adapterUpdatedAsync(AdapterInfo info, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5727
5728 /// @private
5729 void _iceD_adapterUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5730
5731 /// Notifies the observer that a dynamically-registered adapter was removed.
5732 /// @param id The ID of the removed adapter.
5733 /// @param response The response callback.
5734 /// @param exception The exception callback.
5735 /// @param current The Current object of the incoming request.
5736 virtual void adapterRemovedAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5737
5738 /// @private
5739 void _iceD_adapterRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5740
5741 /// Gets the type ID of the associated Slice interface.
5742 /// @return The string `"::IceGrid::AdapterObserver"`.
5743 static const char* ice_staticId() noexcept;
5744 };
5745
5746 /// A shared pointer to an AsyncAdapterObserver.
5748
5749 /// Monitors well-known objects that are added, updated or removed using AdminPrx.
5750 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::ObjectObserver`.
5751 /// @headerfile IceGrid/IceGrid.h
5752 class ICEGRID_API AsyncObjectObserver : public virtual Ice::Object
5753 {
5754 public:
5755 /// The associated proxy type.
5757
5758 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5759 /// @param request The incoming request.
5760 /// @param sendResponse The callback to send the response.
5761 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5762
5763 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5764
5765 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5766
5767 /// Provides the initial list of well-known objects to the observer.
5768 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
5769 /// @param response The response callback.
5770 /// @param exception The exception callback.
5771 /// @param current The Current object of the incoming request.
5772 virtual void objectInitAsync(ObjectInfoSeq objects, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5773
5774 /// @private
5775 void _iceD_objectInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5776
5777 /// Notifies the observer that a well-known object was added.
5778 /// @param info The details of the new object.
5779 /// @param response The response callback.
5780 /// @param exception The exception callback.
5781 /// @param current The Current object of the incoming request.
5782 virtual void objectAddedAsync(ObjectInfo info, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5783
5784 /// @private
5785 void _iceD_objectAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5786
5787 /// Notifies the observer that a well-known object was updated.
5788 /// @param info The details of the updated object.
5789 /// @param response The response callback.
5790 /// @param exception The exception callback.
5791 /// @param current The Current object of the incoming request.
5792 virtual void objectUpdatedAsync(ObjectInfo info, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5793
5794 /// @private
5795 void _iceD_objectUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5796
5797 /// Notifies the observer that a well-known object was removed.
5798 /// @param id The identity of the removed object.
5799 /// @param response The response callback.
5800 /// @param exception The exception callback.
5801 /// @param current The Current object of the incoming request.
5802 virtual void objectRemovedAsync(::Ice::Identity id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5803
5804 /// @private
5805 void _iceD_objectRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5806
5807 /// Gets the type ID of the associated Slice interface.
5808 /// @return The string `"::IceGrid::ObjectObserver"`.
5809 static const char* ice_staticId() noexcept;
5810 };
5811
5812 /// A shared pointer to an AsyncObjectObserver.
5814
5815 /// Represents an administrative session between an admin tool and an IceGrid registry.
5816 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::AdminSession`.
5817 /// @see RegistryPrx
5818 /// @headerfile IceGrid/IceGrid.h
5819 class ICEGRID_API AsyncAdminSession : public virtual ::Glacier2::AsyncSession
5820 {
5821 public:
5822 /// The associated proxy type.
5824
5825 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5826 /// @param request The incoming request.
5827 /// @param sendResponse The callback to send the response.
5828 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5829
5830 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5831
5832 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5833
5834 /// Keeps the session alive.
5835 /// @param response The response callback.
5836 /// @param exception The exception callback.
5837 /// @param current The Current object of the incoming request.
5838 virtual void keepAliveAsync(std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5839
5840 /// @private
5841 void _iceD_keepAlive(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5842
5843 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
5844 /// by the session.
5845 /// @param response The response callback. It accepts:
5846 /// - A proxy to the IceGrid admin object. This proxy is never null.
5847 /// @param exception The exception callback.
5848 /// @param current The Current object of the incoming request.
5849 virtual void getAdminAsync(std::function<void(const std::optional<AdminPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5850
5851 /// @private
5852 void _iceD_getAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5853
5854 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
5855 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
5856 /// @param response The response callback. It accepts:
5857 /// - A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
5858 /// @param exception The exception callback.
5859 /// @param current The Current object of the incoming request.
5860 virtual void getAdminCallbackTemplateAsync(std::function<void(const std::optional<Ice::ObjectPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5861
5862 /// @private
5863 void _iceD_getAdminCallbackTemplate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5864
5865 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
5866 /// @param registryObs The registry observer.
5867 /// @param nodeObs The node observer.
5868 /// @param appObs The application observer.
5869 /// @param adptObs The adapter observer.
5870 /// @param objObs The object observer.
5871 /// @param response The response callback.
5872 /// @param exception The exception callback.
5873 /// @param current The Current object of the incoming request.
5874 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
5875 virtual void setObserversAsync(std::optional<RegistryObserverPrx> registryObs, std::optional<NodeObserverPrx> nodeObs, std::optional<ApplicationObserverPrx> appObs, std::optional<AdapterObserverPrx> adptObs, std::optional<ObjectObserverPrx> objObs, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5876
5877 /// @private
5878 void _iceD_setObservers(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5879
5880 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
5881 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
5882 /// session.
5883 /// @param registryObs The registry observer identity.
5884 /// @param nodeObs The node observer identity.
5885 /// @param appObs The application observer.
5886 /// @param adptObs The adapter observer.
5887 /// @param objObs The object observer.
5888 /// @param response The response callback.
5889 /// @param exception The exception callback.
5890 /// @param current The Current object of the incoming request.
5891 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
5892 virtual void setObserversByIdentityAsync(::Ice::Identity registryObs, ::Ice::Identity nodeObs, ::Ice::Identity appObs, ::Ice::Identity adptObs, ::Ice::Identity objObs, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5893
5894 /// @private
5895 void _iceD_setObserversByIdentity(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5896
5897 /// Acquires an exclusive lock to start updating the registry applications.
5898 /// @param response The response callback. It accepts:
5899 /// - The current serial.
5900 /// @param exception The exception callback.
5901 /// @param current The Current object of the incoming request.
5902 /// @throws IceGrid::AccessDeniedException Thrown when the exclusive lock can't be acquired. This might happen if the
5903 /// lock is currently acquired by another session.
5904 virtual void startUpdateAsync(std::function<void(std::int32_t returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5905
5906 /// @private
5907 void _iceD_startUpdate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5908
5909 /// Finishes updating the registry and releases the exclusive lock.
5910 /// @param response The response callback.
5911 /// @param exception The exception callback.
5912 /// @param current The Current object of the incoming request.
5913 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock.
5914 virtual void finishUpdateAsync(std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5915
5916 /// @private
5917 void _iceD_finishUpdate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5918
5919 /// Gets the name of the registry replica hosting this session.
5920 /// @param response The response callback. It accepts:
5921 /// - The replica name of the registry.
5922 /// @param exception The exception callback.
5923 /// @param current The Current object of the incoming request.
5924 virtual void getReplicaNameAsync(std::function<void(std::string_view returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5925
5926 /// @private
5927 void _iceD_getReplicaName(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5928
5929 /// Opens a server log file for reading.
5930 /// @param id The server ID.
5931 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
5932 /// service deployment descriptor.
5933 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5934 /// Otherwise, the file is read from the last @p count lines.
5935 /// @param response The response callback. It accepts:
5936 /// - An iterator to read the file. This proxy is never null.
5937 /// @param exception The exception callback.
5938 /// @param current The Current object of the incoming request.
5939 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
5940 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
5941 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5942 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5943 virtual void openServerLogAsync(std::string id, std::string path, std::int32_t count, std::function<void(const std::optional<FileIteratorPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5944
5945 /// @private
5946 void _iceD_openServerLog(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5947
5948 /// Opens a server stderr file for reading.
5949 /// @param id The server ID.
5950 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5951 /// Otherwise, the file is read from the last @p count lines.
5952 /// @param response The response callback. It accepts:
5953 /// - An iterator to read the file. This proxy is never null.
5954 /// @param exception The exception callback.
5955 /// @param current The Current object of the incoming request.
5956 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
5957 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
5958 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5959 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5960 virtual void openServerStdErrAsync(std::string id, std::int32_t count, std::function<void(const std::optional<FileIteratorPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5961
5962 /// @private
5963 void _iceD_openServerStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5964
5965 /// Opens a server stdout file for reading.
5966 /// @param id The server id.
5967 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5968 /// Otherwise, the file is read from the last @p count lines.
5969 /// @param response The response callback. It accepts:
5970 /// - An iterator to read the file. This proxy is never null.
5971 /// @param exception The exception callback.
5972 /// @param current The Current object of the incoming request.
5973 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
5974 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
5975 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5976 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5977 virtual void openServerStdOutAsync(std::string id, std::int32_t count, std::function<void(const std::optional<FileIteratorPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5978
5979 /// @private
5980 void _iceD_openServerStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5981
5982 /// Opens a node stderr file for reading.
5983 /// @param name The node name.
5984 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5985 /// Otherwise, the file is read from the last @p count lines.
5986 /// @param response The response callback. It accepts:
5987 /// - An iterator to read the file. This proxy is never null.
5988 /// @param exception The exception callback.
5989 /// @param current The Current object of the incoming request.
5990 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
5991 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5992 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5993 virtual void openNodeStdErrAsync(std::string name, std::int32_t count, std::function<void(const std::optional<FileIteratorPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5994
5995 /// @private
5996 void _iceD_openNodeStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5997
5998 /// Opens a node stdout file for reading.
5999 /// @param name The node name.
6000 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
6001 /// Otherwise, the file is read from the last @p count lines.
6002 /// @param response The response callback. It accepts:
6003 /// - An iterator to read the file. This proxy is never null.
6004 /// @param exception The exception callback.
6005 /// @param current The Current object of the incoming request.
6006 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
6007 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
6008 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
6009 virtual void openNodeStdOutAsync(std::string name, std::int32_t count, std::function<void(const std::optional<FileIteratorPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
6010
6011 /// @private
6012 void _iceD_openNodeStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
6013
6014 /// Opens a registry stderr file for reading.
6015 /// @param name The registry name.
6016 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
6017 /// Otherwise, the file is read from the last @p count lines.
6018 /// @param response The response callback. It accepts:
6019 /// - An iterator to read the file. This proxy is never null.
6020 /// @param exception The exception callback.
6021 /// @param current The Current object of the incoming request.
6022 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
6023 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
6024 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
6025 virtual void openRegistryStdErrAsync(std::string name, std::int32_t count, std::function<void(const std::optional<FileIteratorPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
6026
6027 /// @private
6028 void _iceD_openRegistryStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
6029
6030 /// Opens a registry stdout file for reading.
6031 /// @param name The registry name.
6032 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
6033 /// Otherwise, the file is read from the last @p count lines.
6034 /// @param response The response callback. It accepts:
6035 /// - An iterator to read the file. This proxy is never null.
6036 /// @param exception The exception callback.
6037 /// @param current The Current object of the incoming request.
6038 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
6039 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
6040 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
6041 virtual void openRegistryStdOutAsync(std::string name, std::int32_t count, std::function<void(const std::optional<FileIteratorPrx>& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
6042
6043 /// @private
6044 void _iceD_openRegistryStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
6045
6046 /// Gets the type ID of the associated Slice interface.
6047 /// @return The string `"::IceGrid::AdminSession"`.
6048 static const char* ice_staticId() noexcept;
6049 };
6050
6051 /// A shared pointer to an AsyncAdminSession.
6052 using AsyncAdminSessionPtr = std::shared_ptr<AsyncAdminSession>;
6053}
6054
6055namespace Ice
6056{
6057 /// @cond INTERNAL
6058 template<>
6059 struct StreamableTraits<::IceGrid::ServerState>
6060 {
6061 static constexpr StreamHelperCategory helper = StreamHelperCategoryEnum;
6062 static constexpr int minValue = 0;
6063 static constexpr int maxValue = 6;
6064 static constexpr int minWireSize = 1;
6065 static constexpr bool fixedLength = false;
6066 };
6067 /// @endcond
6068
6069 /// @cond INTERNAL
6070 template<>
6071 struct StreamableTraits<::IceGrid::ObjectInfo>
6072 {
6073 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6074 static constexpr int minWireSize = 3;
6075 static constexpr bool fixedLength = false;
6076 };
6077
6078 template<>
6079 struct StreamReader<::IceGrid::ObjectInfo>
6080 {
6081 /// Unmarshals a ::IceGrid::ObjectInfo from the input stream.
6082 static void read(InputStream* istr, ::IceGrid::ObjectInfo& v)
6083 {
6084 istr->readAll(v.proxy, v.type);
6085 }
6086 };
6087 /// @endcond
6088
6089 /// @cond INTERNAL
6090 template<>
6091 struct StreamableTraits<::IceGrid::AdapterInfo>
6092 {
6093 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6094 static constexpr int minWireSize = 4;
6095 static constexpr bool fixedLength = false;
6096 };
6097
6098 template<>
6099 struct StreamReader<::IceGrid::AdapterInfo>
6100 {
6101 /// Unmarshals a ::IceGrid::AdapterInfo from the input stream.
6102 static void read(InputStream* istr, ::IceGrid::AdapterInfo& v)
6103 {
6104 istr->readAll(v.id, v.proxy, v.replicaGroupId);
6105 }
6106 };
6107 /// @endcond
6108
6109 /// @cond INTERNAL
6110 template<>
6111 struct StreamableTraits<::IceGrid::ServerInfo>
6112 {
6113 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6114 static constexpr int minWireSize = 9;
6115 static constexpr bool fixedLength = false;
6116 };
6117
6118 template<>
6119 struct StreamReader<::IceGrid::ServerInfo>
6120 {
6121 /// Unmarshals a ::IceGrid::ServerInfo from the input stream.
6122 static void read(InputStream* istr, ::IceGrid::ServerInfo& v)
6123 {
6124 istr->readAll(v.application, v.uuid, v.revision, v.node, v.descriptor, v.sessionId);
6125 }
6126 };
6127 /// @endcond
6128
6129 /// @cond INTERNAL
6130 template<>
6131 struct StreamableTraits<::IceGrid::NodeInfo>
6132 {
6133 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6134 static constexpr int minWireSize = 11;
6135 static constexpr bool fixedLength = false;
6136 };
6137
6138 template<>
6139 struct StreamReader<::IceGrid::NodeInfo>
6140 {
6141 /// Unmarshals a ::IceGrid::NodeInfo from the input stream.
6142 static void read(InputStream* istr, ::IceGrid::NodeInfo& v)
6143 {
6144 istr->readAll(v.name, v.os, v.hostname, v.release, v.version, v.machine, v.nProcessors, v.dataDir);
6145 }
6146 };
6147 /// @endcond
6148
6149 /// @cond INTERNAL
6150 template<>
6151 struct StreamableTraits<::IceGrid::RegistryInfo>
6152 {
6153 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6154 static constexpr int minWireSize = 2;
6155 static constexpr bool fixedLength = false;
6156 };
6157
6158 template<>
6159 struct StreamReader<::IceGrid::RegistryInfo>
6160 {
6161 /// Unmarshals a ::IceGrid::RegistryInfo from the input stream.
6162 static void read(InputStream* istr, ::IceGrid::RegistryInfo& v)
6163 {
6164 istr->readAll(v.name, v.hostname);
6165 }
6166 };
6167 /// @endcond
6168
6169 /// @cond INTERNAL
6170 template<>
6171 struct StreamableTraits<::IceGrid::LoadInfo>
6172 {
6173 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6174 static constexpr int minWireSize = 12;
6175 static constexpr bool fixedLength = true;
6176 };
6177
6178 template<>
6179 struct StreamReader<::IceGrid::LoadInfo>
6180 {
6181 /// Unmarshals a ::IceGrid::LoadInfo from the input stream.
6182 static void read(InputStream* istr, ::IceGrid::LoadInfo& v)
6183 {
6184 istr->readAll(v.avg1, v.avg5, v.avg15);
6185 }
6186 };
6187 /// @endcond
6188
6189 /// @cond INTERNAL
6190 template<>
6191 struct StreamableTraits<::IceGrid::ApplicationInfo>
6192 {
6193 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6194 static constexpr int minWireSize = 33;
6195 static constexpr bool fixedLength = false;
6196 };
6197
6198 template<>
6199 struct StreamReader<::IceGrid::ApplicationInfo>
6200 {
6201 /// Unmarshals a ::IceGrid::ApplicationInfo from the input stream.
6202 static void read(InputStream* istr, ::IceGrid::ApplicationInfo& v)
6203 {
6204 istr->readAll(v.uuid, v.createTime, v.createUser, v.updateTime, v.updateUser, v.revision, v.descriptor);
6205 }
6206 };
6207 /// @endcond
6208
6209 /// @cond INTERNAL
6210 template<>
6211 struct StreamableTraits<::IceGrid::ApplicationUpdateInfo>
6212 {
6213 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6214 static constexpr int minWireSize = 28;
6215 static constexpr bool fixedLength = false;
6216 };
6217
6218 template<>
6219 struct StreamReader<::IceGrid::ApplicationUpdateInfo>
6220 {
6221 /// Unmarshals a ::IceGrid::ApplicationUpdateInfo from the input stream.
6222 static void read(InputStream* istr, ::IceGrid::ApplicationUpdateInfo& v)
6223 {
6224 istr->readAll(v.updateTime, v.updateUser, v.revision, v.descriptor);
6225 }
6226 };
6227 /// @endcond
6228
6229 /// @cond INTERNAL
6230 template<>
6231 struct StreamableTraits<::IceGrid::ServerDynamicInfo>
6232 {
6233 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6234 static constexpr int minWireSize = 7;
6235 static constexpr bool fixedLength = false;
6236 };
6237
6238 template<>
6239 struct StreamReader<::IceGrid::ServerDynamicInfo>
6240 {
6241 /// Unmarshals a ::IceGrid::ServerDynamicInfo from the input stream.
6242 static void read(InputStream* istr, ::IceGrid::ServerDynamicInfo& v)
6243 {
6244 istr->readAll(v.id, v.state, v.pid, v.enabled);
6245 }
6246 };
6247 /// @endcond
6248
6249 /// @cond INTERNAL
6250 template<>
6251 struct StreamableTraits<::IceGrid::AdapterDynamicInfo>
6252 {
6253 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6254 static constexpr int minWireSize = 3;
6255 static constexpr bool fixedLength = false;
6256 };
6257
6258 template<>
6259 struct StreamReader<::IceGrid::AdapterDynamicInfo>
6260 {
6261 /// Unmarshals a ::IceGrid::AdapterDynamicInfo from the input stream.
6262 static void read(InputStream* istr, ::IceGrid::AdapterDynamicInfo& v)
6263 {
6264 istr->readAll(v.id, v.proxy);
6265 }
6266 };
6267 /// @endcond
6268
6269 /// @cond INTERNAL
6270 template<>
6271 struct StreamableTraits<::IceGrid::NodeDynamicInfo>
6272 {
6273 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6274 static constexpr int minWireSize = 13;
6275 static constexpr bool fixedLength = false;
6276 };
6277
6278 template<>
6279 struct StreamReader<::IceGrid::NodeDynamicInfo>
6280 {
6281 /// Unmarshals a ::IceGrid::NodeDynamicInfo from the input stream.
6282 static void read(InputStream* istr, ::IceGrid::NodeDynamicInfo& v)
6283 {
6284 istr->readAll(v.info, v.servers, v.adapters);
6285 }
6286 };
6287 /// @endcond
6288}
6289
6290// NOLINTEND(modernize-concat-nested-namespaces)
6291
6292#include <Ice/PopDisableWarnings.h>
6293#endif
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
std::string lockUserId
The id of the user holding the lock (if any).
Definition Admin.h:3491
AccessDeniedException() noexcept=default
Default constructor.
const char * ice_id() const noexcept override
Returns the type ID of this exception.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice exception.
AccessDeniedException(const AccessDeniedException &) noexcept=default
Copy constructor.
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3476
void ice_throw() const override
Throws this exception.
std::future< void > adapterAddedAsync(const AdapterInfo &info, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a dynamically-registered adapter was added.
void adapterUpdated(const AdapterInfo &info, const Ice::Context &context=Ice::noExplicitContext) const
std::future< void > adapterUpdatedAsync(const AdapterInfo &info, const Ice::Context &context=Ice::noExplicitContext) const
AdapterObserverPrx(AdapterObserverPrx &&other) noexcept
Move constructor.
Definition Admin.h:2115
std::function< void()> adapterUpdatedAsync(const AdapterInfo &info, 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
void adapterInit(const AdapterInfoSeq &adpts, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial list of dynamically registered adapters to the observer.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
std::function< void()> adapterAddedAsync(const AdapterInfo &info, 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
Notifies the observer that a dynamically-registered adapter was added.
void adapterRemoved(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a dynamically-registered adapter was removed.
AdapterObserverPrx & operator=(const AdapterObserverPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:2122
AdapterObserverPrx & operator=(AdapterObserverPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:2133
std::future< void > adapterInitAsync(const AdapterInfoSeq &adpts, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial list of dynamically registered adapters to the observer.
std::function< void()> adapterInitAsync(const AdapterInfoSeq &adpts, 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 the initial list of dynamically registered adapters to the observer.
std::function< void()> adapterRemovedAsync(std::string_view id, 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
Notifies the observer that a dynamically-registered adapter was removed.
AdapterObserverPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Admin.h:2107
AdapterObserverPrx(const AdapterObserverPrx &other) noexcept
Copy constructor.
Definition Admin.h:2111
void adapterAdded(const AdapterInfo &info, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a dynamically-registered adapter was added.
std::future< void > adapterRemovedAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a dynamically-registered adapter was removed.
Monitors dynamically-registered object adapters.
Definition Admin.h:2102
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.
virtual void adapterUpdated(AdapterInfo info, const Ice::Current &current)=0
virtual void adapterAdded(AdapterInfo info, const Ice::Current &current)=0
Notifies the observer that a dynamically-registered adapter was added.
virtual void adapterInit(AdapterInfoSeq adpts, const Ice::Current &current)=0
Provides the initial list of dynamically registered adapters to the observer.
virtual void adapterRemoved(std::string id, const Ice::Current &current)=0
Notifies the observer that a dynamically-registered adapter was removed.
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.
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,...
AdapterObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:4506
Monitors dynamically-registered object adapters.
Definition Admin.h:4503
ObjectInfoSeq getObjectInfosByType(std::string_view type, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info of all the registered objects with a given type.
void startServer(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Starts a server and waits for its activation.
void syncApplicationWithoutRestart(const ApplicationDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Synchronizes a deployed application.
::Ice::StringSeq getAllNodeNames(const Ice::Context &context=Ice::noExplicitContext) const
Gets the names of all IceGrid nodes currently registered.
void shutdownRegistry(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Shuts down an IceGrid registry.
void stopServer(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Stops a server.
std::future<::Ice::StringSeq > getAllAdapterIdsAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets the IDs of all adapters registered with IceGrid.
void enableServer(std::string_view id, bool enabled, const Ice::Context &context=Ice::noExplicitContext) const
Enables or disables a server.
std::function< void()> shutdownAsync(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
Shuts down the IceGrid registry.
std::future< void > updateObjectAsync(const std::optional< Ice::ObjectPrx > &obj, const Ice::Context &context=Ice::noExplicitContext) const
Updates an object in the object registry.
std::future< std::int32_t > getServerPidAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets the system process ID of a server.
std::function< void()> removeObjectAsync(const ::Ice::Identity &id, 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
Removes an object from the object registry.
LoadInfo getNodeLoad(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets the load averages of a node.
void addApplication(const ApplicationDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Adds an application to IceGrid.
std::future< void > removeApplicationAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Removes an application from IceGrid.
::Ice::StringSeq getAllAdapterIds(const Ice::Context &context=Ice::noExplicitContext) const
Gets the IDs of all adapters registered with IceGrid.
std::future< std::optional< Ice::ObjectPrx > > getNodeAdminAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of an IceGrid node.
std::int32_t getServerPid(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets the system process ID of a server.
std::future< void > addObjectWithTypeAsync(const std::optional< Ice::ObjectPrx > &obj, std::string_view type, const Ice::Context &context=Ice::noExplicitContext) const
Adds an object to the object registry and explicitly specifies its type.
std::future< bool > isServerEnabledAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Checks if the server is enabled or disabled.
std::function< void()> addObjectWithTypeAsync(const std::optional< Ice::ObjectPrx > &obj, std::string_view type, 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
Adds an object to the object registry and explicitly specifies its type.
void updateApplicationWithoutRestart(const ApplicationUpdateDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Updates a deployed application.
std::int32_t getNodeProcessorSocketCount(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
std::future< RegistryInfo > getRegistryInfoAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets the registry information of an IceGrid registry.
std::future< ServerState > getServerStateAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets the state of a server.
std::future< ServerInfo > getServerInfoAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets information about a server.
std::optional< Ice::ObjectPrx > getServerAdmin(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of a server.
std::function< void()> getNodeLoadAsync(std::string_view name, std::function< void(::IceGrid::LoadInfo)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the load averages of a node.
std::string getNodeHostname(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Get the hostname of a node.
std::optional< Ice::ObjectPrx > getNodeAdmin(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of an IceGrid node.
std::function< void()> pingNodeAsync(std::string_view name, std::function< void(bool)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Pings an IceGrid node to see if it is active.
std::future< std::optional< Ice::ObjectPrx > > getServerAdminAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of a server.
std::function< void()> updateApplicationAsync(const ApplicationUpdateDescriptor &descriptor, 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
Updates a deployed application.
std::future< ObjectInfo > getObjectInfoAsync(const ::Ice::Identity &id, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info for the object.
std::function< void()> getRegistryAdminAsync(std::string_view name, std::function< void(std::optional< Ice::ObjectPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of an IceGrid registry.
NodeInfo getNodeInfo(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets the node information of a node.
std::function< void()> getAllObjectInfosAsync(std::string_view expr, std::function< void(::IceGrid::ObjectInfoSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info of all the registered objects whose stringified identities match the given expre...
std::future<::Ice::StringSeq > getAllRegistryNamesAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets the names of all the IceGrid registries currently registered.
void shutdown(const Ice::Context &context=Ice::noExplicitContext) const
Shuts down the IceGrid registry.
std::function< void()> getAdapterInfoAsync(std::string_view id, std::function< void(::IceGrid::AdapterInfoSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets adapter information for the replica group or adapter with the given ID.
RegistryInfo getRegistryInfo(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets the registry information of an IceGrid registry.
std::future< std::string > getNodeHostnameAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Get the hostname of a node.
std::function< void()> getNodeInfoAsync(std::string_view name, std::function< void(::IceGrid::NodeInfo)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the node information of a node.
bool pingNode(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Pings an IceGrid node to see if it is active.
std::function< void()> getAllAdapterIdsAsync(std::function< void(::Ice::StringSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the IDs of all adapters registered with IceGrid.
std::function< void()> getObjectInfoAsync(const ::Ice::Identity &id, std::function< void(::IceGrid::ObjectInfo)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info for the object.
std::future< bool > pingRegistryAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Pings an IceGrid registry to see if it is active.
std::future< std::optional< Ice::ObjectPrx > > getRegistryAdminAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of an IceGrid registry.
std::future< void > shutdownAsync(const Ice::Context &context=Ice::noExplicitContext) const
Shuts down the IceGrid registry.
std::function< void()> getDefaultApplicationDescriptorAsync(std::function< void(::IceGrid::ApplicationDescriptor)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the default application descriptor.
std::function< void()> getNodeAdminAsync(std::string_view name, std::function< void(std::optional< Ice::ObjectPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of an IceGrid node.
::Ice::StringSeq getAllRegistryNames(const Ice::Context &context=Ice::noExplicitContext) const
Gets the names of all the IceGrid registries currently registered.
void updateObject(const std::optional< Ice::ObjectPrx > &obj, const Ice::Context &context=Ice::noExplicitContext) const
Updates an object in the object registry.
std::future< std::string > getServerAdminCategoryAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets the category for server admin objects.
std::future< void > removeAdapterAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Removes the adapter with the given ID.
std::future< void > shutdownNodeAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Shuts down an IceGrid node.
ApplicationInfo getApplicationInfo(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets an application descriptor.
std::future< LoadInfo > getNodeLoadAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets the load averages of a node.
std::function< void()> getServerAdminAsync(std::string_view id, std::function< void(std::optional< Ice::ObjectPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of a server.
std::function< void()> getNodeProcessorSocketCountAsync(std::string_view name, std::function< void(std::int32_t)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
std::future< void > sendSignalAsync(std::string_view id, std::string_view signal, const Ice::Context &context=Ice::noExplicitContext) const
Sends a signal to a server.
std::function< void()> getServerStateAsync(std::string_view id, std::function< void(::IceGrid::ServerState)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the state of a server.
std::function< void()> updateObjectAsync(const std::optional< Ice::ObjectPrx > &obj, 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
Updates an object in the object registry.
std::optional< Ice::ObjectPrx > getRegistryAdmin(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the admin object of an IceGrid registry.
std::function< void()> enableServerAsync(std::string_view id, bool enabled, 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
Enables or disables a server.
bool isServerEnabled(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Checks if the server is enabled or disabled.
std::future< void > enableServerAsync(std::string_view id, bool enabled, const Ice::Context &context=Ice::noExplicitContext) const
Enables or disables a server.
std::function< void()> syncApplicationWithoutRestartAsync(const ApplicationDescriptor &descriptor, 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
Synchronizes a deployed application.
std::function< void()> isServerEnabledAsync(std::string_view id, std::function< void(bool)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Checks if the server is enabled or disabled.
AdapterInfoSeq getAdapterInfo(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets adapter information for the replica group or adapter with the given ID.
void removeObject(const ::Ice::Identity &id, const Ice::Context &context=Ice::noExplicitContext) const
Removes an object from the object registry.
std::function< void()> getAllServerIdsAsync(std::function< void(::Ice::StringSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the IDs of all the servers registered with IceGrid.
std::future<::Ice::StringSeq > getAllApplicationNamesAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets all the IceGrid applications currently registered.
void shutdownNode(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Shuts down an IceGrid node.
ServerInfo getServerInfo(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets information about a server.
std::string getServerAdminCategory(const Ice::Context &context=Ice::noExplicitContext) const
Gets the category for server admin objects.
std::function< void()> addApplicationAsync(const ApplicationDescriptor &descriptor, 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
Adds an application to IceGrid.
void addObject(const std::optional< Ice::ObjectPrx > &obj, const Ice::Context &context=Ice::noExplicitContext) const
Adds an object to the object registry.
AdminPrx & operator=(const AdminPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:165
bool pingRegistry(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Pings an IceGrid registry to see if it is active.
std::function< void()> removeAdapterAsync(std::string_view id, 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
Removes the adapter with the given ID.
::Ice::StringSeq getAllApplicationNames(const Ice::Context &context=Ice::noExplicitContext) const
Gets all the IceGrid applications currently registered.
std::future< void > stopServerAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Stops a server.
void updateApplication(const ApplicationUpdateDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Updates a deployed application.
std::function< void()> getAllNodeNamesAsync(std::function< void(::Ice::StringSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the names of all IceGrid nodes currently registered.
std::function< void()> instantiateServerAsync(std::string_view application, std::string_view node, const ServerInstanceDescriptor &desc, 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
Instantiates a server template.
std::future<::Ice::StringSeq > getAllServerIdsAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets the IDs of all the servers registered with IceGrid.
std::function< void()> shutdownNodeAsync(std::string_view name, 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
Shuts down an IceGrid node.
ServerState getServerState(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets the state of a server.
std::future< std::int32_t > getNodeProcessorSocketCountAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
std::function< void()> getServerAdminCategoryAsync(std::function< void(std::string)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the category for server admin objects.
std::function< void()> shutdownRegistryAsync(std::string_view name, 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
Shuts down an IceGrid registry.
std::future< void > startServerAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Starts a server and waits for its activation.
std::future< void > syncApplicationAsync(const ApplicationDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Synchronizes a deployed application.
std::function< void()> updateApplicationWithoutRestartAsync(const ApplicationUpdateDescriptor &descriptor, 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
Updates a deployed application.
std::future< ApplicationInfo > getApplicationInfoAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets an application descriptor.
void removeAdapter(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Removes the adapter with the given ID.
std::future< void > shutdownRegistryAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Shuts down an IceGrid registry.
std::future< AdapterInfoSeq > getAdapterInfoAsync(std::string_view id, const Ice::Context &context=Ice::noExplicitContext) const
Gets adapter information for the replica group or adapter with the given ID.
std::function< void()> getApplicationInfoAsync(std::string_view name, std::function< void(::IceGrid::ApplicationInfo)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets an application descriptor.
std::future< bool > pingNodeAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Pings an IceGrid node to see if it is active.
std::future< ApplicationDescriptor > getDefaultApplicationDescriptorAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets the default application descriptor.
std::function< void()> startServerAsync(std::string_view id, 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
Starts a server and waits for its activation.
std::future< void > addApplicationAsync(const ApplicationDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Adds an application to IceGrid.
void sendSignal(std::string_view id, std::string_view signal, const Ice::Context &context=Ice::noExplicitContext) const
Sends a signal to a server.
std::function< void()> pingRegistryAsync(std::string_view name, std::function< void(bool)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Pings an IceGrid registry to see if it is active.
std::future< void > updateApplicationWithoutRestartAsync(const ApplicationUpdateDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Updates a deployed application.
std::future< NodeInfo > getNodeInfoAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Gets the node information of a node.
AdminPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Admin.h:150
ObjectInfoSeq getAllObjectInfos(std::string_view expr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info of all the registered objects whose stringified identities match the given expre...
std::future< void > updateApplicationAsync(const ApplicationUpdateDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Updates a deployed application.
void addObjectWithType(const std::optional< Ice::ObjectPrx > &obj, std::string_view type, const Ice::Context &context=Ice::noExplicitContext) const
Adds an object to the object registry and explicitly specifies its type.
std::function< void()> removeApplicationAsync(std::string_view name, 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
Removes an application from IceGrid.
AdminPrx(const AdminPrx &other) noexcept
Copy constructor.
Definition Admin.h:154
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
std::future< ObjectInfoSeq > getAllObjectInfosAsync(std::string_view expr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info of all the registered objects whose stringified identities match the given expre...
std::future<::Ice::StringSeq > getAllNodeNamesAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets the names of all IceGrid nodes currently registered.
AdminPrx(AdminPrx &&other) noexcept
Move constructor.
Definition Admin.h:158
std::future< ObjectInfoSeq > getObjectInfosByTypeAsync(std::string_view type, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info of all the registered objects with a given type.
std::function< void()> stopServerAsync(std::string_view id, 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
Stops a server.
std::function< void()> getObjectInfosByTypeAsync(std::string_view type, std::function< void(::IceGrid::ObjectInfoSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info of all the registered objects with a given type.
ObjectInfo getObjectInfo(const ::Ice::Identity &id, const Ice::Context &context=Ice::noExplicitContext) const
Gets the object info for the object.
void instantiateServer(std::string_view application, std::string_view node, const ServerInstanceDescriptor &desc, const Ice::Context &context=Ice::noExplicitContext) const
Instantiates a server template.
std::function< void()> getAllApplicationNamesAsync(std::function< void(::Ice::StringSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets all the IceGrid applications currently registered.
AdminPrx & operator=(AdminPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:176
std::function< void()> addObjectAsync(const std::optional< Ice::ObjectPrx > &obj, 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
Adds an object to the object registry.
std::future< void > addObjectAsync(const std::optional< Ice::ObjectPrx > &obj, const Ice::Context &context=Ice::noExplicitContext) const
Adds an object to the object registry.
std::function< void()> getNodeHostnameAsync(std::string_view name, std::function< void(std::string)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Get the hostname of a node.
std::future< void > removeObjectAsync(const ::Ice::Identity &id, const Ice::Context &context=Ice::noExplicitContext) const
Removes an object from the object registry.
std::function< void()> getRegistryInfoAsync(std::string_view name, std::function< void(::IceGrid::RegistryInfo)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the registry information of an IceGrid registry.
std::function< void()> getServerInfoAsync(std::string_view id, std::function< void(::IceGrid::ServerInfo)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets information about a server.
std::function< void()> sendSignalAsync(std::string_view id, std::string_view signal, 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
Sends a signal to a server.
std::future< void > syncApplicationWithoutRestartAsync(const ApplicationDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Synchronizes a deployed application.
std::function< void()> getAllRegistryNamesAsync(std::function< void(::Ice::StringSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the names of all the IceGrid registries currently registered.
ApplicationDescriptor getDefaultApplicationDescriptor(const Ice::Context &context=Ice::noExplicitContext) const
Gets the default application descriptor.
std::future< void > instantiateServerAsync(std::string_view application, std::string_view node, const ServerInstanceDescriptor &desc, const Ice::Context &context=Ice::noExplicitContext) const
Instantiates a server template.
std::function< void()> getServerPidAsync(std::string_view id, std::function< void(std::int32_t)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the system process ID of a server.
void syncApplication(const ApplicationDescriptor &descriptor, const Ice::Context &context=Ice::noExplicitContext) const
Synchronizes a deployed application.
void removeApplication(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Removes an application from IceGrid.
std::function< void()> syncApplicationAsync(const ApplicationDescriptor &descriptor, 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
Synchronizes a deployed application.
::Ice::StringSeq getAllServerIds(const Ice::Context &context=Ice::noExplicitContext) const
Gets the IDs of all the servers registered with IceGrid.
Provides administrative access to an IceGrid deployment.
Definition Admin.h:145
std::function< void()> startUpdateAsync(std::function< void(std::int32_t)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Acquires an exclusive lock to start updating the registry applications.
std::optional< FileIteratorPrx > openNodeStdOut(std::string_view name, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a node stdout file for reading.
std::future< void > setObserversAsync(const std::optional< RegistryObserverPrx > &registryObs, const std::optional< NodeObserverPrx > &nodeObs, const std::optional< ApplicationObserverPrx > &appObs, const std::optional< AdapterObserverPrx > &adptObs, const std::optional< ObjectObserverPrx > &objObs, const Ice::Context &context=Ice::noExplicitContext) const
Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
std::function< void()> openServerStdErrAsync(std::string_view id, std::int32_t count, std::function< void(std::optional<::IceGrid::FileIteratorPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server stderr file for reading.
std::function< void()> openServerLogAsync(std::string_view id, std::string_view path, std::int32_t count, std::function< void(std::optional<::IceGrid::FileIteratorPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server log file for reading.
std::future< std::optional< FileIteratorPrx > > openNodeStdOutAsync(std::string_view name, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a node stdout file for reading.
std::optional< FileIteratorPrx > openNodeStdErr(std::string_view name, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a node stderr file for reading.
std::future< std::optional< FileIteratorPrx > > openRegistryStdErrAsync(std::string_view name, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a registry stderr file for reading.
AdminSessionPrx & operator=(const AdminSessionPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:2439
std::future< std::optional< FileIteratorPrx > > openNodeStdErrAsync(std::string_view name, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a node stderr file for reading.
std::future< void > finishUpdateAsync(const Ice::Context &context=Ice::noExplicitContext) const
Finishes updating the registry and releases the exclusive lock.
std::future< std::optional< FileIteratorPrx > > openServerStdOutAsync(std::string_view id, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server stdout file for reading.
AdminSessionPrx & operator=(AdminSessionPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:2450
std::optional< AdminPrx > getAdmin(const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the IceGrid admin object.
std::function< void()> keepAliveAsync(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
Keeps the session alive.
void setObserversByIdentity(const ::Ice::Identity &registryObs, const ::Ice::Identity &nodeObs, const ::Ice::Identity &appObs, const ::Ice::Identity &adptObs, const ::Ice::Identity &objObs, const Ice::Context &context=Ice::noExplicitContext) const
Sets the observer identities that receive notifications when the state of the registry or nodes chang...
std::optional< FileIteratorPrx > openServerLog(std::string_view id, std::string_view path, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server log file for reading.
std::future< std::optional< AdminPrx > > getAdminAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the IceGrid admin object.
void setObservers(const std::optional< RegistryObserverPrx > &registryObs, const std::optional< NodeObserverPrx > &nodeObs, const std::optional< ApplicationObserverPrx > &appObs, const std::optional< AdapterObserverPrx > &adptObs, const std::optional< ObjectObserverPrx > &objObs, const Ice::Context &context=Ice::noExplicitContext) const
Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
std::future< std::optional< FileIteratorPrx > > openServerLogAsync(std::string_view id, std::string_view path, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server log file for reading.
std::function< void()> openRegistryStdErrAsync(std::string_view name, std::int32_t count, std::function< void(std::optional<::IceGrid::FileIteratorPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Opens a registry stderr file for reading.
AdminSessionPrx(AdminSessionPrx &&other) noexcept
Move constructor.
Definition Admin.h:2432
std::future< std::string > getReplicaNameAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets the name of the registry replica hosting this session.
void keepAlive(const Ice::Context &context=Ice::noExplicitContext) const
Keeps the session alive.
AdminSessionPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Admin.h:2424
std::function< void()> openNodeStdOutAsync(std::string_view name, std::int32_t count, std::function< void(std::optional<::IceGrid::FileIteratorPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Opens a node stdout file for reading.
std::function< void()> setObserversAsync(const std::optional< RegistryObserverPrx > &registryObs, const std::optional< NodeObserverPrx > &nodeObs, const std::optional< ApplicationObserverPrx > &appObs, const std::optional< AdapterObserverPrx > &adptObs, const std::optional< ObjectObserverPrx > &objObs, 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
Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
std::function< void()> finishUpdateAsync(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
Finishes updating the registry and releases the exclusive lock.
std::future< void > setObserversByIdentityAsync(const ::Ice::Identity &registryObs, const ::Ice::Identity &nodeObs, const ::Ice::Identity &appObs, const ::Ice::Identity &adptObs, const ::Ice::Identity &objObs, const Ice::Context &context=Ice::noExplicitContext) const
Sets the observer identities that receive notifications when the state of the registry or nodes chang...
std::future< std::optional< FileIteratorPrx > > openRegistryStdOutAsync(std::string_view name, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a registry stdout file for reading.
std::optional< FileIteratorPrx > openServerStdErr(std::string_view id, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server stderr file for reading.
std::future< std::optional< FileIteratorPrx > > openServerStdErrAsync(std::string_view id, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server stderr file for reading.
std::optional< Ice::ObjectPrx > getAdminCallbackTemplate(const Ice::Context &context=Ice::noExplicitContext) const
Gets a "template" proxy for admin callback objects.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
std::string getReplicaName(const Ice::Context &context=Ice::noExplicitContext) const
Gets the name of the registry replica hosting this session.
std::function< void()> openServerStdOutAsync(std::string_view id, std::int32_t count, std::function< void(std::optional<::IceGrid::FileIteratorPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server stdout file for reading.
std::future< std::int32_t > startUpdateAsync(const Ice::Context &context=Ice::noExplicitContext) const
Acquires an exclusive lock to start updating the registry applications.
std::function< void()> openNodeStdErrAsync(std::string_view name, std::int32_t count, std::function< void(std::optional<::IceGrid::FileIteratorPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Opens a node stderr file for reading.
std::function< void()> getAdminAsync(std::function< void(std::optional<::IceGrid::AdminPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets a proxy to the IceGrid admin object.
std::function< void()> getAdminCallbackTemplateAsync(std::function< void(std::optional< Ice::ObjectPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets a "template" proxy for admin callback objects.
std::optional< FileIteratorPrx > openRegistryStdOut(std::string_view name, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a registry stdout file for reading.
std::optional< FileIteratorPrx > openServerStdOut(std::string_view id, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a server stdout file for reading.
std::function< void()> openRegistryStdOutAsync(std::string_view name, std::int32_t count, std::function< void(std::optional<::IceGrid::FileIteratorPrx >)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Opens a registry stdout file for reading.
AdminSessionPrx(const AdminSessionPrx &other) noexcept
Copy constructor.
Definition Admin.h:2428
void finishUpdate(const Ice::Context &context=Ice::noExplicitContext) const
Finishes updating the registry and releases the exclusive lock.
std::optional< FileIteratorPrx > openRegistryStdErr(std::string_view name, std::int32_t count, const Ice::Context &context=Ice::noExplicitContext) const
Opens a registry stderr file for reading.
std::function< void()> setObserversByIdentityAsync(const ::Ice::Identity &registryObs, const ::Ice::Identity &nodeObs, const ::Ice::Identity &appObs, const ::Ice::Identity &adptObs, const ::Ice::Identity &objObs, 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
Sets the observer identities that receive notifications when the state of the registry or nodes chang...
std::future< std::optional< Ice::ObjectPrx > > getAdminCallbackTemplateAsync(const Ice::Context &context=Ice::noExplicitContext) const
Gets a "template" proxy for admin callback objects.
std::future< void > keepAliveAsync(const Ice::Context &context=Ice::noExplicitContext) const
Keeps the session alive.
std::function< void()> getReplicaNameAsync(std::function< void(std::string)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Gets the name of the registry replica hosting this session.
std::int32_t startUpdate(const Ice::Context &context=Ice::noExplicitContext) const
Acquires an exclusive lock to start updating the registry applications.
Represents an administrative session between an admin tool and an IceGrid registry.
Definition Admin.h:2414
std::function< void()> applicationInitAsync(std::int32_t serial, const ApplicationInfoSeq &applications, 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 the initial application infos to the observer.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
std::future< void > applicationUpdatedAsync(std::int32_t serial, const ApplicationUpdateInfo &desc, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that an application was updated.
void applicationInit(std::int32_t serial, const ApplicationInfoSeq &applications, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial application infos to the observer.
std::future< void > applicationAddedAsync(std::int32_t serial, const ApplicationInfo &desc, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that an application was added.
std::future< void > applicationRemovedAsync(std::int32_t serial, std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that an application was removed.
std::function< void()> applicationRemovedAsync(std::int32_t serial, std::string_view name, 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
Notifies the observer that an application was removed.
ApplicationObserverPrx & operator=(const ApplicationObserverPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:1950
void applicationAdded(std::int32_t serial, const ApplicationInfo &desc, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that an application was added.
ApplicationObserverPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Admin.h:1935
std::future< void > applicationInitAsync(std::int32_t serial, const ApplicationInfoSeq &applications, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial application infos to the observer.
std::function< void()> applicationAddedAsync(std::int32_t serial, const ApplicationInfo &desc, 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
Notifies the observer that an application was added.
void applicationUpdated(std::int32_t serial, const ApplicationUpdateInfo &desc, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that an application was updated.
ApplicationObserverPrx & operator=(ApplicationObserverPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:1961
void applicationRemoved(std::int32_t serial, std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that an application was removed.
std::function< void()> applicationUpdatedAsync(std::int32_t serial, const ApplicationUpdateInfo &desc, 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
Notifies the observer that an application was updated.
ApplicationObserverPrx(ApplicationObserverPrx &&other) noexcept
Move constructor.
Definition Admin.h:1943
ApplicationObserverPrx(const ApplicationObserverPrx &other) noexcept
Copy constructor.
Definition Admin.h:1939
Monitors applications.
Definition Admin.h:1930
virtual void applicationInit(std::int32_t serial, ApplicationInfoSeq applications, const Ice::Current &current)=0
Provides the initial application infos to the observer.
virtual void applicationAdded(std::int32_t serial, ApplicationInfo desc, const Ice::Current &current)=0
Notifies the observer that an application was added.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
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.
virtual void applicationUpdated(std::int32_t serial, ApplicationUpdateInfo desc, const Ice::Current &current)=0
Notifies the observer that an application was updated.
virtual void applicationRemoved(std::int32_t serial, std::string name, const Ice::Current &current)=0
Notifies the observer that an application was removed.
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,...
ApplicationObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:4443
Monitors applications.
Definition Admin.h:4440
virtual void adapterUpdatedAsync(AdapterInfo info, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
virtual void adapterInitAsync(AdapterInfoSeq adpts, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Provides the initial list of dynamically registered adapters to the observer.
virtual void adapterRemovedAsync(std::string id, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a dynamically-registered adapter was removed.
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,...
AdapterObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:5691
virtual void adapterAddedAsync(AdapterInfo info, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a dynamically-registered adapter was added.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
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.
Monitors dynamically-registered object adapters.
Definition Admin.h:5688
virtual void getAdminAsync(std::function< void(const std::optional< AdminPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets a proxy to the IceGrid admin object.
virtual void openServerStdOutAsync(std::string id, std::int32_t count, std::function< void(const std::optional< FileIteratorPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Opens a server stdout file for reading.
virtual void openNodeStdOutAsync(std::string name, std::int32_t count, std::function< void(const std::optional< FileIteratorPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Opens a node stdout file for reading.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
virtual void openServerStdErrAsync(std::string id, std::int32_t count, std::function< void(const std::optional< FileIteratorPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Opens a server stderr file for reading.
virtual void startUpdateAsync(std::function< void(std::int32_t returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Acquires an exclusive lock to start updating the registry applications.
virtual void keepAliveAsync(std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Keeps the session alive.
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 getAdminCallbackTemplateAsync(std::function< void(const std::optional< Ice::ObjectPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets a "template" proxy for admin callback objects.
virtual void setObserversByIdentityAsync(::Ice::Identity registryObs, ::Ice::Identity nodeObs, ::Ice::Identity appObs, ::Ice::Identity adptObs, ::Ice::Identity objObs, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Sets the observer identities that receive notifications when the state of the registry or nodes chang...
virtual void openServerLogAsync(std::string id, std::string path, std::int32_t count, std::function< void(const std::optional< FileIteratorPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Opens a server log file for reading.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
virtual void setObserversAsync(std::optional< RegistryObserverPrx > registryObs, std::optional< NodeObserverPrx > nodeObs, std::optional< ApplicationObserverPrx > appObs, std::optional< AdapterObserverPrx > adptObs, std::optional< ObjectObserverPrx > objObs, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
virtual void finishUpdateAsync(std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Finishes updating the registry and releases the exclusive lock.
virtual void openRegistryStdOutAsync(std::string name, std::int32_t count, std::function< void(const std::optional< FileIteratorPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Opens a registry stdout file for reading.
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.
virtual void getReplicaNameAsync(std::function< void(std::string_view returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the name of the registry replica hosting this session.
virtual void openNodeStdErrAsync(std::string name, std::int32_t count, std::function< void(const std::optional< FileIteratorPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Opens a node stderr file for reading.
virtual void openRegistryStdErrAsync(std::string name, std::int32_t count, std::function< void(const std::optional< FileIteratorPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Opens a registry stderr file for reading.
AdminSessionPrx ProxyType
The associated proxy type.
Definition Admin.h:5823
Represents an administrative session between an admin tool and an IceGrid registry.
Definition Admin.h:5820
virtual void getRegistryAdminAsync(std::string name, std::function< void(const std::optional< Ice::ObjectPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets a proxy to the admin object of an IceGrid registry.
virtual void addObjectAsync(std::optional< Ice::ObjectPrx > obj, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Adds an object to the object registry.
virtual void getAdapterInfoAsync(std::string id, std::function< void(const AdapterInfoSeq &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets adapter information for the replica group or adapter with the given ID.
virtual void getServerInfoAsync(std::string id, std::function< void(const ServerInfo &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets information about a server.
virtual void startServerAsync(std::string id, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Starts a server and waits for its activation.
virtual void sendSignalAsync(std::string id, std::string signal, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Sends a signal to a server.
virtual void getObjectInfoAsync(::Ice::Identity id, std::function< void(const ObjectInfo &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the object info for the object.
virtual void getNodeInfoAsync(std::string name, std::function< void(const NodeInfo &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the node information of a node.
virtual void updateApplicationAsync(ApplicationUpdateDescriptor descriptor, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Updates a deployed application.
virtual void getServerAdminCategoryAsync(std::function< void(std::string_view returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the category for server admin objects.
virtual void getServerAdminAsync(std::string id, std::function< void(const std::optional< Ice::ObjectPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets a proxy to the admin object of a server.
virtual void getNodeAdminAsync(std::string name, std::function< void(const std::optional< Ice::ObjectPrx > &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets a proxy to the admin object of an IceGrid node.
virtual void getRegistryInfoAsync(std::string name, std::function< void(const RegistryInfo &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the registry information of an IceGrid registry.
virtual void syncApplicationWithoutRestartAsync(ApplicationDescriptor descriptor, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Synchronizes a deployed application.
virtual void addObjectWithTypeAsync(std::optional< Ice::ObjectPrx > obj, std::string type, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Adds an object to the object registry and explicitly specifies its type.
virtual void isServerEnabledAsync(std::string id, std::function< void(bool returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Checks if the server is enabled or disabled.
virtual void syncApplicationAsync(ApplicationDescriptor descriptor, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Synchronizes a deployed application.
virtual void updateApplicationWithoutRestartAsync(ApplicationUpdateDescriptor descriptor, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Updates a deployed application.
virtual void getApplicationInfoAsync(std::string name, std::function< void(const ApplicationInfo &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets an application descriptor.
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.
virtual void getDefaultApplicationDescriptorAsync(std::function< void(const ApplicationDescriptor &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the default application descriptor.
virtual void addApplicationAsync(ApplicationDescriptor descriptor, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Adds an application to IceGrid.
virtual void getNodeLoadAsync(std::string name, std::function< void(const LoadInfo &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the load averages of a node.
virtual void getServerPidAsync(std::string id, std::function< void(std::int32_t returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the system process ID of a server.
virtual void updateObjectAsync(std::optional< Ice::ObjectPrx > obj, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Updates an object in the object registry.
AdminPrx ProxyType
The associated proxy type.
Definition Admin.h:4833
virtual void removeAdapterAsync(std::string id, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Removes the adapter with the given ID.
virtual void shutdownRegistryAsync(std::string name, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Shuts down an IceGrid registry.
virtual void getServerStateAsync(std::string id, std::function< void(ServerState returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the state of a server.
virtual void enableServerAsync(std::string id, bool enabled, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Enables or disables a server.
virtual void pingRegistryAsync(std::string name, std::function< void(bool returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Pings an IceGrid registry to see if it is active.
virtual void shutdownAsync(std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Shuts down the IceGrid registry.
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 pingNodeAsync(std::string name, std::function< void(bool returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Pings an IceGrid node to see if it is active.
virtual void getAllRegistryNamesAsync(std::function< void(const ::Ice::StringSeq &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the names of all the IceGrid registries currently registered.
virtual void getAllApplicationNamesAsync(std::function< void(const ::Ice::StringSeq &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets all the IceGrid applications currently registered.
virtual void getAllAdapterIdsAsync(std::function< void(const ::Ice::StringSeq &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the IDs of all adapters registered with IceGrid.
virtual void getNodeHostnameAsync(std::string name, std::function< void(std::string_view returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Get the hostname of a node.
virtual void getAllNodeNamesAsync(std::function< void(const ::Ice::StringSeq &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the names of all IceGrid nodes currently registered.
virtual void shutdownNodeAsync(std::string name, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Shuts down an IceGrid node.
virtual void getNodeProcessorSocketCountAsync(std::string name, std::function< void(std::int32_t returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
virtual void getAllObjectInfosAsync(std::string expr, std::function< void(const ObjectInfoSeq &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the object info of all the registered objects whose stringified identities match the given expre...
virtual void removeObjectAsync(::Ice::Identity id, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Removes an object from the object registry.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
virtual void instantiateServerAsync(std::string application, std::string node, ServerInstanceDescriptor desc, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Instantiates a server template.
virtual void getAllServerIdsAsync(std::function< void(const ::Ice::StringSeq &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the IDs of all the servers registered with IceGrid.
virtual void getObjectInfosByTypeAsync(std::string type, std::function< void(const ObjectInfoSeq &returnValue)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current) const =0
Gets the object info of all the registered objects with a given type.
virtual void removeApplicationAsync(std::string name, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Removes an application from IceGrid.
virtual void stopServerAsync(std::string id, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Stops a server.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
Provides administrative access to an IceGrid deployment.
Definition Admin.h:4830
virtual void applicationUpdatedAsync(std::int32_t serial, ApplicationUpdateInfo desc, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that an application was updated.
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,...
virtual void applicationInitAsync(std::int32_t serial, ApplicationInfoSeq applications, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Provides the initial application infos to the observer.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
virtual void applicationAddedAsync(std::int32_t serial, ApplicationInfo desc, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that an application was added.
virtual void applicationRemovedAsync(std::int32_t serial, std::string name, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that an application was removed.
ApplicationObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:5620
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.
Monitors applications.
Definition Admin.h:5617
FileIteratorPrx ProxyType
The associated proxy type.
Definition Admin.h:5435
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.
virtual void destroyAsync(std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Destroys the iterator.
virtual void readAsync(std::int32_t size, std::function< void(bool returnValue, const ::Ice::StringSeq &lines)> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Read lines from the log file.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
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,...
Iterates over an IceGrid log file.
Definition Admin.h:5432
virtual void nodeInitAsync(NodeDynamicInfoSeq nodes, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Provides the initial state of the nodes to the observer.
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,...
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.
virtual void nodeUpAsync(NodeDynamicInfo node, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a node came up.
virtual void updateServerAsync(std::string node, ServerDynamicInfo updatedInfo, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that the state of a server changed.
virtual void nodeDownAsync(std::string name, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a node went down.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
virtual void updateAdapterAsync(std::string node, AdapterDynamicInfo updatedInfo, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that the state of an object adapter changed.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
NodeObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:5542
Monitors changes to the state of the nodes.
Definition Admin.h:5539
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
virtual void objectAddedAsync(ObjectInfo info, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a well-known object was added.
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 objectRemovedAsync(::Ice::Identity id, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a well-known object was removed.
ObjectObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:5756
virtual void objectInitAsync(ObjectInfoSeq objects, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Provides the initial list of well-known objects to the observer.
virtual void objectUpdatedAsync(ObjectInfo info, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a well-known object was updated.
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.
Monitors well-known objects that are added, updated or removed using AdminPrx.
Definition Admin.h:5753
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
virtual void registryUpAsync(RegistryInfo registryReplica, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a registry replica came up.
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.
virtual void registryInitAsync(RegistryInfoSeq registries, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Provides the initial state of the registries to the observer.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
RegistryObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:5486
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 registryDownAsync(std::string name, std::function< void()> response, std::function< void(std::exception_ptr)> exception, const Ice::Current &current)=0
Notifies the observer that a registry replica went down.
Monitors changes to the state of the registries.
Definition Admin.h:5483
Represents a session object used by IceGrid clients to allocate and release objects.
Definition Session.h:360
BadSignalException(const BadSignalException &) noexcept=default
Copy constructor.
void ice_throw() const override
Throws this exception.
std::string reason
The details of the unknown signal.
Definition Admin.h:3445
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3430
const char * ice_id() const noexcept override
Returns the type ID of this exception.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice exception.
BadSignalException() noexcept=default
Default constructor.
void ice_throw() const override
Throws this exception.
const char * ice_id() const noexcept override
Returns the type ID of this exception.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice exception.
std::string reason
The reason for the failure.
Definition Admin.h:3297
DeploymentException(const DeploymentException &) noexcept=default
Copy constructor.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
DeploymentException() noexcept=default
Default constructor.
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3282
std::future< std::tuple< bool, ::Ice::StringSeq > > readAsync(std::int32_t size, const Ice::Context &context=Ice::noExplicitContext) const
Read lines from the log file.
FileIteratorPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Admin.h:1493
FileIteratorPrx(FileIteratorPrx &&other) noexcept
Move constructor.
Definition Admin.h:1501
std::function< void()> readAsync(std::int32_t size, std::function< void(bool, ::Ice::StringSeq)> response, std::function< void(std::exception_ptr)> exception=nullptr, std::function< void(bool)> sent=nullptr, const Ice::Context &context=Ice::noExplicitContext) const
Read lines from the log file.
bool read(std::int32_t size, ::Ice::StringSeq &lines, const Ice::Context &context=Ice::noExplicitContext) const
Read lines from the log file.
std::future< void > destroyAsync(const Ice::Context &context=Ice::noExplicitContext) const
Destroys the iterator.
FileIteratorPrx & operator=(FileIteratorPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:1519
FileIteratorPrx(const FileIteratorPrx &other) noexcept
Copy constructor.
Definition Admin.h:1497
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
FileIteratorPrx & operator=(const FileIteratorPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:1508
void destroy(const Ice::Context &context=Ice::noExplicitContext) const
Destroys the iterator.
std::function< void()> destroyAsync(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
Destroys the iterator.
Iterates over an IceGrid log file.
Definition Admin.h:1488
std::string reason
The reason for the failure.
Definition Admin.h:3637
void ice_throw() const override
Throws this exception.
const char * ice_id() const noexcept override
Returns the type ID of this exception.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
FileNotAvailableException() noexcept=default
Default constructor.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice exception.
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3622
FileNotAvailableException(const FileNotAvailableException &) noexcept=default
Copy constructor.
NodeObserverPrx & operator=(const NodeObserverPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:1763
std::future< void > updateServerAsync(std::string_view node, const ServerDynamicInfo &updatedInfo, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that the state of a server changed.
std::function< void()> nodeUpAsync(const NodeDynamicInfo &node, 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
Notifies the observer that a node came up.
std::function< void()> updateAdapterAsync(std::string_view node, const AdapterDynamicInfo &updatedInfo, 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
Notifies the observer that the state of an object adapter changed.
NodeObserverPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Admin.h:1748
std::future< void > nodeInitAsync(const NodeDynamicInfoSeq &nodes, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial state of the nodes to the observer.
void nodeInit(const NodeDynamicInfoSeq &nodes, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial state of the nodes to the observer.
void nodeUp(const NodeDynamicInfo &node, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a node came up.
std::future< void > nodeDownAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a node went down.
std::future< void > nodeUpAsync(const NodeDynamicInfo &node, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a node came up.
NodeObserverPrx & operator=(NodeObserverPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:1774
std::function< void()> nodeInitAsync(const NodeDynamicInfoSeq &nodes, 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 the initial state of the nodes to the observer.
std::future< void > updateAdapterAsync(std::string_view node, const AdapterDynamicInfo &updatedInfo, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that the state of an object adapter changed.
void updateAdapter(std::string_view node, const AdapterDynamicInfo &updatedInfo, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that the state of an object adapter changed.
NodeObserverPrx(const NodeObserverPrx &other) noexcept
Copy constructor.
Definition Admin.h:1752
std::function< void()> updateServerAsync(std::string_view node, const ServerDynamicInfo &updatedInfo, 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
Notifies the observer that the state of a server changed.
std::function< void()> nodeDownAsync(std::string_view name, 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
Notifies the observer that a node went down.
void nodeDown(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a node went down.
NodeObserverPrx(NodeObserverPrx &&other) noexcept
Move constructor.
Definition Admin.h:1756
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
void updateServer(std::string_view node, const ServerDynamicInfo &updatedInfo, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that the state of a server changed.
Monitors changes to the state of the nodes.
Definition Admin.h:1743
virtual void nodeUp(NodeDynamicInfo node, const Ice::Current &current)=0
Notifies the observer that a node came up.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
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 nodeInit(NodeDynamicInfoSeq nodes, const Ice::Current &current)=0
Provides the initial state of the nodes to the observer.
NodeObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:4375
virtual void nodeDown(std::string name, const Ice::Current &current)=0
Notifies the observer that a node went down.
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.
virtual void updateAdapter(std::string node, AdapterDynamicInfo updatedInfo, const Ice::Current &current)=0
Notifies the observer that the state of an object adapter changed.
virtual void updateServer(std::string node, ServerDynamicInfo updatedInfo, const Ice::Current &current)=0
Notifies the observer that the state of a server changed.
Monitors changes to the state of the nodes.
Definition Admin.h:4372
std::string name
The name of the node that is not reachable.
Definition Admin.h:3345
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
const char * ice_id() const noexcept override
Returns the type ID of this exception.
NodeUnreachableException(const NodeUnreachableException &) noexcept=default
Copy constructor.
std::string reason
The reason why the node couldn't be reached.
Definition Admin.h:3348
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice exception.
NodeUnreachableException() noexcept=default
Default constructor.
void ice_throw() const override
Throws this exception.
std::tuple< const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3330
std::function< void()> objectInitAsync(const ObjectInfoSeq &objects, 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 the initial list of well-known objects to the observer.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
void objectRemoved(const ::Ice::Identity &id, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a well-known object was removed.
ObjectObserverPrx & operator=(const ObjectObserverPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:2276
std::function< void()> objectRemovedAsync(const ::Ice::Identity &id, 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
Notifies the observer that a well-known object was removed.
void objectAdded(const ObjectInfo &info, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a well-known object was added.
ObjectObserverPrx(ObjectObserverPrx &&other) noexcept
Move constructor.
Definition Admin.h:2269
std::future< void > objectRemovedAsync(const ::Ice::Identity &id, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a well-known object was removed.
std::future< void > objectInitAsync(const ObjectInfoSeq &objects, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial list of well-known objects to the observer.
ObjectObserverPrx & operator=(ObjectObserverPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:2287
std::future< void > objectUpdatedAsync(const ObjectInfo &info, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a well-known object was updated.
std::future< void > objectAddedAsync(const ObjectInfo &info, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a well-known object was added.
std::function< void()> objectUpdatedAsync(const ObjectInfo &info, 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
Notifies the observer that a well-known object was updated.
std::function< void()> objectAddedAsync(const ObjectInfo &info, 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
Notifies the observer that a well-known object was added.
ObjectObserverPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Admin.h:2261
void objectUpdated(const ObjectInfo &info, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a well-known object was updated.
ObjectObserverPrx(const ObjectObserverPrx &other) noexcept
Copy constructor.
Definition Admin.h:2265
void objectInit(const ObjectInfoSeq &objects, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial list of well-known objects to the observer.
Monitors well-known objects that are added, updated or removed using AdminPrx.
Definition Admin.h:2256
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.
virtual void objectInit(ObjectInfoSeq objects, const Ice::Current &current)=0
Provides the initial list of well-known objects to the observer.
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 objectRemoved(::Ice::Identity id, const Ice::Current &current)=0
Notifies the observer that a well-known object was removed.
virtual void objectUpdated(ObjectInfo info, const Ice::Current &current)=0
Notifies the observer that a well-known object was updated.
ObjectObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:4563
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
virtual void objectAdded(ObjectInfo info, const Ice::Current &current)=0
Notifies the observer that a well-known object was added.
Monitors well-known objects that are added, updated or removed using AdminPrx.
Definition Admin.h:4560
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
ObserverAlreadyRegisteredException() noexcept=default
Default constructor.
const char * ice_id() const noexcept override
Returns the type ID of this exception.
std::tuple< const ::Ice::Identity & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3570
ObserverAlreadyRegisteredException(const ObserverAlreadyRegisteredException &) noexcept=default
Copy constructor.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice exception.
void ice_throw() const override
Throws this exception.
PermissionDeniedException() noexcept=default
Default constructor.
const char * ice_id() const noexcept override
Returns the type ID of this exception.
void ice_throw() const override
Throws this exception.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice exception.
PermissionDeniedException(const PermissionDeniedException &) noexcept=default
Copy constructor.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
std::string reason
The reason why permission was denied.
Definition Admin.h:3537
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3522
std::future< void > registryUpAsync(const RegistryInfo &registryReplica, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a registry replica came up.
RegistryObserverPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
Definition Admin.h:1615
std::future< void > registryDownAsync(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a registry replica went down.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
void registryDown(std::string_view name, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a registry replica went down.
RegistryObserverPrx(const RegistryObserverPrx &other) noexcept
Copy constructor.
Definition Admin.h:1619
void registryInit(const RegistryInfoSeq &registries, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial state of the registries to the observer.
std::function< void()> registryInitAsync(const RegistryInfoSeq &registries, 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 the initial state of the registries to the observer.
RegistryObserverPrx & operator=(RegistryObserverPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:1641
std::future< void > registryInitAsync(const RegistryInfoSeq &registries, const Ice::Context &context=Ice::noExplicitContext) const
Provides the initial state of the registries to the observer.
std::function< void()> registryDownAsync(std::string_view name, 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
Notifies the observer that a registry replica went down.
std::function< void()> registryUpAsync(const RegistryInfo &registryReplica, 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
Notifies the observer that a registry replica came up.
void registryUp(const RegistryInfo &registryReplica, const Ice::Context &context=Ice::noExplicitContext) const
Notifies the observer that a registry replica came up.
RegistryObserverPrx & operator=(const RegistryObserverPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:1630
RegistryObserverPrx(RegistryObserverPrx &&other) noexcept
Move constructor.
Definition Admin.h:1623
Monitors changes to the state of the registries.
Definition Admin.h:1610
RegistryObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:4325
virtual void registryInit(RegistryInfoSeq registries, const Ice::Current &current)=0
Provides the initial state of the registries to the observer.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
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.
virtual void registryUp(RegistryInfo registryReplica, const Ice::Current &current)=0
Notifies the observer that a registry replica came up.
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 registryDown(std::string name, const Ice::Current &current)=0
Notifies the observer that a registry replica went down.
Monitors changes to the state of the registries.
Definition Admin.h:4322
Represents the main entry point into the IceGrid registry service.
Definition Registry.h:284
const char * ice_id() const noexcept override
Returns the type ID of this exception.
void ice_throw() const override
Throws this exception.
RegistryUnreachableException() noexcept=default
Default constructor.
RegistryUnreachableException(const RegistryUnreachableException &) noexcept=default
Copy constructor.
std::string name
The name of the registry that is not reachable.
Definition Admin.h:3396
std::tuple< const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3381
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
std::string reason
The reason why the registry couldn't be reached.
Definition Admin.h:3399
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice exception.
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:232
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:45
Abstract base class for all exceptions defined in Slice.
Communicate through firewalls and across NATs.
std::shared_ptr< AdminSession > AdminSessionPtr
A shared pointer to an AdminSession.
Definition Admin.h:4821
std::shared_ptr< ApplicationObserver > ApplicationObserverPtr
A shared pointer to an ApplicationObserver.
Definition Admin.h:4497
std::ostream & operator<<(std::ostream &os, ServerState value)
Outputs the enumerator name or underlying value of a ServerState to a stream.
std::vector< AdapterDynamicInfo > AdapterDynamicInfoSeq
A sequence of AdapterDynamicInfo.
Definition Admin.h:119
std::shared_ptr< AdapterObserver > AdapterObserverPtr
A shared pointer to an AdapterObserver.
Definition Admin.h:4554
std::vector< AdapterInfo > AdapterInfoSeq
A sequence of AdapterInfo.
Definition Admin.h:87
std::vector< NodeDynamicInfo > NodeDynamicInfoSeq
A sequence of NodeDynamicInfo.
Definition Admin.h:126
ServerState
Represents the state of a server.
Definition Admin.h:46
@ Deactivating
The server is being deactivated.
Definition Admin.h:61
@ Inactive
The server is not running.
Definition Admin.h:48
@ Active
The server is running.
Definition Admin.h:58
@ Destroying
The server is being destroyed.
Definition Admin.h:64
@ ActivationTimedOut
The server activation timed out.
Definition Admin.h:55
@ Destroyed
The server is destroyed.
Definition Admin.h:67
@ Activating
The server is being activated and will change to the active state when the registered server object a...
Definition Admin.h:52
std::shared_ptr< FileIterator > FileIteratorPtr
A shared pointer to a FileIterator.
Definition Admin.h:4316
std::vector< RegistryInfo > RegistryInfoSeq
A sequence of RegistryInfo.
Definition Admin.h:96
std::shared_ptr< AsyncFileIterator > AsyncFileIteratorPtr
A shared pointer to an AsyncFileIterator.
Definition Admin.h:5477
std::shared_ptr< AsyncApplicationObserver > AsyncApplicationObserverPtr
A shared pointer to an AsyncApplicationObserver.
Definition Admin.h:5682
std::shared_ptr< AsyncAdmin > AsyncAdminPtr
A shared pointer to an AsyncAdmin.
Definition Admin.h:5426
std::shared_ptr< ServerDescriptor > ServerDescriptorPtr
A shared pointer to a ServerDescriptor.
Definition Descriptor.h:78
std::shared_ptr< RegistryObserver > RegistryObserverPtr
A shared pointer to a RegistryObserver.
Definition Admin.h:4366
std::shared_ptr< AsyncNodeObserver > AsyncNodeObserverPtr
A shared pointer to an AsyncNodeObserver.
Definition Admin.h:5611
std::map< std::string, std::optional< Ice::ObjectPrx > > StringObjectProxyDict
A dictionary of string to proxies.
Definition Admin.h:77
std::shared_ptr< NodeObserver > NodeObserverPtr
A shared pointer to a NodeObserver.
Definition Admin.h:4434
std::shared_ptr< Admin > AdminPtr
A shared pointer to an Admin.
Definition Admin.h:4269
std::shared_ptr< ObjectObserver > ObjectObserverPtr
A shared pointer to an ObjectObserver.
Definition Admin.h:4612
std::shared_ptr< AsyncRegistryObserver > AsyncRegistryObserverPtr
A shared pointer to an AsyncRegistryObserver.
Definition Admin.h:5533
std::shared_ptr< AsyncObjectObserver > AsyncObjectObserverPtr
A shared pointer to an AsyncObjectObserver.
Definition Admin.h:5813
std::vector< ServerDynamicInfo > ServerDynamicInfoSeq
A sequence of ServerDynamicInfo.
Definition Admin.h:114
std::shared_ptr< AsyncAdapterObserver > AsyncAdapterObserverPtr
A shared pointer to an AsyncAdapterObserver.
Definition Admin.h:5747
std::vector< ObjectInfo > ObjectInfoSeq
A sequence of ObjectInfo.
Definition Admin.h:82
std::vector< ApplicationInfo > ApplicationInfoSeq
A sequence of ApplicationInfo.
Definition Admin.h:103
std::shared_ptr< AsyncAdminSession > AsyncAdminSessionPtr
A shared pointer to an AsyncAdminSession.
Definition Admin.h:6052
Deploy and manage Ice servers.
Definition Admin.h:40
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::vector< std::string > StringSeq
A sequence of strings.
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
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::tuple< const std::string &, const std::optional< Ice::ObjectPrx > & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3695
std::optional< Ice::ObjectPrx > proxy
The direct proxy containing the adapter endpoints. This proxy is never null.
Definition Admin.h:3691
std::string id
The id of the adapter.
Definition Admin.h:3688
Dynamic information about the state of an adapter.
Definition Admin.h:3686
std::string replicaGroupId
The replica group ID of the object adapter, or empty if the adapter doesn't belong to a replica group...
Definition Admin.h:3012
std::string id
The ID of the adapter.
Definition Admin.h:3006
std::tuple< const std::string &, const std::optional< Ice::ObjectPrx > &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3016
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::optional< Ice::ObjectPrx > proxy
A dummy direct proxy that contains the adapter endpoints.
Definition Admin.h:3009
Information about an adapter registered with the IceGrid registry.
Definition Admin.h:3004
Describes an application.
std::int64_t updateTime
The last update time.
Definition Admin.h:3197
std::int64_t createTime
The creation time.
Definition Admin.h:3191
std::string updateUser
The user who updated the application.
Definition Admin.h:3200
std::string createUser
The user who created the application.
Definition Admin.h:3194
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
::IceGrid::ApplicationDescriptor descriptor
The application descriptor.
Definition Admin.h:3206
std::tuple< const std::string &, const std::int64_t &, const std::string &, const std::int64_t &, const std::string &, const std::int32_t &, const ::IceGrid::ApplicationDescriptor & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3210
std::string uuid
Unique application identifier.
Definition Admin.h:3188
std::int32_t revision
The application revision number.
Definition Admin.h:3203
Information about an IceGrid application.
Definition Admin.h:3186
An application update descriptor to describe the updates to apply to a deployed application.
::IceGrid::ApplicationUpdateDescriptor descriptor
The update descriptor.
Definition Admin.h:3241
std::int32_t revision
The application revision number.
Definition Admin.h:3238
std::tuple< const std::int64_t &, const std::string &, const std::int32_t &, const ::IceGrid::ApplicationUpdateDescriptor & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3245
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::int64_t updateTime
The update time.
Definition Admin.h:3232
std::string updateUser
The user who updated the application.
Definition Admin.h:3235
Information about updates to an IceGrid application.
Definition Admin.h:3230
float avg5
The load average over the past 5 minutes.
Definition Admin.h:3159
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::tuple< const float &, const float &, const float & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3166
float avg15
The load average over the past 15 minutes.
Definition Admin.h:3162
float avg1
The load average over the past minute.
Definition Admin.h:3156
Information about the load of a node.
Definition Admin.h:3154
::IceGrid::NodeInfo info
Some static information about the node.
Definition Admin.h:3717
::IceGrid::AdapterDynamicInfoSeq adapters
The dynamic information of the adapters deployed on this node.
Definition Admin.h:3723
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::tuple< const ::IceGrid::NodeInfo &, const ::IceGrid::ServerDynamicInfoSeq &, const ::IceGrid::AdapterDynamicInfoSeq & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3727
::IceGrid::ServerDynamicInfoSeq servers
The dynamic information of the servers deployed on this node.
Definition Admin.h:3720
Dynamic information about the state of a node.
Definition Admin.h:3715
std::string release
The operation system release level.
Definition Admin.h:3088
std::tuple< const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, const std::int32_t &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3105
std::string machine
The machine hardware type.
Definition Admin.h:3094
std::string hostname
The network name of the host running this node.
Definition Admin.h:3085
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::string os
The operating system name.
Definition Admin.h:3082
std::string version
The operation system version.
Definition Admin.h:3091
std::string name
The name of the node.
Definition Admin.h:3079
std::int32_t nProcessors
The number of processor threads on the node.
Definition Admin.h:3098
std::string dataDir
The path to the node data directory.
Definition Admin.h:3101
Information about an IceGrid node.
Definition Admin.h:3077
std::tuple< const std::optional< Ice::ObjectPrx > &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:2984
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::string type
The type of the object.
Definition Admin.h:2980
std::optional< Ice::ObjectPrx > proxy
The proxy of the object.
Definition Admin.h:2977
Information about an Ice well-known object.
Definition Admin.h:2975
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::tuple< const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3134
std::string name
The name of the registry.
Definition Admin.h:3127
std::string hostname
The network name of the host running this registry.
Definition Admin.h:3130
Information about an IceGrid registry replica.
Definition Admin.h:3125
::IceGrid::ServerState state
The state of the server.
Definition Admin.h:3656
std::string id
The ID of the server.
Definition Admin.h:3653
std::int32_t pid
The process ID of the server.
Definition Admin.h:3659
std::tuple< const std::string &, const ::IceGrid::ServerState &, const std::int32_t &, const bool & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3666
bool enabled
Indicates whether the server is enabled.
Definition Admin.h:3662
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
Dynamic information about the state of a server.
Definition Admin.h:3651
::IceGrid::ServerDescriptorPtr descriptor
The server descriptor.
Definition Admin.h:3050
std::string application
The application to which this server belongs.
Definition Admin.h:3038
std::string uuid
The application UUID.
Definition Admin.h:3041
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::tuple< const std::string &, const std::string &, const std::int32_t &, const std::string &, const ::IceGrid::ServerDescriptorPtr &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Definition Admin.h:3057
std::string sessionId
The ID of the session which allocated the server.
Definition Admin.h:3053
std::string node
The IceGrid node where this server is deployed.
Definition Admin.h:3047
std::int32_t revision
The application revision.
Definition Admin.h:3044
Information about a server managed by an IceGrid node.
Definition Admin.h:3036
Describes a template instantiation that creates a server.
Definition Descriptor.h:639
Provides information about an incoming request being dispatched.
Definition Current.h:18
Represents the identity of an Ice object.
Definition Identity.h:47