Ice 3.8
C++ API Reference
Loading...
Searching...
No Matches
Admin.h
1// Copyright (c) ZeroC, Inc.
2
3// slice2cpp version 3.8.0-alpha.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 != 30850
19# error Ice version mismatch: an exact match is required for beta generated code
20# endif
21#endif
22
23#ifndef ICEGRID_API
24# if defined(ICEGRID_API_EXPORTS)
25# define ICEGRID_API ICE_DECLSPEC_EXPORT
26# else
27# define ICEGRID_API ICE_DECLSPEC_IMPORT
28# endif
29#endif
30
31// NOLINTBEGIN(modernize-concat-nested-namespaces)
32
33namespace IceGrid
34{
35 class RegistryPrx;
36
37 /// Represents the state of a server.
38 /// @remarks The Slice compiler generated this enum class from Slice enumeration `::IceGrid::ServerState`.
39 enum class ServerState : std::uint8_t
40 {
41 /// The server is not running.
43
44 /// The server is being activated and will change to the active state when the registered server object adapters
45 /// are activated or to the activation timed out state if the activation timeout expires.
47
48 /// The server activation timed out.
50
51 /// The server is running.
53
54 /// The server is being deactivated.
56
57 /// The server is being destroyed.
59
60 /// The server is destroyed.
62 };
63
64 /// Outputs the enumerator name or underlying value of a ServerState to a stream.
65 /// @param os The output stream.
66 /// @param value The value to output.
67 /// @return The output stream.
68 ICEGRID_API std::ostream& operator<<(std::ostream& os, ServerState value);
69
70 /// A dictionary of string to proxies.
71 using StringObjectProxyDict = std::map<std::string, std::optional<Ice::ObjectPrx>>;
72
73 struct ObjectInfo;
74
75 /// A sequence of ObjectInfo.
76 using ObjectInfoSeq = std::vector<ObjectInfo>;
77
78 struct AdapterInfo;
79
80 /// A sequence of AdapterInfo.
81 using AdapterInfoSeq = std::vector<AdapterInfo>;
82
83 struct ServerInfo;
84
85 struct NodeInfo;
86
87 struct RegistryInfo;
88
89 /// A sequence of RegistryInfo.
90 using RegistryInfoSeq = std::vector<RegistryInfo>;
91
92 struct LoadInfo;
93
94 struct ApplicationInfo;
95
96 /// A sequence of ApplicationInfo.
97 using ApplicationInfoSeq = std::vector<ApplicationInfo>;
98
100
101 class AdminPrx;
102
103 class FileIteratorPrx;
104
105 struct ServerDynamicInfo;
106
107 /// A sequence of ServerDynamicInfo.
108 using ServerDynamicInfoSeq = std::vector<ServerDynamicInfo>;
109
110 struct AdapterDynamicInfo;
111
112 /// A sequence of AdapterDynamicInfo.
113 using AdapterDynamicInfoSeq = std::vector<AdapterDynamicInfo>;
114
115 struct NodeDynamicInfo;
116
118
119 /// A sequence of NodeDynamicInfo.
120 using NodeDynamicInfoSeq = std::vector<NodeDynamicInfo>;
121
122 class NodeObserverPrx;
123
125
126 class AdapterObserverPrx;
127
128 class ObjectObserverPrx;
129
130 class AdminSessionPrx;
131}
132
133namespace IceGrid
134{
135 /// Provides administrative access to an IceGrid deployment.
136 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::Admin`.
137 /// @headerfile IceGrid/IceGrid.h
138 class ICEGRID_API AdminPrx : public Ice::Proxy<AdminPrx, Ice::ObjectPrx>
139 {
140 public:
141 /// Constructs a proxy from a Communicator and a proxy string.
142 /// @param communicator The communicator of the new proxy.
143 /// @param proxyString The proxy string to parse.
144 AdminPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
145
146 /// Copy constructor. Constructs with a copy of the contents of @p other.
147 /// @param other The proxy to copy from.
148 AdminPrx(const AdminPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
149
150 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
151 /// @param other The proxy to move from.
152 AdminPrx(AdminPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
153
154 ~AdminPrx() override;
155
156 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
157 /// @param rhs The proxy to copy from.
158 /// @return A reference to this proxy.
159 AdminPrx& operator=(const AdminPrx& rhs) noexcept
160 {
161 if (this != &rhs)
162 {
164 }
165 return *this;
166 }
167
168 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
169 /// @param rhs The proxy to move from.
170 AdminPrx& operator=(AdminPrx&& rhs) noexcept
171 {
172 if (this != &rhs)
173 {
174 Ice::ObjectPrx::operator=(std::move(rhs));
175 }
176 return *this;
177 }
178
179 /// Adds an application to IceGrid.
180 /// @param descriptor The application descriptor.
181 /// @param context The request context.
182 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
183 /// session is holding the lock.
184 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
185 void addApplication(const ApplicationDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
186
187 /// Adds an application to IceGrid.
188 /// @param descriptor The application descriptor.
189 /// @param context The request context.
190 /// @return A future that becomes available when the invocation completes.
191 [[nodiscard]] std::future<void> addApplicationAsync(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 response The response callback.
196 /// @param exception The exception callback.
197 /// @param sent The sent callback.
198 /// @param context The request context.
199 /// @return A function that can be called to cancel the invocation locally.
200 // NOLINTNEXTLINE(modernize-use-nodiscard)
201 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;
202
203 /// @private
204 void _iceI_addApplication(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationDescriptor&, const Ice::Context&) const;
205
206 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
207 /// @param descriptor The new application descriptor.
208 /// @param context The request context.
209 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
210 /// session is holding the lock.
211 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
212 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
213 void syncApplication(const ApplicationDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
214
215 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
216 /// @param descriptor The new application descriptor.
217 /// @param context The request context.
218 /// @return A future that becomes available when the invocation completes.
219 [[nodiscard]] std::future<void> syncApplicationAsync(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 response The response callback.
224 /// @param exception The exception callback.
225 /// @param sent The sent callback.
226 /// @param context The request context.
227 /// @return A function that can be called to cancel the invocation locally.
228 // NOLINTNEXTLINE(modernize-use-nodiscard)
229 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;
230
231 /// @private
232 void _iceI_syncApplication(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationDescriptor&, const Ice::Context&) const;
233
234 /// Updates a deployed application.
235 /// @param descriptor The update descriptor.
236 /// @param context The request context.
237 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
238 /// session is holding the lock.
239 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
240 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
242
243 /// Updates a deployed application.
244 /// @param descriptor The update descriptor.
245 /// @param context The request context.
246 /// @return A future that becomes available when the invocation completes.
247 [[nodiscard]] std::future<void> updateApplicationAsync(const ApplicationUpdateDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
248
249 /// Updates a deployed application.
250 /// @param descriptor The update descriptor.
251 /// @param response The response callback.
252 /// @param exception The exception callback.
253 /// @param sent The sent callback.
254 /// @param context The request context.
255 /// @return A function that can be called to cancel the invocation locally.
256 // NOLINTNEXTLINE(modernize-use-nodiscard)
257 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;
258
259 /// @private
260 void _iceI_updateApplication(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationUpdateDescriptor&, const Ice::Context&) const;
261
262 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
263 /// only if no server restarts are necessary for the update of the application. If some servers need to be
264 /// restarted, the synchronization is rejected with a DeploymentException.
265 /// @param descriptor The application descriptor.
266 /// @param context The request context.
267 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
268 /// session is holding the lock.
269 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
270 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
272
273 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
274 /// only if no server restarts are necessary for the update of the application. If some servers need to be
275 /// restarted, the synchronization is rejected with a DeploymentException.
276 /// @param descriptor The application descriptor.
277 /// @param context The request context.
278 /// @return A future that becomes available when the invocation completes.
279 [[nodiscard]] std::future<void> syncApplicationWithoutRestartAsync(const ApplicationDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
280
281 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
282 /// only if no server restarts are necessary for the update of the application. If some servers need to be
283 /// restarted, the synchronization is rejected with a DeploymentException.
284 /// @param descriptor The application descriptor.
285 /// @param response The response callback.
286 /// @param exception The exception callback.
287 /// @param sent The sent callback.
288 /// @param context The request context.
289 /// @return A function that can be called to cancel the invocation locally.
290 // NOLINTNEXTLINE(modernize-use-nodiscard)
291 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;
292
293 /// @private
294 void _iceI_syncApplicationWithoutRestart(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationDescriptor&, const Ice::Context&) const;
295
296 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
297 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
298 /// DeploymentException.
299 /// @param descriptor The update descriptor.
300 /// @param context The request context.
301 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
302 /// session is holding the lock.
303 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
304 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
306
307 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
308 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
309 /// DeploymentException.
310 /// @param descriptor The update descriptor.
311 /// @param context The request context.
312 /// @return A future that becomes available when the invocation completes.
313 [[nodiscard]] std::future<void> updateApplicationWithoutRestartAsync(const ApplicationUpdateDescriptor& descriptor, const Ice::Context& context = Ice::noExplicitContext) const;
314
315 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
316 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
317 /// DeploymentException.
318 /// @param descriptor The update descriptor.
319 /// @param response The response callback.
320 /// @param exception The exception callback.
321 /// @param sent The sent callback.
322 /// @param context The request context.
323 /// @return A function that can be called to cancel the invocation locally.
324 // NOLINTNEXTLINE(modernize-use-nodiscard)
325 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;
326
327 /// @private
328 void _iceI_updateApplicationWithoutRestart(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ApplicationUpdateDescriptor&, const Ice::Context&) const;
329
330 /// Removes an application from IceGrid.
331 /// @param name The application name.
332 /// @param context The request context.
333 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
334 /// session is holding the lock.
335 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
336 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
337 void removeApplication(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
338
339 /// Removes an application from IceGrid.
340 /// @param name The application name.
341 /// @param context The request context.
342 /// @return A future that becomes available when the invocation completes.
343 [[nodiscard]] std::future<void> removeApplicationAsync(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 response The response callback.
348 /// @param exception The exception callback.
349 /// @param sent The sent callback.
350 /// @param context The request context.
351 /// @return A function that can be called to cancel the invocation locally.
352 // NOLINTNEXTLINE(modernize-use-nodiscard)
353 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;
354
355 /// @private
356 void _iceI_removeApplication(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
357
358 /// Instantiates a server template.
359 /// @param application The application name.
360 /// @param node The name of the node where the server will be deployed.
361 /// @param desc The descriptor of the server instance to deploy.
362 /// @param context The request context.
363 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
364 /// session is holding the lock.
365 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
366 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
367 void instantiateServer(std::string_view application, std::string_view node, const ServerInstanceDescriptor& desc, const Ice::Context& context = Ice::noExplicitContext) const;
368
369 /// Instantiates a server template.
370 /// @param application The application name.
371 /// @param node The name of the node where the server will be deployed.
372 /// @param desc The descriptor of the server instance to deploy.
373 /// @param context The request context.
374 /// @return A future that becomes available when the invocation completes.
375 [[nodiscard]] std::future<void> instantiateServerAsync(std::string_view application, std::string_view node, const ServerInstanceDescriptor& desc, const Ice::Context& context = Ice::noExplicitContext) const;
376
377 /// Instantiates a server template.
378 /// @param application The application name.
379 /// @param node The name of the node where the server will be deployed.
380 /// @param desc The descriptor of the server instance to deploy.
381 /// @param response The response callback.
382 /// @param exception The exception callback.
383 /// @param sent The sent callback.
384 /// @param context The request context.
385 /// @return A function that can be called to cancel the invocation locally.
386 // NOLINTNEXTLINE(modernize-use-nodiscard)
387 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;
388
389 /// @private
390 void _iceI_instantiateServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, std::string_view, const ServerInstanceDescriptor&, const Ice::Context&) const;
391
392 /// Gets an application descriptor.
393 /// @param name The application name.
394 /// @param context The request context.
395 /// @return The application descriptor.
396 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
397 ApplicationInfo getApplicationInfo(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
398
399 /// Gets an application descriptor.
400 /// @param name The application name.
401 /// @param context The request context.
402 /// @return A future that becomes available when the invocation completes. This future holds:
403 /// - The application descriptor.
404 [[nodiscard]] std::future<ApplicationInfo> getApplicationInfoAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
405
406 /// Gets an application descriptor.
407 /// @param name The application name.
408 /// @param response The response callback. It accepts:
409 /// - The application descriptor.
410 /// @param exception The exception callback.
411 /// @param sent The sent callback.
412 /// @param context The request context.
413 /// @return A function that can be called to cancel the invocation locally.
414 // NOLINTNEXTLINE(modernize-use-nodiscard)
415 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;
416
417 /// @private
418 void _iceI_getApplicationInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<ApplicationInfo>>&, std::string_view, const Ice::Context&) const;
419
420 /// Gets the default application descriptor.
421 /// @param context The request context.
422 /// @return The default application descriptor.
423 /// @throws IceGrid::DeploymentException Thrown when the default application descriptor is invalid or unreachable.
424 ApplicationDescriptor getDefaultApplicationDescriptor(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
425
426 /// Gets the default application descriptor.
427 /// @param context The request context.
428 /// @return A future that becomes available when the invocation completes. This future holds:
429 /// - The default application descriptor.
430 [[nodiscard]] std::future<ApplicationDescriptor> getDefaultApplicationDescriptorAsync(const Ice::Context& context = Ice::noExplicitContext) const;
431
432 /// Gets the default application descriptor.
433 /// @param response The response callback. It accepts:
434 /// - The default application descriptor.
435 /// @param exception The exception callback.
436 /// @param sent The sent callback.
437 /// @param context The request context.
438 /// @return A function that can be called to cancel the invocation locally.
439 // NOLINTNEXTLINE(modernize-use-nodiscard)
440 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;
441
442 /// @private
443 void _iceI_getDefaultApplicationDescriptor(const std::shared_ptr<IceInternal::OutgoingAsyncT<ApplicationDescriptor>>&, const Ice::Context&) const;
444
445 /// Gets all the IceGrid applications currently registered.
446 /// @param context The request context.
447 /// @return The application names.
448 ::Ice::StringSeq getAllApplicationNames(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
449
450 /// Gets all the IceGrid applications currently registered.
451 /// @param context The request context.
452 /// @return A future that becomes available when the invocation completes. This future holds:
453 /// - The application names.
454 [[nodiscard]] std::future<::Ice::StringSeq> getAllApplicationNamesAsync(const Ice::Context& context = Ice::noExplicitContext) const;
455
456 /// Gets all the IceGrid applications currently registered.
457 /// @param response The response callback. It accepts:
458 /// - The application names.
459 /// @param exception The exception callback.
460 /// @param sent The sent callback.
461 /// @param context The request context.
462 /// @return A function that can be called to cancel the invocation locally.
463 // NOLINTNEXTLINE(modernize-use-nodiscard)
464 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;
465
466 /// @private
467 void _iceI_getAllApplicationNames(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
468
469 /// Gets information about a server.
470 /// @param id The server ID.
471 /// @param context The request context.
472 /// @return The server information.
473 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
474 ServerInfo getServerInfo(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
475
476 /// Gets information about a server.
477 /// @param id The server ID.
478 /// @param context The request context.
479 /// @return A future that becomes available when the invocation completes. This future holds:
480 /// - The server information.
481 [[nodiscard]] std::future<ServerInfo> getServerInfoAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
482
483 /// Gets information about a server.
484 /// @param id The server ID.
485 /// @param response The response callback. It accepts:
486 /// - The server information.
487 /// @param exception The exception callback.
488 /// @param sent The sent callback.
489 /// @param context The request context.
490 /// @return A function that can be called to cancel the invocation locally.
491 // NOLINTNEXTLINE(modernize-use-nodiscard)
492 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;
493
494 /// @private
495 void _iceI_getServerInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<ServerInfo>>&, std::string_view, const Ice::Context&) const;
496
497 /// Gets the state of a server.
498 /// @param id The server ID.
499 /// @param context The request context.
500 /// @return The server state.
501 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
502 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
503 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
504 ServerState getServerState(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
505
506 /// Gets the state of a server.
507 /// @param id The server ID.
508 /// @param context The request context.
509 /// @return A future that becomes available when the invocation completes. This future holds:
510 /// - The server state.
511 [[nodiscard]] std::future<ServerState> getServerStateAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
512
513 /// Gets the state of a server.
514 /// @param id The server ID.
515 /// @param response The response callback. It accepts:
516 /// - The server state.
517 /// @param exception The exception callback.
518 /// @param sent The sent callback.
519 /// @param context The request context.
520 /// @return A function that can be called to cancel the invocation locally.
521 // NOLINTNEXTLINE(modernize-use-nodiscard)
522 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;
523
524 /// @private
525 void _iceI_getServerState(const std::shared_ptr<IceInternal::OutgoingAsyncT<ServerState>>&, std::string_view, const Ice::Context&) const;
526
527 /// Gets the system process ID of a server. The process ID is operating system dependent.
528 /// @param id The server ID.
529 /// @param context The request context.
530 /// @return The process ID.
531 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
532 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
533 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
534 std::int32_t getServerPid(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
535
536 /// Gets the system process ID of a server. The process ID is operating system dependent.
537 /// @param id The server ID.
538 /// @param context The request context.
539 /// @return A future that becomes available when the invocation completes. This future holds:
540 /// - The process ID.
541 [[nodiscard]] std::future<std::int32_t> getServerPidAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
542
543 /// Gets the system process ID of a server. The process ID is operating system dependent.
544 /// @param id The server ID.
545 /// @param response The response callback. It accepts:
546 /// - The process ID.
547 /// @param exception The exception callback.
548 /// @param sent The sent callback.
549 /// @param context The request context.
550 /// @return A function that can be called to cancel the invocation locally.
551 // NOLINTNEXTLINE(modernize-use-nodiscard)
552 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;
553
554 /// @private
555 void _iceI_getServerPid(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::int32_t>>&, std::string_view, const Ice::Context&) const;
556
557 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
558 /// changing its identity: use the server ID as name and the returned category as category.
559 /// @param context The request context.
560 /// @return The category for server admin objects.
561 std::string getServerAdminCategory(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
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 A future that becomes available when the invocation completes. This future holds:
567 /// - The category for server admin objects.
568 [[nodiscard]] std::future<std::string> getServerAdminCategoryAsync(const Ice::Context& context = Ice::noExplicitContext) const;
569
570 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
571 /// changing its identity: use the server ID as name and the returned category as category.
572 /// @param response The response callback. It accepts:
573 /// - The category for server admin objects.
574 /// @param exception The exception callback.
575 /// @param sent The sent callback.
576 /// @param context The request context.
577 /// @return A function that can be called to cancel the invocation locally.
578 // NOLINTNEXTLINE(modernize-use-nodiscard)
579 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;
580
581 /// @private
582 void _iceI_getServerAdminCategory(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::string>>&, const Ice::Context&) const;
583
584 /// Gets a proxy to the admin object of a server.
585 /// @param id The server ID.
586 /// @param context The request context.
587 /// @return A proxy to the admin object of the server. This proxy is never null.
588 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
589 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
590 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
591 std::optional<Ice::ObjectPrx> getServerAdmin(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
592
593 /// Gets a proxy to the admin object of a server.
594 /// @param id The server ID.
595 /// @param context The request context.
596 /// @return A future that becomes available when the invocation completes. This future holds:
597 /// - A proxy to the admin object of the server. This proxy is never null.
598 [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getServerAdminAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
599
600 /// Gets a proxy to the admin object of a server.
601 /// @param id The server ID.
602 /// @param response The response callback. It accepts:
603 /// - A proxy to the admin object of the server. This proxy is never null.
604 /// @param exception The exception callback.
605 /// @param sent The sent callback.
606 /// @param context The request context.
607 /// @return A function that can be called to cancel the invocation locally.
608 // NOLINTNEXTLINE(modernize-use-nodiscard)
609 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;
610
611 /// @private
612 void _iceI_getServerAdmin(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, std::string_view, const Ice::Context&) const;
613
614 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
615 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
616 /// default.
617 /// @param id The server ID.
618 /// @param enabled `true` to enable the server, `false` to disable it.
619 /// @param context The request context.
620 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
621 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
622 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
623 void enableServer(std::string_view id, bool enabled, const Ice::Context& context = Ice::noExplicitContext) const;
624
625 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
626 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
627 /// default.
628 /// @param id The server ID.
629 /// @param enabled `true` to enable the server, `false` to disable it.
630 /// @param context The request context.
631 /// @return A future that becomes available when the invocation completes.
632 [[nodiscard]] std::future<void> enableServerAsync(std::string_view id, bool enabled, const Ice::Context& context = Ice::noExplicitContext) const;
633
634 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
635 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
636 /// default.
637 /// @param id The server ID.
638 /// @param enabled `true` to enable the server, `false` to disable it.
639 /// @param response The response callback.
640 /// @param exception The exception callback.
641 /// @param sent The sent callback.
642 /// @param context The request context.
643 /// @return A function that can be called to cancel the invocation locally.
644 // NOLINTNEXTLINE(modernize-use-nodiscard)
645 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;
646
647 /// @private
648 void _iceI_enableServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, bool, const Ice::Context&) const;
649
650 /// Checks if the server is enabled or disabled.
651 /// @param id The server ID.
652 /// @param context The request context.
653 /// @return `true` if the server is enabled, `false` otherwise.
654 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
655 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
656 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
657 bool isServerEnabled(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
658
659 /// Checks if the server is enabled or disabled.
660 /// @param id The server ID.
661 /// @param context The request context.
662 /// @return A future that becomes available when the invocation completes. This future holds:
663 /// - `true` if the server is enabled, `false` otherwise.
664 [[nodiscard]] std::future<bool> isServerEnabledAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
665
666 /// Checks if the server is enabled or disabled.
667 /// @param id The server ID.
668 /// @param response The response callback. It accepts:
669 /// - `true` if the server is enabled, `false` otherwise.
670 /// @param exception The exception callback.
671 /// @param sent The sent callback.
672 /// @param context The request context.
673 /// @return A function that can be called to cancel the invocation locally.
674 // NOLINTNEXTLINE(modernize-use-nodiscard)
675 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;
676
677 /// @private
678 void _iceI_isServerEnabled(const std::shared_ptr<IceInternal::OutgoingAsyncT<bool>>&, std::string_view, const Ice::Context&) const;
679
680 /// Starts a server and waits for its activation.
681 /// @param id The server id.
682 /// @param context The request context.
683 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
684 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
685 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
686 /// @throws IceGrid::ServerStartException Thrown when the server startup failed.
687 void startServer(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
688
689 /// Starts a server and waits for its activation.
690 /// @param id The server id.
691 /// @param context The request context.
692 /// @return A future that becomes available when the invocation completes.
693 [[nodiscard]] std::future<void> startServerAsync(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 response The response callback.
698 /// @param exception The exception callback.
699 /// @param sent The sent callback.
700 /// @param context The request context.
701 /// @return A function that can be called to cancel the invocation locally.
702 // NOLINTNEXTLINE(modernize-use-nodiscard)
703 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;
704
705 /// @private
706 void _iceI_startServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
707
708 /// Stops a server.
709 /// @param id The server ID.
710 /// @param context The request context.
711 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
712 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
713 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
714 /// @throws IceGrid::ServerStopException Thrown when the server stop failed.
715 void stopServer(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
716
717 /// Stops a server.
718 /// @param id The server ID.
719 /// @param context The request context.
720 /// @return A future that becomes available when the invocation completes.
721 [[nodiscard]] std::future<void> stopServerAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
722
723 /// Stops a server.
724 /// @param id The server ID.
725 /// @param response The response callback.
726 /// @param exception The exception callback.
727 /// @param sent The sent callback.
728 /// @param context The request context.
729 /// @return A function that can be called to cancel the invocation locally.
730 // NOLINTNEXTLINE(modernize-use-nodiscard)
731 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;
732
733 /// @private
734 void _iceI_stopServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
735
736 /// Sends a signal to a server.
737 /// @param id The server ID.
738 /// @param signal The signal, for example SIGTERM or 15.
739 /// @param context The request context.
740 /// @throws IceGrid::BadSignalException Thrown when the signal is not recognized by the target server.
741 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
742 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
743 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
744 void sendSignal(std::string_view id, std::string_view signal, const Ice::Context& context = Ice::noExplicitContext) const;
745
746 /// Sends a signal to a server.
747 /// @param id The server ID.
748 /// @param signal The signal, for example SIGTERM or 15.
749 /// @param context The request context.
750 /// @return A future that becomes available when the invocation completes.
751 [[nodiscard]] std::future<void> sendSignalAsync(std::string_view id, std::string_view signal, const Ice::Context& context = Ice::noExplicitContext) const;
752
753 /// Sends a signal to a server.
754 /// @param id The server ID.
755 /// @param signal The signal, for example SIGTERM or 15.
756 /// @param response The response callback.
757 /// @param exception The exception callback.
758 /// @param sent The sent callback.
759 /// @param context The request context.
760 /// @return A function that can be called to cancel the invocation locally.
761 // NOLINTNEXTLINE(modernize-use-nodiscard)
762 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;
763
764 /// @private
765 void _iceI_sendSignal(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, std::string_view, const Ice::Context&) const;
766
767 /// Gets the IDs of all the servers registered with IceGrid.
768 /// @param context The request context.
769 /// @return The server IDs.
770 ::Ice::StringSeq getAllServerIds(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
771
772 /// Gets the IDs of all the servers registered with IceGrid.
773 /// @param context The request context.
774 /// @return A future that becomes available when the invocation completes. This future holds:
775 /// - The server IDs.
776 [[nodiscard]] std::future<::Ice::StringSeq> getAllServerIdsAsync(const Ice::Context& context = Ice::noExplicitContext) const;
777
778 /// Gets the IDs of all the servers registered with IceGrid.
779 /// @param response The response callback. It accepts:
780 /// - The server IDs.
781 /// @param exception The exception callback.
782 /// @param sent The sent callback.
783 /// @param context The request context.
784 /// @return A function that can be called to cancel the invocation locally.
785 // NOLINTNEXTLINE(modernize-use-nodiscard)
786 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;
787
788 /// @private
789 void _iceI_getAllServerIds(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
790
791 /// Gets adapter information for the replica group or adapter with the given ID.
792 /// @param id The adapter or replica group ID.
793 /// @param context The request context.
794 /// @return A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
795 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
796 /// replica group.
797 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter or replica group doesn't exist.
798 AdapterInfoSeq getAdapterInfo(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
799
800 /// Gets adapter information for the replica group or adapter with the given ID.
801 /// @param id The adapter or replica group ID.
802 /// @param context The request context.
803 /// @return A future that becomes available when the invocation completes. This future holds:
804 /// - A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
805 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
806 /// replica group.
807 [[nodiscard]] std::future<AdapterInfoSeq> getAdapterInfoAsync(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
808
809 /// Gets adapter information for the replica group or adapter with the given ID.
810 /// @param id The adapter or replica group ID.
811 /// @param response The response callback. It accepts:
812 /// - A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
813 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
814 /// replica group.
815 /// @param exception The exception callback.
816 /// @param sent The sent callback.
817 /// @param context The request context.
818 /// @return A function that can be called to cancel the invocation locally.
819 // NOLINTNEXTLINE(modernize-use-nodiscard)
820 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;
821
822 /// @private
823 void _iceI_getAdapterInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<AdapterInfoSeq>>&, std::string_view, const Ice::Context&) const;
824
825 /// Removes the adapter with the given ID.
826 /// @param id The adapter ID.
827 /// @param context The request context.
828 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter doesn't exist.
829 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
830 void removeAdapter(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
831
832 /// Removes the adapter with the given ID.
833 /// @param id The adapter ID.
834 /// @param context The request context.
835 /// @return A future that becomes available when the invocation completes.
836 [[nodiscard]] std::future<void> removeAdapterAsync(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 response The response callback.
841 /// @param exception The exception callback.
842 /// @param sent The sent callback.
843 /// @param context The request context.
844 /// @return A function that can be called to cancel the invocation locally.
845 // NOLINTNEXTLINE(modernize-use-nodiscard)
846 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;
847
848 /// @private
849 void _iceI_removeAdapter(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
850
851 /// Gets the IDs of all adapters registered with IceGrid.
852 /// @param context The request context.
853 /// @return The adapter IDs.
854 ::Ice::StringSeq getAllAdapterIds(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
855
856 /// Gets the IDs of all adapters registered with IceGrid.
857 /// @param context The request context.
858 /// @return A future that becomes available when the invocation completes. This future holds:
859 /// - The adapter IDs.
860 [[nodiscard]] std::future<::Ice::StringSeq> getAllAdapterIdsAsync(const Ice::Context& context = Ice::noExplicitContext) const;
861
862 /// Gets the IDs of all adapters registered with IceGrid.
863 /// @param response The response callback. It accepts:
864 /// - The adapter IDs.
865 /// @param exception The exception callback.
866 /// @param sent The sent callback.
867 /// @param context The request context.
868 /// @return A function that can be called to cancel the invocation locally.
869 // NOLINTNEXTLINE(modernize-use-nodiscard)
870 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;
871
872 /// @private
873 void _iceI_getAllAdapterIds(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
874
875 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
876 /// object must be reachable.
877 /// @param obj A proxy to the object. This proxy is never null.
878 /// @param context The request context.
879 /// @throws IceGrid::DeploymentException Thrown when the object can't be added.
880 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
881 void addObject(const std::optional<Ice::ObjectPrx>& obj, const Ice::Context& context = Ice::noExplicitContext) const;
882
883 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
884 /// object must be reachable.
885 /// @param obj A proxy to the object. This proxy is never null.
886 /// @param context The request context.
887 /// @return A future that becomes available when the invocation completes.
888 [[nodiscard]] std::future<void> addObjectAsync(const std::optional<Ice::ObjectPrx>& obj, const Ice::Context& context = Ice::noExplicitContext) const;
889
890 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
891 /// object must be reachable.
892 /// @param obj A proxy to the object. This proxy is never null.
893 /// @param response The response callback.
894 /// @param exception The exception callback.
895 /// @param sent The sent callback.
896 /// @param context The request context.
897 /// @return A function that can be called to cancel the invocation locally.
898 // NOLINTNEXTLINE(modernize-use-nodiscard)
899 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;
900
901 /// @private
902 void _iceI_addObject(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const std::optional<Ice::ObjectPrx>&, const Ice::Context&) const;
903
904 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
905 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
906 /// @param obj A proxy to the object. This proxy is never null.
907 /// @param context The request context.
908 /// @throws IceGrid::DeploymentException Thrown when the object can't be updated.
909 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
910 void updateObject(const std::optional<Ice::ObjectPrx>& obj, const Ice::Context& context = Ice::noExplicitContext) const;
911
912 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
913 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
914 /// @param obj A proxy to the object. This proxy is never null.
915 /// @param context The request context.
916 /// @return A future that becomes available when the invocation completes.
917 [[nodiscard]] std::future<void> updateObjectAsync(const std::optional<Ice::ObjectPrx>& obj, const Ice::Context& context = Ice::noExplicitContext) const;
918
919 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
920 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
921 /// @param obj A proxy to the object. This proxy is never null.
922 /// @param response The response callback.
923 /// @param exception The exception callback.
924 /// @param sent The sent callback.
925 /// @param context The request context.
926 /// @return A function that can be called to cancel the invocation locally.
927 // NOLINTNEXTLINE(modernize-use-nodiscard)
928 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;
929
930 /// @private
931 void _iceI_updateObject(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const std::optional<Ice::ObjectPrx>&, const Ice::Context&) const;
932
933 /// Adds an object to the object registry and explicitly specifies its type.
934 /// @param obj The object to be added to the registry. The proxy is never null.
935 /// @param type The type name.
936 /// @param context The request context.
937 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
938 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
939 void addObjectWithType(const std::optional<Ice::ObjectPrx>& obj, std::string_view type, const Ice::Context& context = Ice::noExplicitContext) const;
940
941 /// Adds an object to the object registry and explicitly specifies its type.
942 /// @param obj The object to be added to the registry. The proxy is never null.
943 /// @param type The type name.
944 /// @param context The request context.
945 /// @return A future that becomes available when the invocation completes.
946 [[nodiscard]] std::future<void> addObjectWithTypeAsync(const std::optional<Ice::ObjectPrx>& obj, std::string_view type, const Ice::Context& context = Ice::noExplicitContext) const;
947
948 /// Adds an object to the object registry and explicitly specifies its type.
949 /// @param obj The object to be added to the registry. The proxy is never null.
950 /// @param type The type name.
951 /// @param response The response callback.
952 /// @param exception The exception callback.
953 /// @param sent The sent callback.
954 /// @param context The request context.
955 /// @return A function that can be called to cancel the invocation locally.
956 // NOLINTNEXTLINE(modernize-use-nodiscard)
957 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;
958
959 /// @private
960 void _iceI_addObjectWithType(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const std::optional<Ice::ObjectPrx>&, std::string_view, const Ice::Context&) const;
961
962 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
963 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
964 /// @param id The identity of the object to remove.
965 /// @param context The request context.
966 /// @throws IceGrid::DeploymentException Thrown when the object can't be removed.
967 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
968 void removeObject(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
969
970 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
971 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
972 /// @param id The identity of the object to remove.
973 /// @param context The request context.
974 /// @return A future that becomes available when the invocation completes.
975 [[nodiscard]] std::future<void> removeObjectAsync(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
976
977 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
978 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
979 /// @param id The identity of the object to remove.
980 /// @param response The response callback.
981 /// @param exception The exception callback.
982 /// @param sent The sent callback.
983 /// @param context The request context.
984 /// @return A function that can be called to cancel the invocation locally.
985 // NOLINTNEXTLINE(modernize-use-nodiscard)
986 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;
987
988 /// @private
989 void _iceI_removeObject(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ::Ice::Identity&, const Ice::Context&) const;
990
991 /// Gets the object info for the object.
992 /// @param id The identity of the object.
993 /// @param context The request context.
994 /// @return The object info.
995 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
996 ObjectInfo getObjectInfo(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
997
998 /// Gets the object info for the object.
999 /// @param id The identity of the object.
1000 /// @param context The request context.
1001 /// @return A future that becomes available when the invocation completes. This future holds:
1002 /// - The object info.
1003 [[nodiscard]] std::future<ObjectInfo> getObjectInfoAsync(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
1004
1005 /// Gets the object info for the object.
1006 /// @param id The identity of the object.
1007 /// @param response The response callback. It accepts:
1008 /// - The object info.
1009 /// @param exception The exception callback.
1010 /// @param sent The sent callback.
1011 /// @param context The request context.
1012 /// @return A function that can be called to cancel the invocation locally.
1013 // NOLINTNEXTLINE(modernize-use-nodiscard)
1014 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;
1015
1016 /// @private
1017 void _iceI_getObjectInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<ObjectInfo>>&, const ::Ice::Identity&, const Ice::Context&) const;
1018
1019 /// Gets the object info of all the registered objects with a given type.
1020 /// @param type The type name.
1021 /// @param context The request context.
1022 /// @return The object infos.
1023 ObjectInfoSeq getObjectInfosByType(std::string_view type, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
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 A future that becomes available when the invocation completes. This future holds:
1029 /// - The object infos.
1030 [[nodiscard]] std::future<ObjectInfoSeq> getObjectInfosByTypeAsync(std::string_view type, const Ice::Context& context = Ice::noExplicitContext) const;
1031
1032 /// Gets the object info of all the registered objects with a given type.
1033 /// @param type The type name.
1034 /// @param response The response callback. It accepts:
1035 /// - The object infos.
1036 /// @param exception The exception callback.
1037 /// @param sent The sent callback.
1038 /// @param context The request context.
1039 /// @return A function that can be called to cancel the invocation locally.
1040 // NOLINTNEXTLINE(modernize-use-nodiscard)
1041 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;
1042
1043 /// @private
1044 void _iceI_getObjectInfosByType(const std::shared_ptr<IceInternal::OutgoingAsyncT<ObjectInfoSeq>>&, std::string_view, const Ice::Context&) const;
1045
1046 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
1047 /// @param expr The expression to match against the stringified identities of registered objects. The expression
1048 /// may contain a trailing wildcard (`*`) character.
1049 /// @param context The request context.
1050 /// @return All the object infos with a stringified identity matching the given expression.
1051 ObjectInfoSeq getAllObjectInfos(std::string_view expr, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1052
1053 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
1054 /// @param expr The expression to match against the stringified identities of registered objects. The expression
1055 /// may contain a trailing wildcard (`*`) character.
1056 /// @param context The request context.
1057 /// @return A future that becomes available when the invocation completes. This future holds:
1058 /// - All the object infos with a stringified identity matching the given expression.
1059 [[nodiscard]] std::future<ObjectInfoSeq> getAllObjectInfosAsync(std::string_view expr, const Ice::Context& context = Ice::noExplicitContext) const;
1060
1061 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
1062 /// @param expr The expression to match against the stringified identities of registered objects. The expression
1063 /// may contain a trailing wildcard (`*`) character.
1064 /// @param response The response callback. It accepts:
1065 /// - All the object infos with a stringified identity matching the given expression.
1066 /// @param exception The exception callback.
1067 /// @param sent The sent callback.
1068 /// @param context The request context.
1069 /// @return A function that can be called to cancel the invocation locally.
1070 // NOLINTNEXTLINE(modernize-use-nodiscard)
1071 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;
1072
1073 /// @private
1074 void _iceI_getAllObjectInfos(const std::shared_ptr<IceInternal::OutgoingAsyncT<ObjectInfoSeq>>&, std::string_view, const Ice::Context&) const;
1075
1076 /// Pings an IceGrid node to see if it is active.
1077 /// @param name The node name.
1078 /// @param context The request context.
1079 /// @return `true` if the node ping succeeded, `false` otherwise.
1080 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1081 bool pingNode(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1082
1083 /// Pings an IceGrid node to see if it is active.
1084 /// @param name The node name.
1085 /// @param context The request context.
1086 /// @return A future that becomes available when the invocation completes. This future holds:
1087 /// - `true` if the node ping succeeded, `false` otherwise.
1088 [[nodiscard]] std::future<bool> pingNodeAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1089
1090 /// Pings an IceGrid node to see if it is active.
1091 /// @param name The node name.
1092 /// @param response The response callback. It accepts:
1093 /// - `true` if the node ping succeeded, `false` otherwise.
1094 /// @param exception The exception callback.
1095 /// @param sent The sent callback.
1096 /// @param context The request context.
1097 /// @return A function that can be called to cancel the invocation locally.
1098 // NOLINTNEXTLINE(modernize-use-nodiscard)
1099 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;
1100
1101 /// @private
1102 void _iceI_pingNode(const std::shared_ptr<IceInternal::OutgoingAsyncT<bool>>&, std::string_view, const Ice::Context&) const;
1103
1104 /// Gets the load averages of a node.
1105 /// @param name The node name.
1106 /// @param context The request context.
1107 /// @return The node load information.
1108 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1109 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1110 LoadInfo getNodeLoad(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1111
1112 /// Gets the load averages of a node.
1113 /// @param name The node name.
1114 /// @param context The request context.
1115 /// @return A future that becomes available when the invocation completes. This future holds:
1116 /// - The node load information.
1117 [[nodiscard]] std::future<LoadInfo> getNodeLoadAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1118
1119 /// Gets the load averages of a node.
1120 /// @param name The node name.
1121 /// @param response The response callback. It accepts:
1122 /// - The node load information.
1123 /// @param exception The exception callback.
1124 /// @param sent The sent callback.
1125 /// @param context The request context.
1126 /// @return A function that can be called to cancel the invocation locally.
1127 // NOLINTNEXTLINE(modernize-use-nodiscard)
1128 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;
1129
1130 /// @private
1131 void _iceI_getNodeLoad(const std::shared_ptr<IceInternal::OutgoingAsyncT<LoadInfo>>&, std::string_view, const Ice::Context&) const;
1132
1133 /// Gets the node information of a node.
1134 /// @param name The node name.
1135 /// @param context The request context.
1136 /// @return The node information.
1137 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1138 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1139 NodeInfo getNodeInfo(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1140
1141 /// Gets the node information of a node.
1142 /// @param name The node name.
1143 /// @param context The request context.
1144 /// @return A future that becomes available when the invocation completes. This future holds:
1145 /// - The node information.
1146 [[nodiscard]] std::future<NodeInfo> getNodeInfoAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1147
1148 /// Gets the node information of a node.
1149 /// @param name The node name.
1150 /// @param response The response callback. It accepts:
1151 /// - The node information.
1152 /// @param exception The exception callback.
1153 /// @param sent The sent callback.
1154 /// @param context The request context.
1155 /// @return A function that can be called to cancel the invocation locally.
1156 // NOLINTNEXTLINE(modernize-use-nodiscard)
1157 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;
1158
1159 /// @private
1160 void _iceI_getNodeInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<NodeInfo>>&, std::string_view, const Ice::Context&) const;
1161
1162 /// Gets a proxy to the admin object of an IceGrid node.
1163 /// @param name The IceGrid node name.
1164 /// @param context The request context.
1165 /// @return A proxy to the IceGrid node's admin object. This proxy is never null.
1166 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1167 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1168 std::optional<Ice::ObjectPrx> getNodeAdmin(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1169
1170 /// Gets a proxy to the admin object of an IceGrid node.
1171 /// @param name The IceGrid node name.
1172 /// @param context The request context.
1173 /// @return A future that becomes available when the invocation completes. This future holds:
1174 /// - A proxy to the IceGrid node's admin object. This proxy is never null.
1175 [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getNodeAdminAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1176
1177 /// Gets a proxy to the admin object of an IceGrid node.
1178 /// @param name The IceGrid node name.
1179 /// @param response The response callback. It accepts:
1180 /// - A proxy to the IceGrid node's admin object. This proxy is never null.
1181 /// @param exception The exception callback.
1182 /// @param sent The sent callback.
1183 /// @param context The request context.
1184 /// @return A function that can be called to cancel the invocation locally.
1185 // NOLINTNEXTLINE(modernize-use-nodiscard)
1186 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;
1187
1188 /// @private
1189 void _iceI_getNodeAdmin(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, std::string_view, const Ice::Context&) const;
1190
1191 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
1192 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
1193 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
1194 /// @param name The node name.
1195 /// @param context The request context.
1196 /// @return The number of processor sockets or 1 if the number of sockets can't be determined.
1197 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1198 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1199 std::int32_t getNodeProcessorSocketCount(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1200
1201 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
1202 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
1203 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
1204 /// @param name The node name.
1205 /// @param context The request context.
1206 /// @return A future that becomes available when the invocation completes. This future holds:
1207 /// - The number of processor sockets or 1 if the number of sockets can't be determined.
1208 [[nodiscard]] std::future<std::int32_t> getNodeProcessorSocketCountAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1209
1210 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
1211 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
1212 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
1213 /// @param name The node name.
1214 /// @param response The response callback. It accepts:
1215 /// - The number of processor sockets or 1 if the number of sockets can't be determined.
1216 /// @param exception The exception callback.
1217 /// @param sent The sent callback.
1218 /// @param context The request context.
1219 /// @return A function that can be called to cancel the invocation locally.
1220 // NOLINTNEXTLINE(modernize-use-nodiscard)
1221 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;
1222
1223 /// @private
1224 void _iceI_getNodeProcessorSocketCount(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::int32_t>>&, std::string_view, const Ice::Context&) const;
1225
1226 /// Shuts down an IceGrid node.
1227 /// @param name The node name.
1228 /// @param context The request context.
1229 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1230 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1231 void shutdownNode(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1232
1233 /// Shuts down an IceGrid node.
1234 /// @param name The node name.
1235 /// @param context The request context.
1236 /// @return A future that becomes available when the invocation completes.
1237 [[nodiscard]] std::future<void> shutdownNodeAsync(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 response The response callback.
1242 /// @param exception The exception callback.
1243 /// @param sent The sent callback.
1244 /// @param context The request context.
1245 /// @return A function that can be called to cancel the invocation locally.
1246 // NOLINTNEXTLINE(modernize-use-nodiscard)
1247 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;
1248
1249 /// @private
1250 void _iceI_shutdownNode(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
1251
1252 /// Get the hostname of a node.
1253 /// @param name The node name.
1254 /// @param context The request context.
1255 /// @return The node hostname.
1256 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
1257 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
1258 std::string getNodeHostname(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1259
1260 /// Get the hostname of a node.
1261 /// @param name The node name.
1262 /// @param context The request context.
1263 /// @return A future that becomes available when the invocation completes. This future holds:
1264 /// - The node hostname.
1265 [[nodiscard]] std::future<std::string> getNodeHostnameAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1266
1267 /// Get the hostname of a node.
1268 /// @param name The node name.
1269 /// @param response The response callback. It accepts:
1270 /// - The node hostname.
1271 /// @param exception The exception callback.
1272 /// @param sent The sent callback.
1273 /// @param context The request context.
1274 /// @return A function that can be called to cancel the invocation locally.
1275 // NOLINTNEXTLINE(modernize-use-nodiscard)
1276 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;
1277
1278 /// @private
1279 void _iceI_getNodeHostname(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::string>>&, std::string_view, const Ice::Context&) const;
1280
1281 /// Gets the names of all IceGrid nodes currently registered.
1282 /// @param context The request context.
1283 /// @return The node names.
1284 ::Ice::StringSeq getAllNodeNames(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1285
1286 /// Gets the names of all IceGrid nodes currently registered.
1287 /// @param context The request context.
1288 /// @return A future that becomes available when the invocation completes. This future holds:
1289 /// - The node names.
1290 [[nodiscard]] std::future<::Ice::StringSeq> getAllNodeNamesAsync(const Ice::Context& context = Ice::noExplicitContext) const;
1291
1292 /// Gets the names of all IceGrid nodes currently registered.
1293 /// @param response The response callback. It accepts:
1294 /// - The node names.
1295 /// @param exception The exception callback.
1296 /// @param sent The sent callback.
1297 /// @param context The request context.
1298 /// @return A function that can be called to cancel the invocation locally.
1299 // NOLINTNEXTLINE(modernize-use-nodiscard)
1300 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;
1301
1302 /// @private
1303 void _iceI_getAllNodeNames(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
1304
1305 /// Pings an IceGrid registry to see if it is active.
1306 /// @param name The registry name.
1307 /// @param context The request context.
1308 /// @return `true` if the registry ping succeeded, `false` otherwise.
1309 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
1310 bool pingRegistry(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1311
1312 /// Pings an IceGrid registry to see if it is active.
1313 /// @param name The registry name.
1314 /// @param context The request context.
1315 /// @return A future that becomes available when the invocation completes. This future holds:
1316 /// - `true` if the registry ping succeeded, `false` otherwise.
1317 [[nodiscard]] std::future<bool> pingRegistryAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1318
1319 /// Pings an IceGrid registry to see if it is active.
1320 /// @param name The registry name.
1321 /// @param response The response callback. It accepts:
1322 /// - `true` if the registry ping succeeded, `false` otherwise.
1323 /// @param exception The exception callback.
1324 /// @param sent The sent callback.
1325 /// @param context The request context.
1326 /// @return A function that can be called to cancel the invocation locally.
1327 // NOLINTNEXTLINE(modernize-use-nodiscard)
1328 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;
1329
1330 /// @private
1331 void _iceI_pingRegistry(const std::shared_ptr<IceInternal::OutgoingAsyncT<bool>>&, std::string_view, const Ice::Context&) const;
1332
1333 /// Gets the registry information of an IceGrid registry.
1334 /// @param name The registry name.
1335 /// @param context The request context.
1336 /// @return The registry information.
1337 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
1338 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
1339 RegistryInfo getRegistryInfo(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1340
1341 /// Gets the registry information of an IceGrid registry.
1342 /// @param name The registry name.
1343 /// @param context The request context.
1344 /// @return A future that becomes available when the invocation completes. This future holds:
1345 /// - The registry information.
1346 [[nodiscard]] std::future<RegistryInfo> getRegistryInfoAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1347
1348 /// Gets the registry information of an IceGrid registry.
1349 /// @param name The registry name.
1350 /// @param response The response callback. It accepts:
1351 /// - The registry information.
1352 /// @param exception The exception callback.
1353 /// @param sent The sent callback.
1354 /// @param context The request context.
1355 /// @return A function that can be called to cancel the invocation locally.
1356 // NOLINTNEXTLINE(modernize-use-nodiscard)
1357 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;
1358
1359 /// @private
1360 void _iceI_getRegistryInfo(const std::shared_ptr<IceInternal::OutgoingAsyncT<RegistryInfo>>&, std::string_view, const Ice::Context&) const;
1361
1362 /// Gets a proxy to the admin object of an IceGrid registry.
1363 /// @param name The registry name.
1364 /// @param context The request context.
1365 /// @return A proxy to the admin object of an IceGrid registry. This proxy is never null.
1366 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
1367 std::optional<Ice::ObjectPrx> getRegistryAdmin(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1368
1369 /// Gets a proxy to the admin object of an IceGrid registry.
1370 /// @param name The registry name.
1371 /// @param context The request context.
1372 /// @return A future that becomes available when the invocation completes. This future holds:
1373 /// - A proxy to the admin object of an IceGrid registry. This proxy is never null.
1374 [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getRegistryAdminAsync(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1375
1376 /// Gets a proxy to the admin object of an IceGrid registry.
1377 /// @param name The registry name.
1378 /// @param response The response callback. It accepts:
1379 /// - A proxy to the admin object of an IceGrid registry. This proxy is never null.
1380 /// @param exception The exception callback.
1381 /// @param sent The sent callback.
1382 /// @param context The request context.
1383 /// @return A function that can be called to cancel the invocation locally.
1384 // NOLINTNEXTLINE(modernize-use-nodiscard)
1385 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;
1386
1387 /// @private
1388 void _iceI_getRegistryAdmin(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, std::string_view, const Ice::Context&) const;
1389
1390 /// Shuts down an IceGrid registry.
1391 /// @param name The registry name.
1392 /// @param context The request context.
1393 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
1394 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
1395 void shutdownRegistry(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1396
1397 /// Shuts down an IceGrid registry.
1398 /// @param name The registry name.
1399 /// @param context The request context.
1400 /// @return A future that becomes available when the invocation completes.
1401 [[nodiscard]] std::future<void> shutdownRegistryAsync(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 response The response callback.
1406 /// @param exception The exception callback.
1407 /// @param sent The sent callback.
1408 /// @param context The request context.
1409 /// @return A function that can be called to cancel the invocation locally.
1410 // NOLINTNEXTLINE(modernize-use-nodiscard)
1411 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;
1412
1413 /// @private
1414 void _iceI_shutdownRegistry(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
1415
1416 /// Gets the names of all the IceGrid registries currently registered.
1417 /// @param context The request context.
1418 /// @return The registry names.
1419 ::Ice::StringSeq getAllRegistryNames(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
1420
1421 /// Gets the names of all the IceGrid registries currently registered.
1422 /// @param context The request context.
1423 /// @return A future that becomes available when the invocation completes. This future holds:
1424 /// - The registry names.
1425 [[nodiscard]] std::future<::Ice::StringSeq> getAllRegistryNamesAsync(const Ice::Context& context = Ice::noExplicitContext) const;
1426
1427 /// Gets the names of all the IceGrid registries currently registered.
1428 /// @param response The response callback. It accepts:
1429 /// - The registry names.
1430 /// @param exception The exception callback.
1431 /// @param sent The sent callback.
1432 /// @param context The request context.
1433 /// @return A function that can be called to cancel the invocation locally.
1434 // NOLINTNEXTLINE(modernize-use-nodiscard)
1435 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;
1436
1437 /// @private
1438 void _iceI_getAllRegistryNames(const std::shared_ptr<IceInternal::OutgoingAsyncT<::Ice::StringSeq>>&, const Ice::Context&) const;
1439
1440 /// Shuts down the IceGrid registry.
1441 /// @param context The request context.
1442 void shutdown(const Ice::Context& context = Ice::noExplicitContext) const;
1443
1444 /// Shuts down the IceGrid registry.
1445 /// @param context The request context.
1446 /// @return A future that becomes available when the invocation completes.
1447 [[nodiscard]] std::future<void> shutdownAsync(const Ice::Context& context = Ice::noExplicitContext) const;
1448
1449 /// Shuts down the IceGrid registry.
1450 /// @param response The response callback.
1451 /// @param exception The exception callback.
1452 /// @param sent The sent callback.
1453 /// @param context The request context.
1454 /// @return A function that can be called to cancel the invocation locally.
1455 // NOLINTNEXTLINE(modernize-use-nodiscard)
1456 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;
1457
1458 /// @private
1459 void _iceI_shutdown(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
1460
1461 /// Gets the type ID of the associated Slice interface.
1462 /// @return The string `"::IceGrid::Admin"`.
1463 static const char* ice_staticId() noexcept;
1464
1465 /// @private
1466 static AdminPrx _fromReference(IceInternal::ReferencePtr ref) { return AdminPrx{std::move(ref)}; }
1467
1468 protected:
1469 /// @private
1470 AdminPrx() = default;
1471
1472 /// @private
1473 explicit AdminPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1474 {
1475 }
1476 };
1477
1478 /// Iterates over an IceGrid log file.
1479 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::FileIterator`.
1480 /// @headerfile IceGrid/IceGrid.h
1481 class ICEGRID_API FileIteratorPrx : public Ice::Proxy<FileIteratorPrx, Ice::ObjectPrx>
1482 {
1483 public:
1484 /// Constructs a proxy from a Communicator and a proxy string.
1485 /// @param communicator The communicator of the new proxy.
1486 /// @param proxyString The proxy string to parse.
1487 FileIteratorPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1488
1489 /// Copy constructor. Constructs with a copy of the contents of @p other.
1490 /// @param other The proxy to copy from.
1491 FileIteratorPrx(const FileIteratorPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1492
1493 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
1494 /// @param other The proxy to move from.
1495 FileIteratorPrx(FileIteratorPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1496
1497 ~FileIteratorPrx() override;
1498
1499 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
1500 /// @param rhs The proxy to copy from.
1501 /// @return A reference to this proxy.
1503 {
1504 if (this != &rhs)
1505 {
1507 }
1508 return *this;
1509 }
1510
1511 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
1512 /// @param rhs The proxy to move from.
1514 {
1515 if (this != &rhs)
1516 {
1517 Ice::ObjectPrx::operator=(std::move(rhs));
1518 }
1519 return *this;
1520 }
1521
1522 /// Read lines from the log file.
1523 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
1524 /// message doesn't exceed the given size.
1525 /// @param[out] lines The lines read from the file. If there was nothing to read from the file since the last call to
1526 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
1527 /// newline character should be added when writing the last line to the to the output device).
1528 /// @param context The request context.
1529 /// @return `true` if EOF is encountered.
1530 /// @throws IceGrid::FileNotAvailableException Thrown when the implementation failed to read from the file.
1531 bool read(std::int32_t size, ::Ice::StringSeq& lines, const Ice::Context& context = Ice::noExplicitContext) const;
1532
1533 /// Read lines from the log file.
1534 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
1535 /// message doesn't exceed the given size.
1536 /// @param context The request context.
1537 /// @return A future that becomes available when the invocation completes. This future holds:
1538 /// - `returnValue` `true` if EOF is encountered.
1539 /// - `lines` The lines read from the file. If there was nothing to read from the file since the last call to
1540 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
1541 /// newline character should be added when writing the last line to the to the output device).
1542 [[nodiscard]] std::future<std::tuple<bool, ::Ice::StringSeq>> readAsync(std::int32_t size, const Ice::Context& context = Ice::noExplicitContext) const;
1543
1544 /// Read lines from the log file.
1545 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
1546 /// message doesn't exceed the given size.
1547 /// @param response The response callback. It accepts:
1548 /// - `returnValue` `true` if EOF is encountered.
1549 /// - `lines` The lines read from the file. If there was nothing to read from the file since the last call to
1550 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
1551 /// newline character should be added when writing the last line to the to the output device).
1552 /// @param exception The exception callback.
1553 /// @param sent The sent callback.
1554 /// @param context The request context.
1555 /// @return A function that can be called to cancel the invocation locally.
1556 // NOLINTNEXTLINE(modernize-use-nodiscard)
1557 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;
1558
1559 /// @private
1560 void _iceI_read(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::tuple<bool, ::Ice::StringSeq>>>&, std::int32_t, const Ice::Context&) const;
1561
1562 /// Destroys the iterator.
1563 /// @param context The request context.
1564 void destroy(const Ice::Context& context = Ice::noExplicitContext) const;
1565
1566 /// Destroys the iterator.
1567 /// @param context The request context.
1568 /// @return A future that becomes available when the invocation completes.
1569 [[nodiscard]] std::future<void> destroyAsync(const Ice::Context& context = Ice::noExplicitContext) const;
1570
1571 /// Destroys the iterator.
1572 /// @param response The response callback.
1573 /// @param exception The exception callback.
1574 /// @param sent The sent callback.
1575 /// @param context The request context.
1576 /// @return A function that can be called to cancel the invocation locally.
1577 // NOLINTNEXTLINE(modernize-use-nodiscard)
1578 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;
1579
1580 /// @private
1581 void _iceI_destroy(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
1582
1583 /// Gets the type ID of the associated Slice interface.
1584 /// @return The string `"::IceGrid::FileIterator"`.
1585 static const char* ice_staticId() noexcept;
1586
1587 /// @private
1588 static FileIteratorPrx _fromReference(IceInternal::ReferencePtr ref) { return FileIteratorPrx{std::move(ref)}; }
1589
1590 protected:
1591 /// @private
1592 FileIteratorPrx() = default;
1593
1594 /// @private
1595 explicit FileIteratorPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1596 {
1597 }
1598 };
1599
1600 /// Monitors changes to the state of the registries.
1601 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::RegistryObserver`.
1602 /// @headerfile IceGrid/IceGrid.h
1603 class ICEGRID_API RegistryObserverPrx : public Ice::Proxy<RegistryObserverPrx, Ice::ObjectPrx>
1604 {
1605 public:
1606 /// Constructs a proxy from a Communicator and a proxy string.
1607 /// @param communicator The communicator of the new proxy.
1608 /// @param proxyString The proxy string to parse.
1609 RegistryObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1610
1611 /// Copy constructor. Constructs with a copy of the contents of @p other.
1612 /// @param other The proxy to copy from.
1613 RegistryObserverPrx(const RegistryObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1614
1615 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
1616 /// @param other The proxy to move from.
1617 RegistryObserverPrx(RegistryObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1618
1619 ~RegistryObserverPrx() override;
1620
1621 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
1622 /// @param rhs The proxy to copy from.
1623 /// @return A reference to this proxy.
1625 {
1626 if (this != &rhs)
1627 {
1629 }
1630 return *this;
1631 }
1632
1633 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
1634 /// @param rhs The proxy to move from.
1636 {
1637 if (this != &rhs)
1638 {
1639 Ice::ObjectPrx::operator=(std::move(rhs));
1640 }
1641 return *this;
1642 }
1643
1644 /// Provides the initial state of the registries to the observer.
1645 /// @param registries The current state of the registries.
1646 /// @param context The request context.
1647 void registryInit(const RegistryInfoSeq& registries, const Ice::Context& context = Ice::noExplicitContext) const;
1648
1649 /// Provides the initial state of the registries to the observer.
1650 /// @param registries The current state of the registries.
1651 /// @param context The request context.
1652 /// @return A future that becomes available when the invocation completes.
1653 [[nodiscard]] std::future<void> registryInitAsync(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 response The response callback.
1658 /// @param exception The exception callback.
1659 /// @param sent The sent callback.
1660 /// @param context The request context.
1661 /// @return A function that can be called to cancel the invocation locally.
1662 // NOLINTNEXTLINE(modernize-use-nodiscard)
1663 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;
1664
1665 /// @private
1666 void _iceI_registryInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const RegistryInfoSeq&, const Ice::Context&) const;
1667
1668 /// Notifies the observer that a registry replica came up.
1669 /// @param registryReplica The registry state.
1670 /// @param context The request context.
1671 void registryUp(const RegistryInfo& registryReplica, const Ice::Context& context = Ice::noExplicitContext) const;
1672
1673 /// Notifies the observer that a registry replica came up.
1674 /// @param registryReplica The registry state.
1675 /// @param context The request context.
1676 /// @return A future that becomes available when the invocation completes.
1677 [[nodiscard]] std::future<void> registryUpAsync(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 response The response callback.
1682 /// @param exception The exception callback.
1683 /// @param sent The sent callback.
1684 /// @param context The request context.
1685 /// @return A function that can be called to cancel the invocation locally.
1686 // NOLINTNEXTLINE(modernize-use-nodiscard)
1687 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;
1688
1689 /// @private
1690 void _iceI_registryUp(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const RegistryInfo&, const Ice::Context&) const;
1691
1692 /// Notifies the observer that a registry replica went down.
1693 /// @param name The registry name.
1694 /// @param context The request context.
1695 void registryDown(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1696
1697 /// Notifies the observer that a registry replica went down.
1698 /// @param name The registry name.
1699 /// @param context The request context.
1700 /// @return A future that becomes available when the invocation completes.
1701 [[nodiscard]] std::future<void> registryDownAsync(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 response The response callback.
1706 /// @param exception The exception callback.
1707 /// @param sent The sent callback.
1708 /// @param context The request context.
1709 /// @return A function that can be called to cancel the invocation locally.
1710 // NOLINTNEXTLINE(modernize-use-nodiscard)
1711 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;
1712
1713 /// @private
1714 void _iceI_registryDown(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
1715
1716 /// Gets the type ID of the associated Slice interface.
1717 /// @return The string `"::IceGrid::RegistryObserver"`.
1718 static const char* ice_staticId() noexcept;
1719
1720 /// @private
1721 static RegistryObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return RegistryObserverPrx{std::move(ref)}; }
1722
1723 protected:
1724 /// @private
1725 RegistryObserverPrx() = default;
1726
1727 /// @private
1728 explicit RegistryObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1729 {
1730 }
1731 };
1732
1733 /// Monitors changes to the state of the nodes.
1734 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::NodeObserver`.
1735 /// @headerfile IceGrid/IceGrid.h
1736 class ICEGRID_API NodeObserverPrx : public Ice::Proxy<NodeObserverPrx, Ice::ObjectPrx>
1737 {
1738 public:
1739 /// Constructs a proxy from a Communicator and a proxy string.
1740 /// @param communicator The communicator of the new proxy.
1741 /// @param proxyString The proxy string to parse.
1742 NodeObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1743
1744 /// Copy constructor. Constructs with a copy of the contents of @p other.
1745 /// @param other The proxy to copy from.
1746 NodeObserverPrx(const NodeObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1747
1748 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
1749 /// @param other The proxy to move from.
1750 NodeObserverPrx(NodeObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1751
1752 ~NodeObserverPrx() override;
1753
1754 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
1755 /// @param rhs The proxy to copy from.
1756 /// @return A reference to this proxy.
1758 {
1759 if (this != &rhs)
1760 {
1762 }
1763 return *this;
1764 }
1765
1766 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
1767 /// @param rhs The proxy to move from.
1769 {
1770 if (this != &rhs)
1771 {
1772 Ice::ObjectPrx::operator=(std::move(rhs));
1773 }
1774 return *this;
1775 }
1776
1777 /// Provides the initial state of the nodes to the observer.
1778 /// @param nodes The current state of the nodes.
1779 /// @param context The request context.
1780 void nodeInit(const NodeDynamicInfoSeq& nodes, const Ice::Context& context = Ice::noExplicitContext) const;
1781
1782 /// Provides the initial state of the nodes to the observer.
1783 /// @param nodes The current state of the nodes.
1784 /// @param context The request context.
1785 /// @return A future that becomes available when the invocation completes.
1786 [[nodiscard]] std::future<void> nodeInitAsync(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 response The response callback.
1791 /// @param exception The exception callback.
1792 /// @param sent The sent callback.
1793 /// @param context The request context.
1794 /// @return A function that can be called to cancel the invocation locally.
1795 // NOLINTNEXTLINE(modernize-use-nodiscard)
1796 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;
1797
1798 /// @private
1799 void _iceI_nodeInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const NodeDynamicInfoSeq&, const Ice::Context&) const;
1800
1801 /// Notifies the observer that a node came up.
1802 /// @param node The node state.
1803 /// @param context The request context.
1804 void nodeUp(const NodeDynamicInfo& node, const Ice::Context& context = Ice::noExplicitContext) const;
1805
1806 /// Notifies the observer that a node came up.
1807 /// @param node The node state.
1808 /// @param context The request context.
1809 /// @return A future that becomes available when the invocation completes.
1810 [[nodiscard]] std::future<void> nodeUpAsync(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 response The response callback.
1815 /// @param exception The exception callback.
1816 /// @param sent The sent callback.
1817 /// @param context The request context.
1818 /// @return A function that can be called to cancel the invocation locally.
1819 // NOLINTNEXTLINE(modernize-use-nodiscard)
1820 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;
1821
1822 /// @private
1823 void _iceI_nodeUp(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const NodeDynamicInfo&, const Ice::Context&) const;
1824
1825 /// Notifies the observer that a node went down.
1826 /// @param name The node name.
1827 /// @param context The request context.
1828 void nodeDown(std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
1829
1830 /// Notifies the observer that a node went down.
1831 /// @param name The node name.
1832 /// @param context The request context.
1833 /// @return A future that becomes available when the invocation completes.
1834 [[nodiscard]] std::future<void> nodeDownAsync(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 response The response callback.
1839 /// @param exception The exception callback.
1840 /// @param sent The sent callback.
1841 /// @param context The request context.
1842 /// @return A function that can be called to cancel the invocation locally.
1843 // NOLINTNEXTLINE(modernize-use-nodiscard)
1844 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;
1845
1846 /// @private
1847 void _iceI_nodeDown(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
1848
1849 /// Notifies the observer that the state of a server changed.
1850 /// @param node The node hosting the server.
1851 /// @param updatedInfo The new server state.
1852 /// @param context The request context.
1853 void updateServer(std::string_view node, const ServerDynamicInfo& updatedInfo, const Ice::Context& context = Ice::noExplicitContext) 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 /// @return A future that becomes available when the invocation completes.
1860 [[nodiscard]] std::future<void> updateServerAsync(std::string_view node, const ServerDynamicInfo& updatedInfo, const Ice::Context& context = Ice::noExplicitContext) const;
1861
1862 /// Notifies the observer that the state of a server changed.
1863 /// @param node The node hosting the server.
1864 /// @param updatedInfo The new server state.
1865 /// @param response The response callback.
1866 /// @param exception The exception callback.
1867 /// @param sent The sent callback.
1868 /// @param context The request context.
1869 /// @return A function that can be called to cancel the invocation locally.
1870 // NOLINTNEXTLINE(modernize-use-nodiscard)
1871 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;
1872
1873 /// @private
1874 void _iceI_updateServer(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const ServerDynamicInfo&, const Ice::Context&) const;
1875
1876 /// Notifies the observer that the state of an object adapter changed.
1877 /// @param node The node hosting the adapter.
1878 /// @param updatedInfo The new adapter state.
1879 /// @param context The request context.
1880 void updateAdapter(std::string_view node, const AdapterDynamicInfo& updatedInfo, const Ice::Context& context = Ice::noExplicitContext) 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 /// @return A future that becomes available when the invocation completes.
1887 [[nodiscard]] std::future<void> updateAdapterAsync(std::string_view node, const AdapterDynamicInfo& updatedInfo, const Ice::Context& context = Ice::noExplicitContext) const;
1888
1889 /// Notifies the observer that the state of an object adapter changed.
1890 /// @param node The node hosting the adapter.
1891 /// @param updatedInfo The new adapter state.
1892 /// @param response The response callback.
1893 /// @param exception The exception callback.
1894 /// @param sent The sent callback.
1895 /// @param context The request context.
1896 /// @return A function that can be called to cancel the invocation locally.
1897 // NOLINTNEXTLINE(modernize-use-nodiscard)
1898 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;
1899
1900 /// @private
1901 void _iceI_updateAdapter(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const AdapterDynamicInfo&, const Ice::Context&) const;
1902
1903 /// Gets the type ID of the associated Slice interface.
1904 /// @return The string `"::IceGrid::NodeObserver"`.
1905 static const char* ice_staticId() noexcept;
1906
1907 /// @private
1908 static NodeObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return NodeObserverPrx{std::move(ref)}; }
1909
1910 protected:
1911 /// @private
1912 NodeObserverPrx() = default;
1913
1914 /// @private
1915 explicit NodeObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
1916 {
1917 }
1918 };
1919
1920 /// Monitors applications.
1921 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::ApplicationObserver`.
1922 /// @headerfile IceGrid/IceGrid.h
1923 class ICEGRID_API ApplicationObserverPrx : public Ice::Proxy<ApplicationObserverPrx, Ice::ObjectPrx>
1924 {
1925 public:
1926 /// Constructs a proxy from a Communicator and a proxy string.
1927 /// @param communicator The communicator of the new proxy.
1928 /// @param proxyString The proxy string to parse.
1929 ApplicationObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
1930
1931 /// Copy constructor. Constructs with a copy of the contents of @p other.
1932 /// @param other The proxy to copy from.
1933 ApplicationObserverPrx(const ApplicationObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
1934
1935 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
1936 /// @param other The proxy to move from.
1937 ApplicationObserverPrx(ApplicationObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
1938
1939 ~ApplicationObserverPrx() override;
1940
1941 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
1942 /// @param rhs The proxy to copy from.
1943 /// @return A reference to this proxy.
1945 {
1946 if (this != &rhs)
1947 {
1949 }
1950 return *this;
1951 }
1952
1953 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
1954 /// @param rhs The proxy to move from.
1956 {
1957 if (this != &rhs)
1958 {
1959 Ice::ObjectPrx::operator=(std::move(rhs));
1960 }
1961 return *this;
1962 }
1963
1964 /// Provides the initial application infos to the observer.
1965 /// @param serial The current serial number of the registry database. This serial number allows observers to
1966 /// make sure that their internal state is synchronized with the registry.
1967 /// @param applications The applications currently registered with the registry.
1968 /// @param context The request context.
1969 void applicationInit(std::int32_t serial, const ApplicationInfoSeq& applications, const Ice::Context& context = Ice::noExplicitContext) const;
1970
1971 /// Provides the initial application infos to the observer.
1972 /// @param serial The current serial number of the registry database. This serial number allows observers to
1973 /// make sure that their internal state is synchronized with the registry.
1974 /// @param applications The applications currently registered with the registry.
1975 /// @param context The request context.
1976 /// @return A future that becomes available when the invocation completes.
1977 [[nodiscard]] std::future<void> applicationInitAsync(std::int32_t serial, const ApplicationInfoSeq& applications, const Ice::Context& context = Ice::noExplicitContext) const;
1978
1979 /// Provides the initial application infos to the observer.
1980 /// @param serial The current serial number of the registry database. This serial number allows observers to
1981 /// make sure that their internal state is synchronized with the registry.
1982 /// @param applications The applications currently registered with the registry.
1983 /// @param response The response callback.
1984 /// @param exception The exception callback.
1985 /// @param sent The sent callback.
1986 /// @param context The request context.
1987 /// @return A function that can be called to cancel the invocation locally.
1988 // NOLINTNEXTLINE(modernize-use-nodiscard)
1989 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;
1990
1991 /// @private
1992 void _iceI_applicationInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::int32_t, const ApplicationInfoSeq&, const Ice::Context&) const;
1993
1994 /// Notifies the observer that an application was added.
1995 /// @param serial The new serial number of the registry database.
1996 /// @param desc The descriptor of the new application.
1997 /// @param context The request context.
1998 void applicationAdded(std::int32_t serial, const ApplicationInfo& desc, const Ice::Context& context = Ice::noExplicitContext) 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 /// @return A future that becomes available when the invocation completes.
2005 [[nodiscard]] std::future<void> applicationAddedAsync(std::int32_t serial, const ApplicationInfo& desc, const Ice::Context& context = Ice::noExplicitContext) const;
2006
2007 /// Notifies the observer that an application was added.
2008 /// @param serial The new serial number of the registry database.
2009 /// @param desc The descriptor of the new application.
2010 /// @param response The response callback.
2011 /// @param exception The exception callback.
2012 /// @param sent The sent callback.
2013 /// @param context The request context.
2014 /// @return A function that can be called to cancel the invocation locally.
2015 // NOLINTNEXTLINE(modernize-use-nodiscard)
2016 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;
2017
2018 /// @private
2019 void _iceI_applicationAdded(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::int32_t, const ApplicationInfo&, const Ice::Context&) const;
2020
2021 /// Notifies the observer that an application was removed.
2022 /// @param serial The new serial number of the registry database.
2023 /// @param name The name of the application that was removed.
2024 /// @param context The request context.
2025 void applicationRemoved(std::int32_t serial, std::string_view name, const Ice::Context& context = Ice::noExplicitContext) 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 /// @return A future that becomes available when the invocation completes.
2032 [[nodiscard]] std::future<void> applicationRemovedAsync(std::int32_t serial, std::string_view name, const Ice::Context& context = Ice::noExplicitContext) const;
2033
2034 /// Notifies the observer that an application was removed.
2035 /// @param serial The new serial number of the registry database.
2036 /// @param name The name of the application that was removed.
2037 /// @param response The response callback.
2038 /// @param exception The exception callback.
2039 /// @param sent The sent callback.
2040 /// @param context The request context.
2041 /// @return A function that can be called to cancel the invocation locally.
2042 // NOLINTNEXTLINE(modernize-use-nodiscard)
2043 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;
2044
2045 /// @private
2046 void _iceI_applicationRemoved(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::int32_t, std::string_view, const Ice::Context&) const;
2047
2048 /// Notifies the observer that an application was updated.
2049 /// @param serial The new serial number of the registry database.
2050 /// @param desc The descriptor of the update.
2051 /// @param context The request context.
2052 void applicationUpdated(std::int32_t serial, const ApplicationUpdateInfo& desc, const Ice::Context& context = Ice::noExplicitContext) 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 /// @return A future that becomes available when the invocation completes.
2059 [[nodiscard]] std::future<void> applicationUpdatedAsync(std::int32_t serial, const ApplicationUpdateInfo& desc, const Ice::Context& context = Ice::noExplicitContext) const;
2060
2061 /// Notifies the observer that an application was updated.
2062 /// @param serial The new serial number of the registry database.
2063 /// @param desc The descriptor of the update.
2064 /// @param response The response callback.
2065 /// @param exception The exception callback.
2066 /// @param sent The sent callback.
2067 /// @param context The request context.
2068 /// @return A function that can be called to cancel the invocation locally.
2069 // NOLINTNEXTLINE(modernize-use-nodiscard)
2070 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;
2071
2072 /// @private
2073 void _iceI_applicationUpdated(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::int32_t, const ApplicationUpdateInfo&, const Ice::Context&) const;
2074
2075 /// Gets the type ID of the associated Slice interface.
2076 /// @return The string `"::IceGrid::ApplicationObserver"`.
2077 static const char* ice_staticId() noexcept;
2078
2079 /// @private
2080 static ApplicationObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return ApplicationObserverPrx{std::move(ref)}; }
2081
2082 protected:
2083 /// @private
2084 ApplicationObserverPrx() = default;
2085
2086 /// @private
2087 explicit ApplicationObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
2088 {
2089 }
2090 };
2091
2092 /// Monitors dynamically-registered object adapters.
2093 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::AdapterObserver`.
2094 /// @headerfile IceGrid/IceGrid.h
2095 class ICEGRID_API AdapterObserverPrx : public Ice::Proxy<AdapterObserverPrx, Ice::ObjectPrx>
2096 {
2097 public:
2098 /// Constructs a proxy from a Communicator and a proxy string.
2099 /// @param communicator The communicator of the new proxy.
2100 /// @param proxyString The proxy string to parse.
2101 AdapterObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
2102
2103 /// Copy constructor. Constructs with a copy of the contents of @p other.
2104 /// @param other The proxy to copy from.
2105 AdapterObserverPrx(const AdapterObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
2106
2107 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
2108 /// @param other The proxy to move from.
2109 AdapterObserverPrx(AdapterObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
2110
2111 ~AdapterObserverPrx() override;
2112
2113 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
2114 /// @param rhs The proxy to copy from.
2115 /// @return A reference to this proxy.
2117 {
2118 if (this != &rhs)
2119 {
2121 }
2122 return *this;
2123 }
2124
2125 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
2126 /// @param rhs The proxy to move from.
2128 {
2129 if (this != &rhs)
2130 {
2131 Ice::ObjectPrx::operator=(std::move(rhs));
2132 }
2133 return *this;
2134 }
2135
2136 /// Provides the initial list of dynamically registered adapters to the observer.
2137 /// @param adpts The adapters that were dynamically registered with the registry.
2138 /// @param context The request context.
2139 void adapterInit(const AdapterInfoSeq& adpts, const Ice::Context& context = Ice::noExplicitContext) const;
2140
2141 /// Provides the initial list of dynamically registered adapters to the observer.
2142 /// @param adpts The adapters that were dynamically registered with the registry.
2143 /// @param context The request context.
2144 /// @return A future that becomes available when the invocation completes.
2145 [[nodiscard]] std::future<void> adapterInitAsync(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 response The response callback.
2150 /// @param exception The exception callback.
2151 /// @param sent The sent callback.
2152 /// @param context The request context.
2153 /// @return A function that can be called to cancel the invocation locally.
2154 // NOLINTNEXTLINE(modernize-use-nodiscard)
2155 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;
2156
2157 /// @private
2158 void _iceI_adapterInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const AdapterInfoSeq&, const Ice::Context&) const;
2159
2160 /// Notifies the observer that a dynamically-registered adapter was added.
2161 /// @param info The details of the new adapter.
2162 /// @param context The request context.
2163 void adapterAdded(const AdapterInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2164
2165 /// Notifies the observer that a dynamically-registered adapter was added.
2166 /// @param info The details of the new adapter.
2167 /// @param context The request context.
2168 /// @return A future that becomes available when the invocation completes.
2169 [[nodiscard]] std::future<void> adapterAddedAsync(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 response The response callback.
2174 /// @param exception The exception callback.
2175 /// @param sent The sent callback.
2176 /// @param context The request context.
2177 /// @return A function that can be called to cancel the invocation locally.
2178 // NOLINTNEXTLINE(modernize-use-nodiscard)
2179 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;
2180
2181 /// @private
2182 void _iceI_adapterAdded(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const AdapterInfo&, const Ice::Context&) const;
2183
2184 /// @param info The details of the updated adapter.
2185 /// @param context The request context.
2186 void adapterUpdated(const AdapterInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2187
2188 /// @param info The details of the updated adapter.
2189 /// @param context The request context.
2190 /// @return A future that becomes available when the invocation completes.
2191 [[nodiscard]] std::future<void> adapterUpdatedAsync(const AdapterInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2192
2193 /// @param info The details of the updated adapter.
2194 /// @param response The response callback.
2195 /// @param exception The exception callback.
2196 /// @param sent The sent callback.
2197 /// @param context The request context.
2198 /// @return A function that can be called to cancel the invocation locally.
2199 // NOLINTNEXTLINE(modernize-use-nodiscard)
2200 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;
2201
2202 /// @private
2203 void _iceI_adapterUpdated(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const AdapterInfo&, const Ice::Context&) const;
2204
2205 /// Notifies the observer that a dynamically-registered adapter was removed.
2206 /// @param id The ID of the removed adapter.
2207 /// @param context The request context.
2208 void adapterRemoved(std::string_view id, const Ice::Context& context = Ice::noExplicitContext) const;
2209
2210 /// Notifies the observer that a dynamically-registered adapter was removed.
2211 /// @param id The ID of the removed adapter.
2212 /// @param context The request context.
2213 /// @return A future that becomes available when the invocation completes.
2214 [[nodiscard]] std::future<void> adapterRemovedAsync(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 response The response callback.
2219 /// @param exception The exception callback.
2220 /// @param sent The sent callback.
2221 /// @param context The request context.
2222 /// @return A function that can be called to cancel the invocation locally.
2223 // NOLINTNEXTLINE(modernize-use-nodiscard)
2224 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;
2225
2226 /// @private
2227 void _iceI_adapterRemoved(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
2228
2229 /// Gets the type ID of the associated Slice interface.
2230 /// @return The string `"::IceGrid::AdapterObserver"`.
2231 static const char* ice_staticId() noexcept;
2232
2233 /// @private
2234 static AdapterObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return AdapterObserverPrx{std::move(ref)}; }
2235
2236 protected:
2237 /// @private
2238 AdapterObserverPrx() = default;
2239
2240 /// @private
2241 explicit AdapterObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
2242 {
2243 }
2244 };
2245
2246 /// Monitors well-known objects that are added, updated or removed using AdminPrx.
2247 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::ObjectObserver`.
2248 /// @headerfile IceGrid/IceGrid.h
2249 class ICEGRID_API ObjectObserverPrx : public Ice::Proxy<ObjectObserverPrx, Ice::ObjectPrx>
2250 {
2251 public:
2252 /// Constructs a proxy from a Communicator and a proxy string.
2253 /// @param communicator The communicator of the new proxy.
2254 /// @param proxyString The proxy string to parse.
2255 ObjectObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
2256
2257 /// Copy constructor. Constructs with a copy of the contents of @p other.
2258 /// @param other The proxy to copy from.
2259 ObjectObserverPrx(const ObjectObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
2260
2261 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
2262 /// @param other The proxy to move from.
2263 ObjectObserverPrx(ObjectObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
2264
2265 ~ObjectObserverPrx() override;
2266
2267 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
2268 /// @param rhs The proxy to copy from.
2269 /// @return A reference to this proxy.
2271 {
2272 if (this != &rhs)
2273 {
2275 }
2276 return *this;
2277 }
2278
2279 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
2280 /// @param rhs The proxy to move from.
2282 {
2283 if (this != &rhs)
2284 {
2285 Ice::ObjectPrx::operator=(std::move(rhs));
2286 }
2287 return *this;
2288 }
2289
2290 /// Provides the initial list of well-known objects to the observer.
2291 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
2292 /// @param context The request context.
2293 void objectInit(const ObjectInfoSeq& objects, const Ice::Context& context = Ice::noExplicitContext) const;
2294
2295 /// Provides the initial list of well-known objects to the observer.
2296 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
2297 /// @param context The request context.
2298 /// @return A future that becomes available when the invocation completes.
2299 [[nodiscard]] std::future<void> objectInitAsync(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 response The response callback.
2304 /// @param exception The exception callback.
2305 /// @param sent The sent callback.
2306 /// @param context The request context.
2307 /// @return A function that can be called to cancel the invocation locally.
2308 // NOLINTNEXTLINE(modernize-use-nodiscard)
2309 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;
2310
2311 /// @private
2312 void _iceI_objectInit(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ObjectInfoSeq&, const Ice::Context&) const;
2313
2314 /// Notifies the observer that a well-known object was added.
2315 /// @param info The details of the new object.
2316 /// @param context The request context.
2317 void objectAdded(const ObjectInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2318
2319 /// Notifies the observer that a well-known object was added.
2320 /// @param info The details of the new object.
2321 /// @param context The request context.
2322 /// @return A future that becomes available when the invocation completes.
2323 [[nodiscard]] std::future<void> objectAddedAsync(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 response The response callback.
2328 /// @param exception The exception callback.
2329 /// @param sent The sent callback.
2330 /// @param context The request context.
2331 /// @return A function that can be called to cancel the invocation locally.
2332 // NOLINTNEXTLINE(modernize-use-nodiscard)
2333 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;
2334
2335 /// @private
2336 void _iceI_objectAdded(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ObjectInfo&, const Ice::Context&) const;
2337
2338 /// Notifies the observer that a well-known object was updated.
2339 /// @param info The details of the updated object.
2340 /// @param context The request context.
2341 void objectUpdated(const ObjectInfo& info, const Ice::Context& context = Ice::noExplicitContext) const;
2342
2343 /// Notifies the observer that a well-known object was updated.
2344 /// @param info The details of the updated object.
2345 /// @param context The request context.
2346 /// @return A future that becomes available when the invocation completes.
2347 [[nodiscard]] std::future<void> objectUpdatedAsync(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 response The response callback.
2352 /// @param exception The exception callback.
2353 /// @param sent The sent callback.
2354 /// @param context The request context.
2355 /// @return A function that can be called to cancel the invocation locally.
2356 // NOLINTNEXTLINE(modernize-use-nodiscard)
2357 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;
2358
2359 /// @private
2360 void _iceI_objectUpdated(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ObjectInfo&, const Ice::Context&) const;
2361
2362 /// Notifies the observer that a well-known object was removed.
2363 /// @param id The identity of the removed object.
2364 /// @param context The request context.
2365 void objectRemoved(const ::Ice::Identity& id, const Ice::Context& context = Ice::noExplicitContext) const;
2366
2367 /// Notifies the observer that a well-known object was removed.
2368 /// @param id The identity of the removed object.
2369 /// @param context The request context.
2370 /// @return A future that becomes available when the invocation completes.
2371 [[nodiscard]] std::future<void> objectRemovedAsync(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 response The response callback.
2376 /// @param exception The exception callback.
2377 /// @param sent The sent callback.
2378 /// @param context The request context.
2379 /// @return A function that can be called to cancel the invocation locally.
2380 // NOLINTNEXTLINE(modernize-use-nodiscard)
2381 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;
2382
2383 /// @private
2384 void _iceI_objectRemoved(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ::Ice::Identity&, const Ice::Context&) const;
2385
2386 /// Gets the type ID of the associated Slice interface.
2387 /// @return The string `"::IceGrid::ObjectObserver"`.
2388 static const char* ice_staticId() noexcept;
2389
2390 /// @private
2391 static ObjectObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return ObjectObserverPrx{std::move(ref)}; }
2392
2393 protected:
2394 /// @private
2395 ObjectObserverPrx() = default;
2396
2397 /// @private
2398 explicit ObjectObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
2399 {
2400 }
2401 };
2402
2403 /// Represents an administrative session between an admin tool and an IceGrid registry.
2404 /// @remarks The Slice compiler generated this proxy class from Slice interface `::IceGrid::AdminSession`.
2405 /// @see RegistryPrx
2406 /// @headerfile IceGrid/IceGrid.h
2407 class ICEGRID_API AdminSessionPrx : public Ice::Proxy<AdminSessionPrx, ::Glacier2::SessionPrx>
2408 {
2409 public:
2410#if defined(__GNUC__) && !defined(__clang__)
2411# pragma GCC diagnostic push
2412# pragma GCC diagnostic ignored "-Wextra" // initialize all virtual bases in correct order
2413#endif
2414
2415 /// Constructs a proxy from a Communicator and a proxy string.
2416 /// @param communicator The communicator of the new proxy.
2417 /// @param proxyString The proxy string to parse.
2418 AdminSessionPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
2419
2420 /// Copy constructor. Constructs with a copy of the contents of @p other.
2421 /// @param other The proxy to copy from.
2422 AdminSessionPrx(const AdminSessionPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
2423
2424 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
2425 /// @param other The proxy to move from.
2426 AdminSessionPrx(AdminSessionPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
2427
2428 ~AdminSessionPrx() override;
2429
2430 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
2431 /// @param rhs The proxy to copy from.
2432 /// @return A reference to this proxy.
2434 {
2435 if (this != &rhs)
2436 {
2438 }
2439 return *this;
2440 }
2441
2442 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
2443 /// @param rhs The proxy to move from.
2445 {
2446 if (this != &rhs)
2447 {
2448 Ice::ObjectPrx::operator=(std::move(rhs));
2449 }
2450 return *this;
2451 }
2452
2453 /// Keeps the session alive.
2454 /// @param context The request context.
2455 [[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;
2456
2457 /// Keeps the session alive.
2458 /// @param context The request context.
2459 /// @return A future that becomes available when the invocation completes.
2460 [[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;
2461
2462 /// Keeps the session alive.
2463 /// @param response The response callback.
2464 /// @param exception The exception callback.
2465 /// @param sent The sent callback.
2466 /// @param context The request context.
2467 /// @return A function that can be called to cancel the invocation locally.
2468 // NOLINTNEXTLINE(modernize-use-nodiscard)
2469 [[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;
2470
2471 /// @private
2472 void _iceI_keepAlive(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
2473
2474 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
2475 /// by the session.
2476 /// @param context The request context.
2477 /// @return A proxy to the IceGrid admin object. This proxy is never null.
2478 std::optional<AdminPrx> getAdmin(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
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 future that becomes available when the invocation completes. This future holds:
2484 /// - A proxy to the IceGrid admin object. This proxy is never null.
2485 [[nodiscard]] std::future<std::optional<AdminPrx>> getAdminAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2486
2487 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
2488 /// by the session.
2489 /// @param response The response callback. It accepts:
2490 /// - A proxy to the IceGrid admin object. This proxy is never null.
2491 /// @param exception The exception callback.
2492 /// @param sent The sent callback.
2493 /// @param context The request context.
2494 /// @return A function that can be called to cancel the invocation locally.
2495 // NOLINTNEXTLINE(modernize-use-nodiscard)
2496 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;
2497
2498 /// @private
2499 void _iceI_getAdmin(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<AdminPrx>>>&, const Ice::Context&) const;
2500
2501 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
2502 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
2503 /// @param context The request context.
2504 /// @return A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
2505 std::optional<Ice::ObjectPrx> getAdminCallbackTemplate(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
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 future that becomes available when the invocation completes. This future holds:
2511 /// - A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
2512 [[nodiscard]] std::future<std::optional<Ice::ObjectPrx>> getAdminCallbackTemplateAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2513
2514 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
2515 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
2516 /// @param response The response callback. It accepts:
2517 /// - A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
2518 /// @param exception The exception callback.
2519 /// @param sent The sent callback.
2520 /// @param context The request context.
2521 /// @return A function that can be called to cancel the invocation locally.
2522 // NOLINTNEXTLINE(modernize-use-nodiscard)
2523 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;
2524
2525 /// @private
2526 void _iceI_getAdminCallbackTemplate(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<Ice::ObjectPrx>>>&, const Ice::Context&) const;
2527
2528 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
2529 /// @param registryObs The registry observer.
2530 /// @param nodeObs The node observer.
2531 /// @param appObs The application observer.
2532 /// @param adptObs The adapter observer.
2533 /// @param objObs The object observer.
2534 /// @param context The request context.
2535 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
2536 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;
2537
2538 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
2539 /// @param registryObs The registry observer.
2540 /// @param nodeObs The node observer.
2541 /// @param appObs The application observer.
2542 /// @param adptObs The adapter observer.
2543 /// @param objObs The object observer.
2544 /// @param context The request context.
2545 /// @return A future that becomes available when the invocation completes.
2546 [[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;
2547
2548 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
2549 /// @param registryObs The registry observer.
2550 /// @param nodeObs The node observer.
2551 /// @param appObs The application observer.
2552 /// @param adptObs The adapter observer.
2553 /// @param objObs The object observer.
2554 /// @param response The response callback.
2555 /// @param exception The exception callback.
2556 /// @param sent The sent callback.
2557 /// @param context The request context.
2558 /// @return A function that can be called to cancel the invocation locally.
2559 // NOLINTNEXTLINE(modernize-use-nodiscard)
2560 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;
2561
2562 /// @private
2563 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;
2564
2565 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
2566 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
2567 /// session.
2568 /// @param registryObs The registry observer identity.
2569 /// @param nodeObs The node observer identity.
2570 /// @param appObs The application observer.
2571 /// @param adptObs The adapter observer.
2572 /// @param objObs The object observer.
2573 /// @param context The request context.
2574 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
2575 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;
2576
2577 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
2578 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
2579 /// session.
2580 /// @param registryObs The registry observer identity.
2581 /// @param nodeObs The node observer identity.
2582 /// @param appObs The application observer.
2583 /// @param adptObs The adapter observer.
2584 /// @param objObs The object observer.
2585 /// @param context The request context.
2586 /// @return A future that becomes available when the invocation completes.
2587 [[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;
2588
2589 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
2590 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
2591 /// session.
2592 /// @param registryObs The registry observer identity.
2593 /// @param nodeObs The node observer identity.
2594 /// @param appObs The application observer.
2595 /// @param adptObs The adapter observer.
2596 /// @param objObs The object observer.
2597 /// @param response The response callback.
2598 /// @param exception The exception callback.
2599 /// @param sent The sent callback.
2600 /// @param context The request context.
2601 /// @return A function that can be called to cancel the invocation locally.
2602 // NOLINTNEXTLINE(modernize-use-nodiscard)
2603 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;
2604
2605 /// @private
2606 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;
2607
2608 /// Acquires an exclusive lock to start updating the registry applications.
2609 /// @param context The request context.
2610 /// @return The current serial.
2611 /// @throws IceGrid::AccessDeniedException Thrown when the exclusive lock can't be acquired. This might happen if the
2612 /// lock is currently acquired by another session.
2613 std::int32_t startUpdate(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2614
2615 /// Acquires an exclusive lock to start updating the registry applications.
2616 /// @param context The request context.
2617 /// @return A future that becomes available when the invocation completes. This future holds:
2618 /// - The current serial.
2619 [[nodiscard]] std::future<std::int32_t> startUpdateAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2620
2621 /// Acquires an exclusive lock to start updating the registry applications.
2622 /// @param response The response callback. It accepts:
2623 /// - The current serial.
2624 /// @param exception The exception callback.
2625 /// @param sent The sent callback.
2626 /// @param context The request context.
2627 /// @return A function that can be called to cancel the invocation locally.
2628 // NOLINTNEXTLINE(modernize-use-nodiscard)
2629 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;
2630
2631 /// @private
2632 void _iceI_startUpdate(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::int32_t>>&, const Ice::Context&) const;
2633
2634 /// Finishes updating the registry and releases the exclusive lock.
2635 /// @param context The request context.
2636 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock.
2638
2639 /// Finishes updating the registry and releases the exclusive lock.
2640 /// @param context The request context.
2641 /// @return A future that becomes available when the invocation completes.
2642 [[nodiscard]] std::future<void> finishUpdateAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2643
2644 /// Finishes updating the registry and releases the exclusive lock.
2645 /// @param response The response callback.
2646 /// @param exception The exception callback.
2647 /// @param sent The sent callback.
2648 /// @param context The request context.
2649 /// @return A function that can be called to cancel the invocation locally.
2650 // NOLINTNEXTLINE(modernize-use-nodiscard)
2651 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;
2652
2653 /// @private
2654 void _iceI_finishUpdate(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
2655
2656 /// Gets the name of the registry replica hosting this session.
2657 /// @param context The request context.
2658 /// @return The replica name of the registry.
2659 std::string getReplicaName(const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2660
2661 /// Gets the name of the registry replica hosting this session.
2662 /// @param context The request context.
2663 /// @return A future that becomes available when the invocation completes. This future holds:
2664 /// - The replica name of the registry.
2665 [[nodiscard]] std::future<std::string> getReplicaNameAsync(const Ice::Context& context = Ice::noExplicitContext) const;
2666
2667 /// Gets the name of the registry replica hosting this session.
2668 /// @param response The response callback. It accepts:
2669 /// - The replica name of the registry.
2670 /// @param exception The exception callback.
2671 /// @param sent The sent callback.
2672 /// @param context The request context.
2673 /// @return A function that can be called to cancel the invocation locally.
2674 // NOLINTNEXTLINE(modernize-use-nodiscard)
2675 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;
2676
2677 /// @private
2678 void _iceI_getReplicaName(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::string>>&, const Ice::Context&) const;
2679
2680 /// Opens a server log file for reading.
2681 /// @param id The server ID.
2682 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
2683 /// service deployment descriptor.
2684 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2685 /// Otherwise, the file is read from the last @p count lines.
2686 /// @param context The request context.
2687 /// @return An iterator to read the file. This proxy is never null.
2688 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
2689 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2690 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2691 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
2692 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)
2693
2694 /// Opens a server log file for reading.
2695 /// @param id The server ID.
2696 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
2697 /// service deployment descriptor.
2698 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2699 /// Otherwise, the file is read from the last @p count lines.
2700 /// @param context The request context.
2701 /// @return A future that becomes available when the invocation completes. This future holds:
2702 /// - An iterator to read the file. This proxy is never null.
2703 [[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;
2704
2705 /// Opens a server log file for reading.
2706 /// @param id The server ID.
2707 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
2708 /// service deployment descriptor.
2709 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2710 /// Otherwise, the file is read from the last @p count lines.
2711 /// @param response The response callback. It accepts:
2712 /// - An iterator to read the file. This proxy is never null.
2713 /// @param exception The exception callback.
2714 /// @param sent The sent callback.
2715 /// @param context The request context.
2716 /// @return A function that can be called to cancel the invocation locally.
2717 // NOLINTNEXTLINE(modernize-use-nodiscard)
2718 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;
2719
2720 /// @private
2721 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;
2722
2723 /// Opens a server stderr file for reading.
2724 /// @param id The server ID.
2725 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2726 /// Otherwise, the file is read from the last @p count lines.
2727 /// @param context The request context.
2728 /// @return An iterator to read the file. This proxy is never null.
2729 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
2730 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2731 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2732 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
2733 std::optional<FileIteratorPrx> openServerStdErr(std::string_view id, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2734
2735 /// Opens a server stderr file for reading.
2736 /// @param id The server ID.
2737 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2738 /// Otherwise, the file is read from the last @p count lines.
2739 /// @param context The request context.
2740 /// @return A future that becomes available when the invocation completes. This future holds:
2741 /// - An iterator to read the file. This proxy is never null.
2742 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openServerStdErrAsync(std::string_view id, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2743
2744 /// Opens a server stderr file for reading.
2745 /// @param id The server ID.
2746 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2747 /// Otherwise, the file is read from the last @p count lines.
2748 /// @param response The response callback. It accepts:
2749 /// - An iterator to read the file. This proxy is never null.
2750 /// @param exception The exception callback.
2751 /// @param sent The sent callback.
2752 /// @param context The request context.
2753 /// @return A function that can be called to cancel the invocation locally.
2754 // NOLINTNEXTLINE(modernize-use-nodiscard)
2755 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;
2756
2757 /// @private
2758 void _iceI_openServerStdErr(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2759
2760 /// Opens a server stdout file for reading.
2761 /// @param id The server id.
2762 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2763 /// Otherwise, the file is read from the last @p count lines.
2764 /// @param context The request context.
2765 /// @return An iterator to read the file. This proxy is never null.
2766 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
2767 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2768 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2769 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
2770 std::optional<FileIteratorPrx> openServerStdOut(std::string_view id, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2771
2772 /// Opens a server stdout file for reading.
2773 /// @param id The server id.
2774 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2775 /// Otherwise, the file is read from the last @p count lines.
2776 /// @param context The request context.
2777 /// @return A future that becomes available when the invocation completes. This future holds:
2778 /// - An iterator to read the file. This proxy is never null.
2779 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openServerStdOutAsync(std::string_view id, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2780
2781 /// Opens a server stdout file for reading.
2782 /// @param id The server id.
2783 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2784 /// Otherwise, the file is read from the last @p count lines.
2785 /// @param response The response callback. It accepts:
2786 /// - An iterator to read the file. This proxy is never null.
2787 /// @param exception The exception callback.
2788 /// @param sent The sent callback.
2789 /// @param context The request context.
2790 /// @return A function that can be called to cancel the invocation locally.
2791 // NOLINTNEXTLINE(modernize-use-nodiscard)
2792 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;
2793
2794 /// @private
2795 void _iceI_openServerStdOut(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2796
2797 /// Opens a node stderr file for reading.
2798 /// @param name The node name.
2799 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2800 /// Otherwise, the file is read from the last @p count lines.
2801 /// @param context The request context.
2802 /// @return An iterator to read the file. This proxy is never null.
2803 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2804 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
2805 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2806 std::optional<FileIteratorPrx> openNodeStdErr(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2807
2808 /// Opens a node stderr file for reading.
2809 /// @param name The node name.
2810 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2811 /// Otherwise, the file is read from the last @p count lines.
2812 /// @param context The request context.
2813 /// @return A future that becomes available when the invocation completes. This future holds:
2814 /// - An iterator to read the file. This proxy is never null.
2815 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openNodeStdErrAsync(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2816
2817 /// Opens a node stderr file for reading.
2818 /// @param name The node name.
2819 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2820 /// Otherwise, the file is read from the last @p count lines.
2821 /// @param response The response callback. It accepts:
2822 /// - An iterator to read the file. This proxy is never null.
2823 /// @param exception The exception callback.
2824 /// @param sent The sent callback.
2825 /// @param context The request context.
2826 /// @return A function that can be called to cancel the invocation locally.
2827 // NOLINTNEXTLINE(modernize-use-nodiscard)
2828 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;
2829
2830 /// @private
2831 void _iceI_openNodeStdErr(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2832
2833 /// Opens a node stdout file for reading.
2834 /// @param name The node name.
2835 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2836 /// Otherwise, the file is read from the last @p count lines.
2837 /// @param context The request context.
2838 /// @return An iterator to read the file. This proxy is never null.
2839 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2840 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
2841 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
2842 std::optional<FileIteratorPrx> openNodeStdOut(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2843
2844 /// Opens a node stdout file for reading.
2845 /// @param name The node name.
2846 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2847 /// Otherwise, the file is read from the last @p count lines.
2848 /// @param context The request context.
2849 /// @return A future that becomes available when the invocation completes. This future holds:
2850 /// - An iterator to read the file. This proxy is never null.
2851 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openNodeStdOutAsync(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2852
2853 /// Opens a node stdout file for reading.
2854 /// @param name The node name.
2855 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2856 /// Otherwise, the file is read from the last @p count lines.
2857 /// @param response The response callback. It accepts:
2858 /// - An iterator to read the file. This proxy is never null.
2859 /// @param exception The exception callback.
2860 /// @param sent The sent callback.
2861 /// @param context The request context.
2862 /// @return A function that can be called to cancel the invocation locally.
2863 // NOLINTNEXTLINE(modernize-use-nodiscard)
2864 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;
2865
2866 /// @private
2867 void _iceI_openNodeStdOut(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2868
2869 /// Opens a registry stderr file for reading.
2870 /// @param name The registry name.
2871 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2872 /// Otherwise, the file is read from the last @p count lines.
2873 /// @param context The request context.
2874 /// @return An iterator to read the file. This proxy is never null.
2875 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2876 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
2877 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
2878 std::optional<FileIteratorPrx> openRegistryStdErr(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2879
2880 /// Opens a registry stderr file for reading.
2881 /// @param name The registry name.
2882 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2883 /// Otherwise, the file is read from the last @p count lines.
2884 /// @param context The request context.
2885 /// @return A future that becomes available when the invocation completes. This future holds:
2886 /// - An iterator to read the file. This proxy is never null.
2887 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openRegistryStdErrAsync(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2888
2889 /// Opens a registry stderr file for reading.
2890 /// @param name The registry name.
2891 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2892 /// Otherwise, the file is read from the last @p count lines.
2893 /// @param response The response callback. It accepts:
2894 /// - An iterator to read the file. This proxy is never null.
2895 /// @param exception The exception callback.
2896 /// @param sent The sent callback.
2897 /// @param context The request context.
2898 /// @return A function that can be called to cancel the invocation locally.
2899 // NOLINTNEXTLINE(modernize-use-nodiscard)
2900 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;
2901
2902 /// @private
2903 void _iceI_openRegistryStdErr(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2904
2905 /// Opens a registry stdout file for reading.
2906 /// @param name The registry name.
2907 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2908 /// Otherwise, the file is read from the last @p count lines.
2909 /// @param context The request context.
2910 /// @return An iterator to read the file. This proxy is never null.
2911 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
2912 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
2913 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
2914 std::optional<FileIteratorPrx> openRegistryStdOut(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const; // NOLINT(modernize-use-nodiscard)
2915
2916 /// Opens a registry stdout file for reading.
2917 /// @param name The registry name.
2918 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2919 /// Otherwise, the file is read from the last @p count lines.
2920 /// @param context The request context.
2921 /// @return A future that becomes available when the invocation completes. This future holds:
2922 /// - An iterator to read the file. This proxy is never null.
2923 [[nodiscard]] std::future<std::optional<FileIteratorPrx>> openRegistryStdOutAsync(std::string_view name, std::int32_t count, const Ice::Context& context = Ice::noExplicitContext) const;
2924
2925 /// Opens a registry stdout file for reading.
2926 /// @param name The registry name.
2927 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
2928 /// Otherwise, the file is read from the last @p count lines.
2929 /// @param response The response callback. It accepts:
2930 /// - An iterator to read the file. This proxy is never null.
2931 /// @param exception The exception callback.
2932 /// @param sent The sent callback.
2933 /// @param context The request context.
2934 /// @return A function that can be called to cancel the invocation locally.
2935 // NOLINTNEXTLINE(modernize-use-nodiscard)
2936 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;
2937
2938 /// @private
2939 void _iceI_openRegistryStdOut(const std::shared_ptr<IceInternal::OutgoingAsyncT<std::optional<FileIteratorPrx>>>&, std::string_view, std::int32_t, const Ice::Context&) const;
2940
2941 /// Gets the type ID of the associated Slice interface.
2942 /// @return The string `"::IceGrid::AdminSession"`.
2943 static const char* ice_staticId() noexcept;
2944
2945 /// @private
2946 static AdminSessionPrx _fromReference(IceInternal::ReferencePtr ref) { return AdminSessionPrx{std::move(ref)}; }
2947
2948 protected:
2949 /// @private
2950 AdminSessionPrx() = default;
2951
2952 /// @private
2953 explicit AdminSessionPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
2954 {
2955 }
2956
2957#if defined(__GNUC__) && !defined(__clang__)
2958# pragma GCC diagnostic pop
2959#endif
2960 };
2961}
2962
2963namespace IceGrid
2964{
2965 /// Information about an Ice well-known object.
2966 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ObjectInfo`.
2967 /// @headerfile IceGrid/IceGrid.h
2969 {
2970 /// The proxy of the object.
2971 std::optional<Ice::ObjectPrx> proxy;
2972
2973 /// The type of the object.
2974 std::string type;
2975
2976 /// Creates a tuple with all the fields of this struct.
2977 /// @return A tuple with all the fields of this struct.
2978 [[nodiscard]] std::tuple<const std::optional<Ice::ObjectPrx>&, const std::string&> ice_tuple() const
2979 {
2980 return std::tie(proxy, type);
2981 }
2982
2983 /// Outputs the name and value of each field of this instance to the stream.
2984 /// @param os The output stream.
2985 ICEGRID_API void ice_printFields(std::ostream& os) const;
2986 };
2987
2988 /// Outputs the description of an ObjectInfo to a stream, including all its fields.
2989 /// @param os The output stream.
2990 /// @param value The instance to output.
2991 /// @return The output stream.
2992 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ObjectInfo& value);
2993
2994 /// Information about an adapter registered with the IceGrid registry.
2995 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::AdapterInfo`.
2996 /// @headerfile IceGrid/IceGrid.h
2998 {
2999 /// The ID of the adapter.
3000 std::string id;
3001
3002 /// A dummy direct proxy that contains the adapter endpoints.
3003 std::optional<Ice::ObjectPrx> proxy;
3004
3005 /// The replica group ID of the object adapter, or empty if the adapter doesn't belong to a replica group.
3006 std::string replicaGroupId;
3007
3008 /// Creates a tuple with all the fields of this struct.
3009 /// @return A tuple with all the fields of this struct.
3010 [[nodiscard]] std::tuple<const std::string&, const std::optional<Ice::ObjectPrx>&, const std::string&> ice_tuple() const
3011 {
3012 return std::tie(id, proxy, replicaGroupId);
3013 }
3014
3015 /// Outputs the name and value of each field of this instance to the stream.
3016 /// @param os The output stream.
3017 ICEGRID_API void ice_printFields(std::ostream& os) const;
3018 };
3019
3020 /// Outputs the description of an AdapterInfo to a stream, including all its fields.
3021 /// @param os The output stream.
3022 /// @param value The instance to output.
3023 /// @return The output stream.
3024 ICEGRID_API std::ostream& operator<<(std::ostream& os, const AdapterInfo& value);
3025
3026 /// Information about a server managed by an IceGrid node.
3027 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ServerInfo`.
3028 /// @headerfile IceGrid/IceGrid.h
3030 {
3031 /// The application to which this server belongs.
3032 std::string application;
3033
3034 /// The application UUID.
3035 std::string uuid;
3036
3037 /// The application revision.
3038 std::int32_t revision;
3039
3040 /// The IceGrid node where this server is deployed.
3041 std::string node;
3042
3043 /// The server descriptor.
3045
3046 /// The ID of the session which allocated the server.
3047 std::string sessionId;
3048
3049 /// Creates a tuple with all the fields of this struct.
3050 /// @return A tuple with all the fields of this struct.
3051 [[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
3052 {
3053 return std::tie(application, uuid, revision, node, descriptor, sessionId);
3054 }
3055
3056 /// Outputs the name and value of each field of this instance to the stream.
3057 /// @param os The output stream.
3058 ICEGRID_API void ice_printFields(std::ostream& os) const;
3059 };
3060
3061 /// Outputs the description of a ServerInfo to a stream, including all its fields.
3062 /// @param os The output stream.
3063 /// @param value The instance to output.
3064 /// @return The output stream.
3065 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ServerInfo& value);
3066
3067 /// Information about an IceGrid node.
3068 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::NodeInfo`.
3069 /// @headerfile IceGrid/IceGrid.h
3071 {
3072 /// The name of the node.
3073 std::string name;
3074
3075 /// The operating system name.
3076 std::string os;
3077
3078 /// The network name of the host running this node.
3079 std::string hostname;
3080
3081 /// The operation system release level.
3082 std::string release;
3083
3084 /// The operation system version.
3085 std::string version;
3086
3087 /// The machine hardware type.
3088 std::string machine;
3089
3090 /// The number of processor threads on the node.
3091 /// For example, nProcessors is 8 on a computer with a single quad-core processor and two threads per core.
3092 std::int32_t nProcessors;
3093
3094 /// The path to the node data directory.
3095 std::string dataDir;
3096
3097 /// Creates a tuple with all the fields of this struct.
3098 /// @return A tuple with all the fields of this struct.
3099 [[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
3100 {
3101 return std::tie(name, os, hostname, release, version, machine, nProcessors, dataDir);
3102 }
3103
3104 /// Outputs the name and value of each field of this instance to the stream.
3105 /// @param os The output stream.
3106 ICEGRID_API void ice_printFields(std::ostream& os) const;
3107 };
3108
3109 /// Outputs the description of a NodeInfo to a stream, including all its fields.
3110 /// @param os The output stream.
3111 /// @param value The instance to output.
3112 /// @return The output stream.
3113 ICEGRID_API std::ostream& operator<<(std::ostream& os, const NodeInfo& value);
3114
3115 /// Information about an IceGrid registry replica.
3116 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::RegistryInfo`.
3117 /// @headerfile IceGrid/IceGrid.h
3119 {
3120 /// The name of the registry.
3121 std::string name;
3122
3123 /// The network name of the host running this registry.
3124 std::string hostname;
3125
3126 /// Creates a tuple with all the fields of this struct.
3127 /// @return A tuple with all the fields of this struct.
3128 [[nodiscard]] std::tuple<const std::string&, const std::string&> ice_tuple() const
3129 {
3130 return std::tie(name, hostname);
3131 }
3132
3133 /// Outputs the name and value of each field of this instance to the stream.
3134 /// @param os The output stream.
3135 ICEGRID_API void ice_printFields(std::ostream& os) const;
3136 };
3137
3138 /// Outputs the description of a RegistryInfo to a stream, including all its fields.
3139 /// @param os The output stream.
3140 /// @param value The instance to output.
3141 /// @return The output stream.
3142 ICEGRID_API std::ostream& operator<<(std::ostream& os, const RegistryInfo& value);
3143
3144 /// Information about the load of a node.
3145 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::LoadInfo`.
3146 /// @headerfile IceGrid/IceGrid.h
3148 {
3149 /// The load average over the past minute.
3150 float avg1;
3151
3152 /// The load average over the past 5 minutes.
3153 float avg5;
3154
3155 /// The load average over the past 15 minutes.
3156 float avg15;
3157
3158 /// Creates a tuple with all the fields of this struct.
3159 /// @return A tuple with all the fields of this struct.
3160 [[nodiscard]] std::tuple<const float&, const float&, const float&> ice_tuple() const
3161 {
3162 return std::tie(avg1, avg5, avg15);
3163 }
3164
3165 /// Outputs the name and value of each field of this instance to the stream.
3166 /// @param os The output stream.
3167 ICEGRID_API void ice_printFields(std::ostream& os) const;
3168 };
3169
3170 /// Outputs the description of a LoadInfo to a stream, including all its fields.
3171 /// @param os The output stream.
3172 /// @param value The instance to output.
3173 /// @return The output stream.
3174 ICEGRID_API std::ostream& operator<<(std::ostream& os, const LoadInfo& value);
3175
3176 /// Information about an IceGrid application.
3177 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ApplicationInfo`.
3178 /// @headerfile IceGrid/IceGrid.h
3180 {
3181 /// Unique application identifier.
3182 std::string uuid;
3183
3184 /// The creation time.
3185 std::int64_t createTime;
3186
3187 /// The user who created the application.
3188 std::string createUser;
3189
3190 /// The last update time.
3191 std::int64_t updateTime;
3192
3193 /// The user who updated the application.
3194 std::string updateUser;
3195
3196 /// The application revision number.
3197 std::int32_t revision;
3198
3199 /// The application descriptor.
3201
3202 /// Creates a tuple with all the fields of this struct.
3203 /// @return A tuple with all the fields of this struct.
3204 [[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
3205 {
3207 }
3208
3209 /// Outputs the name and value of each field of this instance to the stream.
3210 /// @param os The output stream.
3211 ICEGRID_API void ice_printFields(std::ostream& os) const;
3212 };
3213
3214 /// Outputs the description of an ApplicationInfo to a stream, including all its fields.
3215 /// @param os The output stream.
3216 /// @param value The instance to output.
3217 /// @return The output stream.
3218 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ApplicationInfo& value);
3219
3220 /// Information about updates to an IceGrid application.
3221 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ApplicationUpdateInfo`.
3222 /// @headerfile IceGrid/IceGrid.h
3224 {
3225 /// The update time.
3226 std::int64_t updateTime;
3227
3228 /// The user who updated the application.
3229 std::string updateUser;
3230
3231 /// The application revision number.
3232 std::int32_t revision;
3233
3234 /// The update descriptor.
3236
3237 /// Creates a tuple with all the fields of this struct.
3238 /// @return A tuple with all the fields of this struct.
3239 [[nodiscard]] std::tuple<const std::int64_t&, const std::string&, const std::int32_t&, const ::IceGrid::ApplicationUpdateDescriptor&> ice_tuple() const
3240 {
3241 return std::tie(updateTime, updateUser, revision, descriptor);
3242 }
3243
3244 /// Outputs the name and value of each field of this instance to the stream.
3245 /// @param os The output stream.
3246 ICEGRID_API void ice_printFields(std::ostream& os) const;
3247 };
3248
3249 /// Outputs the description of an ApplicationUpdateInfo to a stream, including all its fields.
3250 /// @param os The output stream.
3251 /// @param value The instance to output.
3252 /// @return The output stream.
3253 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ApplicationUpdateInfo& value);
3254
3255 /// The exception that is thrown when IceGrid cannot deploy a server.
3256 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::DeploymentException`.
3257 /// @headerfile IceGrid/IceGrid.h
3258 class ICEGRID_API DeploymentException : public Ice::UserException
3259 {
3260 public:
3261 /// Default constructor.
3262 DeploymentException() noexcept = default;
3263
3264 /// One-shot constructor to initialize all data members.
3265 /// @param reason The reason for the failure.
3266 DeploymentException(std::string reason) noexcept :
3267 reason(std::move(reason))
3268 {
3269 }
3270
3271 /// Copy constructor.
3272 DeploymentException(const DeploymentException&) noexcept = default;
3273
3274 /// Creates a tuple with all the fields of this exception.
3275 /// @return A tuple with all the fields of this exception.
3276 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3277 {
3278 return std::tie(reason);
3279 }
3280
3281 void ice_printFields(std::ostream& os) const override;
3282 /// Gets the type ID of the associated Slice exception.
3283 /// @return The string `"::IceGrid::DeploymentException"`.
3284 static const char* ice_staticId() noexcept;
3285
3286 [[nodiscard]] const char* ice_id() const noexcept override;
3287
3288 void ice_throw() const override;
3289
3290 /// The reason for the failure.
3291 std::string reason;
3292
3293 protected:
3294 /// @private
3295 void _writeImpl(Ice::OutputStream*) const override;
3296
3297 /// @private
3298 void _readImpl(Ice::InputStream*) override;
3299 };
3300
3301 /// The exception that is thrown when IceGrid cannot reach a node.
3302 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::NodeUnreachableException`.
3303 /// @headerfile IceGrid/IceGrid.h
3304 class ICEGRID_API NodeUnreachableException : public Ice::UserException
3305 {
3306 public:
3307 /// Default constructor.
3308 NodeUnreachableException() noexcept = default;
3309
3310 /// One-shot constructor to initialize all data members.
3311 /// @param name The name of the node that is not reachable.
3312 /// @param reason The reason why the node couldn't be reached.
3313 NodeUnreachableException(std::string name, std::string reason) noexcept :
3314 name(std::move(name)),
3315 reason(std::move(reason))
3316 {
3317 }
3318
3319 /// Copy constructor.
3321
3322 /// Creates a tuple with all the fields of this exception.
3323 /// @return A tuple with all the fields of this exception.
3324 [[nodiscard]] std::tuple<const std::string&, const std::string&> ice_tuple() const
3325 {
3326 return std::tie(name, reason);
3327 }
3328
3329 void ice_printFields(std::ostream& os) const override;
3330 /// Gets the type ID of the associated Slice exception.
3331 /// @return The string `"::IceGrid::NodeUnreachableException"`.
3332 static const char* ice_staticId() noexcept;
3333
3334 [[nodiscard]] const char* ice_id() const noexcept override;
3335
3336 void ice_throw() const override;
3337
3338 /// The name of the node that is not reachable.
3339 std::string name;
3340
3341 /// The reason why the node couldn't be reached.
3342 std::string reason;
3343
3344 protected:
3345 /// @private
3346 void _writeImpl(Ice::OutputStream*) const override;
3347
3348 /// @private
3349 void _readImpl(Ice::InputStream*) override;
3350 };
3351
3352 /// The exception that is thrown when IceGrid cannot reach a registry.
3353 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::RegistryUnreachableException`.
3354 /// @headerfile IceGrid/IceGrid.h
3355 class ICEGRID_API RegistryUnreachableException : public Ice::UserException
3356 {
3357 public:
3358 /// Default constructor.
3359 RegistryUnreachableException() noexcept = default;
3360
3361 /// One-shot constructor to initialize all data members.
3362 /// @param name The name of the registry that is not reachable.
3363 /// @param reason The reason why the registry couldn't be reached.
3364 RegistryUnreachableException(std::string name, std::string reason) noexcept :
3365 name(std::move(name)),
3366 reason(std::move(reason))
3367 {
3368 }
3369
3370 /// Copy constructor.
3372
3373 /// Creates a tuple with all the fields of this exception.
3374 /// @return A tuple with all the fields of this exception.
3375 [[nodiscard]] std::tuple<const std::string&, const std::string&> ice_tuple() const
3376 {
3377 return std::tie(name, reason);
3378 }
3379
3380 void ice_printFields(std::ostream& os) const override;
3381 /// Gets the type ID of the associated Slice exception.
3382 /// @return The string `"::IceGrid::RegistryUnreachableException"`.
3383 static const char* ice_staticId() noexcept;
3384
3385 [[nodiscard]] const char* ice_id() const noexcept override;
3386
3387 void ice_throw() const override;
3388
3389 /// The name of the registry that is not reachable.
3390 std::string name;
3391
3392 /// The reason why the registry couldn't be reached.
3393 std::string reason;
3394
3395 protected:
3396 /// @private
3397 void _writeImpl(Ice::OutputStream*) const override;
3398
3399 /// @private
3400 void _readImpl(Ice::InputStream*) override;
3401 };
3402
3403 /// The exception that is thrown when an unknown signal is sent to a server.
3404 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::BadSignalException`.
3405 /// @headerfile IceGrid/IceGrid.h
3406 class ICEGRID_API BadSignalException : public Ice::UserException
3407 {
3408 public:
3409 /// Default constructor.
3410 BadSignalException() noexcept = default;
3411
3412 /// One-shot constructor to initialize all data members.
3413 /// @param reason The details of the unknown signal.
3414 BadSignalException(std::string reason) noexcept :
3415 reason(std::move(reason))
3416 {
3417 }
3418
3419 /// Copy constructor.
3420 BadSignalException(const BadSignalException&) noexcept = default;
3421
3422 /// Creates a tuple with all the fields of this exception.
3423 /// @return A tuple with all the fields of this exception.
3424 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3425 {
3426 return std::tie(reason);
3427 }
3428
3429 void ice_printFields(std::ostream& os) const override;
3430 /// Gets the type ID of the associated Slice exception.
3431 /// @return The string `"::IceGrid::BadSignalException"`.
3432 static const char* ice_staticId() noexcept;
3433
3434 [[nodiscard]] const char* ice_id() const noexcept override;
3435
3436 void ice_throw() const override;
3437
3438 /// The details of the unknown signal.
3439 std::string reason;
3440
3441 protected:
3442 /// @private
3443 void _writeImpl(Ice::OutputStream*) const override;
3444
3445 /// @private
3446 void _readImpl(Ice::InputStream*) override;
3447 };
3448
3449 /// The exception that is thrown when the registry update lock cannot be acquired.
3450 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::AccessDeniedException`.
3451 /// @headerfile IceGrid/IceGrid.h
3452 class ICEGRID_API AccessDeniedException : public Ice::UserException
3453 {
3454 public:
3455 /// Default constructor.
3456 AccessDeniedException() noexcept = default;
3457
3458 /// One-shot constructor to initialize all data members.
3459 /// @param lockUserId The id of the user holding the lock (if any).
3460 AccessDeniedException(std::string lockUserId) noexcept :
3461 lockUserId(std::move(lockUserId))
3462 {
3463 }
3464
3465 /// Copy constructor.
3467
3468 /// Creates a tuple with all the fields of this exception.
3469 /// @return A tuple with all the fields of this exception.
3470 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3471 {
3472 return std::tie(lockUserId);
3473 }
3474
3475 void ice_printFields(std::ostream& os) const override;
3476 /// Gets the type ID of the associated Slice exception.
3477 /// @return The string `"::IceGrid::AccessDeniedException"`.
3478 static const char* ice_staticId() noexcept;
3479
3480 [[nodiscard]] const char* ice_id() const noexcept override;
3481
3482 void ice_throw() const override;
3483
3484 /// The id of the user holding the lock (if any).
3485 std::string lockUserId;
3486
3487 protected:
3488 /// @private
3489 void _writeImpl(Ice::OutputStream*) const override;
3490
3491 /// @private
3492 void _readImpl(Ice::InputStream*) override;
3493 };
3494
3495 /// The exception that is thrown when a client is not allowed to create a session.
3496 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::PermissionDeniedException`.
3497 /// @headerfile IceGrid/IceGrid.h
3498 class ICEGRID_API PermissionDeniedException : public Ice::UserException
3499 {
3500 public:
3501 /// Default constructor.
3502 PermissionDeniedException() noexcept = default;
3503
3504 /// One-shot constructor to initialize all data members.
3505 /// @param reason The reason why permission was denied.
3506 PermissionDeniedException(std::string reason) noexcept :
3507 reason(std::move(reason))
3508 {
3509 }
3510
3511 /// Copy constructor.
3513
3514 /// Creates a tuple with all the fields of this exception.
3515 /// @return A tuple with all the fields of this exception.
3516 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3517 {
3518 return std::tie(reason);
3519 }
3520
3521 void ice_printFields(std::ostream& os) const override;
3522 /// Gets the type ID of the associated Slice exception.
3523 /// @return The string `"::IceGrid::PermissionDeniedException"`.
3524 static const char* ice_staticId() noexcept;
3525
3526 [[nodiscard]] const char* ice_id() const noexcept override;
3527
3528 void ice_throw() const override;
3529
3530 /// The reason why permission was denied.
3531 std::string reason;
3532
3533 protected:
3534 /// @private
3535 void _writeImpl(Ice::OutputStream*) const override;
3536
3537 /// @private
3538 void _readImpl(Ice::InputStream*) override;
3539 };
3540
3541 /// The exception that is thrown when an observer is already registered with the registry.
3542 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::ObserverAlreadyRegisteredException`.
3543 /// @see AdminSessionPrx::setObservers
3544 /// @see AdminSessionPrx::setObserversByIdentity
3545 /// @headerfile IceGrid/IceGrid.h
3546 class ICEGRID_API ObserverAlreadyRegisteredException : public Ice::UserException
3547 {
3548 public:
3549 /// Default constructor.
3551
3552 /// One-shot constructor to initialize all data members.
3553 /// @param id The identity of the observer.
3554 ObserverAlreadyRegisteredException(::Ice::Identity id) noexcept :
3555 id(std::move(id))
3556 {
3557 }
3558
3559 /// Copy constructor.
3561
3562 /// Creates a tuple with all the fields of this exception.
3563 /// @return A tuple with all the fields of this exception.
3564 [[nodiscard]] std::tuple<const ::Ice::Identity&> ice_tuple() const
3565 {
3566 return std::tie(id);
3567 }
3568
3569 void ice_printFields(std::ostream& os) const override;
3570 /// Gets the type ID of the associated Slice exception.
3571 /// @return The string `"::IceGrid::ObserverAlreadyRegisteredException"`.
3572 static const char* ice_staticId() noexcept;
3573
3574 [[nodiscard]] const char* ice_id() const noexcept override;
3575
3576 void ice_throw() const override;
3577
3578 /// The identity of the observer.
3579 ::Ice::Identity id;
3580
3581 protected:
3582 /// @private
3583 void _writeImpl(Ice::OutputStream*) const override;
3584
3585 /// @private
3586 void _readImpl(Ice::InputStream*) override;
3587 };
3588
3589 /// The exception that is thrown when a log file is not available.
3590 /// @remarks The Slice compiler generated this exception class from Slice exception `::IceGrid::FileNotAvailableException`.
3591 /// @see AdminSessionPrx::openServerStdOut
3592 /// @see AdminSessionPrx::openServerStdErr
3593 /// @see AdminSessionPrx::openNodeStdOut
3594 /// @see AdminSessionPrx::openNodeStdErr
3595 /// @see AdminSessionPrx::openRegistryStdOut
3596 /// @see AdminSessionPrx::openRegistryStdErr
3597 /// @headerfile IceGrid/IceGrid.h
3598 class ICEGRID_API FileNotAvailableException : public Ice::UserException
3599 {
3600 public:
3601 /// Default constructor.
3602 FileNotAvailableException() noexcept = default;
3603
3604 /// One-shot constructor to initialize all data members.
3605 /// @param reason The reason for the failure.
3606 FileNotAvailableException(std::string reason) noexcept :
3607 reason(std::move(reason))
3608 {
3609 }
3610
3611 /// Copy constructor.
3613
3614 /// Creates a tuple with all the fields of this exception.
3615 /// @return A tuple with all the fields of this exception.
3616 [[nodiscard]] std::tuple<const std::string&> ice_tuple() const
3617 {
3618 return std::tie(reason);
3619 }
3620
3621 void ice_printFields(std::ostream& os) const override;
3622 /// Gets the type ID of the associated Slice exception.
3623 /// @return The string `"::IceGrid::FileNotAvailableException"`.
3624 static const char* ice_staticId() noexcept;
3625
3626 [[nodiscard]] const char* ice_id() const noexcept override;
3627
3628 void ice_throw() const override;
3629
3630 /// The reason for the failure.
3631 std::string reason;
3632
3633 protected:
3634 /// @private
3635 void _writeImpl(Ice::OutputStream*) const override;
3636
3637 /// @private
3638 void _readImpl(Ice::InputStream*) override;
3639 };
3640
3641 /// Dynamic information about the state of a server.
3642 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::ServerDynamicInfo`.
3643 /// @headerfile IceGrid/IceGrid.h
3645 {
3646 /// The ID of the server.
3647 std::string id;
3648
3649 /// The state of the server.
3651
3652 /// The process ID of the server.
3653 std::int32_t pid;
3654
3655 /// Indicates whether the server is enabled.
3657
3658 /// Creates a tuple with all the fields of this struct.
3659 /// @return A tuple with all the fields of this struct.
3660 [[nodiscard]] std::tuple<const std::string&, const ::IceGrid::ServerState&, const std::int32_t&, const bool&> ice_tuple() const
3661 {
3662 return std::tie(id, state, pid, enabled);
3663 }
3664
3665 /// Outputs the name and value of each field of this instance to the stream.
3666 /// @param os The output stream.
3667 ICEGRID_API void ice_printFields(std::ostream& os) const;
3668 };
3669
3670 /// Outputs the description of a ServerDynamicInfo to a stream, including all its fields.
3671 /// @param os The output stream.
3672 /// @param value The instance to output.
3673 /// @return The output stream.
3674 ICEGRID_API std::ostream& operator<<(std::ostream& os, const ServerDynamicInfo& value);
3675
3676 /// Dynamic information about the state of an adapter.
3677 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::AdapterDynamicInfo`.
3678 /// @headerfile IceGrid/IceGrid.h
3680 {
3681 /// The id of the adapter.
3682 std::string id;
3683
3684 /// The direct proxy containing the adapter endpoints. This proxy is never null.
3685 std::optional<Ice::ObjectPrx> proxy;
3686
3687 /// Creates a tuple with all the fields of this struct.
3688 /// @return A tuple with all the fields of this struct.
3689 [[nodiscard]] std::tuple<const std::string&, const std::optional<Ice::ObjectPrx>&> ice_tuple() const
3690 {
3691 return std::tie(id, proxy);
3692 }
3693
3694 /// Outputs the name and value of each field of this instance to the stream.
3695 /// @param os The output stream.
3696 ICEGRID_API void ice_printFields(std::ostream& os) const;
3697 };
3698
3699 /// Outputs the description of an AdapterDynamicInfo to a stream, including all its fields.
3700 /// @param os The output stream.
3701 /// @param value The instance to output.
3702 /// @return The output stream.
3703 ICEGRID_API std::ostream& operator<<(std::ostream& os, const AdapterDynamicInfo& value);
3704
3705 /// Dynamic information about the state of a node.
3706 /// @remarks The Slice compiler generated this struct from Slice struct `::IceGrid::NodeDynamicInfo`.
3707 /// @headerfile IceGrid/IceGrid.h
3709 {
3710 /// Some static information about the node.
3712
3713 /// The dynamic information of the servers deployed on this node.
3715
3716 /// The dynamic information of the adapters deployed on this node.
3718
3719 /// Creates a tuple with all the fields of this struct.
3720 /// @return A tuple with all the fields of this struct.
3721 [[nodiscard]] std::tuple<const ::IceGrid::NodeInfo&, const ::IceGrid::ServerDynamicInfoSeq&, const ::IceGrid::AdapterDynamicInfoSeq&> ice_tuple() const
3722 {
3723 return std::tie(info, servers, adapters);
3724 }
3725
3726 /// Outputs the name and value of each field of this instance to the stream.
3727 /// @param os The output stream.
3728 ICEGRID_API void ice_printFields(std::ostream& os) const;
3729 };
3730
3731 /// Outputs the description of a NodeDynamicInfo to a stream, including all its fields.
3732 /// @param os The output stream.
3733 /// @param value The instance to output.
3734 /// @return The output stream.
3735 ICEGRID_API std::ostream& operator<<(std::ostream& os, const NodeDynamicInfo& value);
3736
3737 /// @cond INTERNAL
3738 using Ice::Tuple::operator<;
3739 using Ice::Tuple::operator<=;
3740 using Ice::Tuple::operator>;
3741 using Ice::Tuple::operator>=;
3742 using Ice::Tuple::operator==;
3743 using Ice::Tuple::operator!=;
3744 /// @endcond
3745}
3746
3747namespace IceGrid
3748{
3749 /// Provides administrative access to an IceGrid deployment.
3750 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::Admin`.
3751 /// @headerfile IceGrid/IceGrid.h
3752 class ICEGRID_API Admin : public virtual Ice::Object
3753 {
3754 public:
3755 /// The associated proxy type.
3756 using ProxyType = AdminPrx;
3757
3758 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
3759 /// @param request The incoming request.
3760 /// @param sendResponse The callback to send the response.
3761 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
3762
3763 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
3764
3765 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
3766
3767 /// Adds an application to IceGrid.
3768 /// @param descriptor The application descriptor.
3769 /// @param current The Current object of the incoming request.
3770 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3771 /// session is holding the lock.
3772 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3773 virtual void addApplication(ApplicationDescriptor descriptor, const Ice::Current& current) = 0;
3774
3775 /// @private
3776 void _iceD_addApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3777
3778 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
3779 /// @param descriptor The new application descriptor.
3780 /// @param current The Current object of the incoming request.
3781 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3782 /// session is holding the lock.
3783 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3784 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3785 virtual void syncApplication(ApplicationDescriptor descriptor, const Ice::Current& current) = 0;
3786
3787 /// @private
3788 void _iceD_syncApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3789
3790 /// Updates a deployed application.
3791 /// @param descriptor The update descriptor.
3792 /// @param current The Current object of the incoming request.
3793 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3794 /// session is holding the lock.
3795 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3796 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3797 virtual void updateApplication(ApplicationUpdateDescriptor descriptor, const Ice::Current& current) = 0;
3798
3799 /// @private
3800 void _iceD_updateApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3801
3802 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
3803 /// only if no server restarts are necessary for the update of the application. If some servers need to be
3804 /// restarted, the synchronization is rejected with a DeploymentException.
3805 /// @param descriptor The application descriptor.
3806 /// @param current The Current object of the incoming request.
3807 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3808 /// session is holding the lock.
3809 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3810 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3811 virtual void syncApplicationWithoutRestart(ApplicationDescriptor descriptor, const Ice::Current& current) = 0;
3812
3813 /// @private
3814 void _iceD_syncApplicationWithoutRestart(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3815
3816 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
3817 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
3818 /// DeploymentException.
3819 /// @param descriptor The update descriptor.
3820 /// @param current The Current object of the incoming request.
3821 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3822 /// session is holding the lock.
3823 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3824 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3825 virtual void updateApplicationWithoutRestart(ApplicationUpdateDescriptor descriptor, const Ice::Current& current) = 0;
3826
3827 /// @private
3828 void _iceD_updateApplicationWithoutRestart(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3829
3830 /// Removes an application from IceGrid.
3831 /// @param name The application name.
3832 /// @param current The Current object of the incoming request.
3833 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3834 /// session is holding the lock.
3835 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3836 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3837 virtual void removeApplication(std::string name, const Ice::Current& current) = 0;
3838
3839 /// @private
3840 void _iceD_removeApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3841
3842 /// Instantiates a server template.
3843 /// @param application The application name.
3844 /// @param node The name of the node where the server will be deployed.
3845 /// @param desc The descriptor of the server instance to deploy.
3846 /// @param current The Current object of the incoming request.
3847 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
3848 /// session is holding the lock.
3849 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3850 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
3851 virtual void instantiateServer(std::string application, std::string node, ServerInstanceDescriptor desc, const Ice::Current& current) = 0;
3852
3853 /// @private
3854 void _iceD_instantiateServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3855
3856 /// Gets an application descriptor.
3857 /// @param name The application name.
3858 /// @param current The Current object of the incoming request.
3859 /// @return The application descriptor.
3860 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
3861 [[nodiscard]] virtual ApplicationInfo getApplicationInfo(std::string name, const Ice::Current& current) const = 0;
3862
3863 /// @private
3864 void _iceD_getApplicationInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3865
3866 /// Gets the default application descriptor.
3867 /// @param current The Current object of the incoming request.
3868 /// @return The default application descriptor.
3869 /// @throws IceGrid::DeploymentException Thrown when the default application descriptor is invalid or unreachable.
3870 [[nodiscard]] virtual ApplicationDescriptor getDefaultApplicationDescriptor(const Ice::Current& current) const = 0;
3871
3872 /// @private
3873 void _iceD_getDefaultApplicationDescriptor(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3874
3875 /// Gets all the IceGrid applications currently registered.
3876 /// @param current The Current object of the incoming request.
3877 /// @return The application names.
3878 [[nodiscard]] virtual ::Ice::StringSeq getAllApplicationNames(const Ice::Current& current) const = 0;
3879
3880 /// @private
3881 void _iceD_getAllApplicationNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3882
3883 /// Gets information about a server.
3884 /// @param id The server ID.
3885 /// @param current The Current object of the incoming request.
3886 /// @return The server information.
3887 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3888 [[nodiscard]] virtual ServerInfo getServerInfo(std::string id, const Ice::Current& current) const = 0;
3889
3890 /// @private
3891 void _iceD_getServerInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3892
3893 /// Gets the state of a server.
3894 /// @param id The server ID.
3895 /// @param current The Current object of the incoming request.
3896 /// @return The server state.
3897 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3898 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3899 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3900 [[nodiscard]] virtual ServerState getServerState(std::string id, const Ice::Current& current) const = 0;
3901
3902 /// @private
3903 void _iceD_getServerState(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3904
3905 /// Gets the system process ID of a server. The process ID is operating system dependent.
3906 /// @param id The server ID.
3907 /// @param current The Current object of the incoming request.
3908 /// @return The process ID.
3909 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3910 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3911 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3912 [[nodiscard]] virtual std::int32_t getServerPid(std::string id, const Ice::Current& current) const = 0;
3913
3914 /// @private
3915 void _iceD_getServerPid(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3916
3917 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
3918 /// changing its identity: use the server ID as name and the returned category as category.
3919 /// @param current The Current object of the incoming request.
3920 /// @return The category for server admin objects.
3921 [[nodiscard]] virtual std::string getServerAdminCategory(const Ice::Current& current) const = 0;
3922
3923 /// @private
3924 void _iceD_getServerAdminCategory(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3925
3926 /// Gets a proxy to the admin object of a server.
3927 /// @param id The server ID.
3928 /// @param current The Current object of the incoming request.
3929 /// @return A proxy to the admin object of the server. This proxy is never null.
3930 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3931 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3932 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3933 [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getServerAdmin(std::string id, const Ice::Current& current) const = 0;
3934
3935 /// @private
3936 void _iceD_getServerAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3937
3938 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
3939 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
3940 /// default.
3941 /// @param id The server ID.
3942 /// @param enabled `true` to enable the server, `false` to disable it.
3943 /// @param current The Current object of the incoming request.
3944 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3945 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3946 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3947 virtual void enableServer(std::string id, bool enabled, const Ice::Current& current) = 0;
3948
3949 /// @private
3950 void _iceD_enableServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3951
3952 /// Checks if the server is enabled or disabled.
3953 /// @param id The server ID.
3954 /// @param current The Current object of the incoming request.
3955 /// @return `true` if the server is enabled, `false` otherwise.
3956 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3957 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3958 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3959 [[nodiscard]] virtual bool isServerEnabled(std::string id, const Ice::Current& current) const = 0;
3960
3961 /// @private
3962 void _iceD_isServerEnabled(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
3963
3964 /// Starts a server and waits for its activation.
3965 /// @param id The server id.
3966 /// @param response The response callback.
3967 /// @param exception The exception callback.
3968 /// @param current The Current object of the incoming request.
3969 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3970 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3971 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3972 /// @throws IceGrid::ServerStartException Thrown when the server startup failed.
3973 virtual void startServerAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
3974
3975 /// @private
3976 void _iceD_startServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3977
3978 /// Stops a server.
3979 /// @param id The server ID.
3980 /// @param response The response callback.
3981 /// @param exception The exception callback.
3982 /// @param current The Current object of the incoming request.
3983 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3984 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3985 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
3986 /// @throws IceGrid::ServerStopException Thrown when the server stop failed.
3987 virtual void stopServerAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
3988
3989 /// @private
3990 void _iceD_stopServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
3991
3992 /// Sends a signal to a server.
3993 /// @param id The server ID.
3994 /// @param signal The signal, for example SIGTERM or 15.
3995 /// @param current The Current object of the incoming request.
3996 /// @throws IceGrid::BadSignalException Thrown when the signal is not recognized by the target server.
3997 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
3998 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
3999 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4000 virtual void sendSignal(std::string id, std::string signal, const Ice::Current& current) = 0;
4001
4002 /// @private
4003 void _iceD_sendSignal(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4004
4005 /// Gets the IDs of all the servers registered with IceGrid.
4006 /// @param current The Current object of the incoming request.
4007 /// @return The server IDs.
4008 [[nodiscard]] virtual ::Ice::StringSeq getAllServerIds(const Ice::Current& current) const = 0;
4009
4010 /// @private
4011 void _iceD_getAllServerIds(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4012
4013 /// Gets adapter information for the replica group or adapter with the given ID.
4014 /// @param id The adapter or replica group ID.
4015 /// @param current The Current object of the incoming request.
4016 /// @return A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
4017 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
4018 /// replica group.
4019 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter or replica group doesn't exist.
4020 [[nodiscard]] virtual AdapterInfoSeq getAdapterInfo(std::string id, const Ice::Current& current) const = 0;
4021
4022 /// @private
4023 void _iceD_getAdapterInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4024
4025 /// Removes the adapter with the given ID.
4026 /// @param id The adapter ID.
4027 /// @param current The Current object of the incoming request.
4028 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter doesn't exist.
4029 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4030 virtual void removeAdapter(std::string id, const Ice::Current& current) = 0;
4031
4032 /// @private
4033 void _iceD_removeAdapter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4034
4035 /// Gets the IDs of all adapters registered with IceGrid.
4036 /// @param current The Current object of the incoming request.
4037 /// @return The adapter IDs.
4038 [[nodiscard]] virtual ::Ice::StringSeq getAllAdapterIds(const Ice::Current& current) const = 0;
4039
4040 /// @private
4041 void _iceD_getAllAdapterIds(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4042
4043 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
4044 /// object must be reachable.
4045 /// @param obj A proxy to the object. This proxy is never null.
4046 /// @param current The Current object of the incoming request.
4047 /// @throws IceGrid::DeploymentException Thrown when the object can't be added.
4048 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
4049 virtual void addObject(std::optional<Ice::ObjectPrx> obj, const Ice::Current& current) = 0;
4050
4051 /// @private
4052 void _iceD_addObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4053
4054 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
4055 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
4056 /// @param obj A proxy to the object. This proxy is never null.
4057 /// @param current The Current object of the incoming request.
4058 /// @throws IceGrid::DeploymentException Thrown when the object can't be updated.
4059 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
4060 virtual void updateObject(std::optional<Ice::ObjectPrx> obj, const Ice::Current& current) = 0;
4061
4062 /// @private
4063 void _iceD_updateObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4064
4065 /// Adds an object to the object registry and explicitly specifies its type.
4066 /// @param obj The object to be added to the registry. The proxy is never null.
4067 /// @param type The type name.
4068 /// @param current The Current object of the incoming request.
4069 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4070 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
4071 virtual void addObjectWithType(std::optional<Ice::ObjectPrx> obj, std::string type, const Ice::Current& current) = 0;
4072
4073 /// @private
4074 void _iceD_addObjectWithType(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4075
4076 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
4077 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
4078 /// @param id The identity of the object to remove.
4079 /// @param current The Current object of the incoming request.
4080 /// @throws IceGrid::DeploymentException Thrown when the object can't be removed.
4081 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
4082 virtual void removeObject(::Ice::Identity id, const Ice::Current& current) = 0;
4083
4084 /// @private
4085 void _iceD_removeObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4086
4087 /// Gets the object info for the object.
4088 /// @param id The identity of the object.
4089 /// @param current The Current object of the incoming request.
4090 /// @return The object info.
4091 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
4092 [[nodiscard]] virtual ObjectInfo getObjectInfo(::Ice::Identity id, const Ice::Current& current) const = 0;
4093
4094 /// @private
4095 void _iceD_getObjectInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4096
4097 /// Gets the object info of all the registered objects with a given type.
4098 /// @param type The type name.
4099 /// @param current The Current object of the incoming request.
4100 /// @return The object infos.
4101 [[nodiscard]] virtual ObjectInfoSeq getObjectInfosByType(std::string type, const Ice::Current& current) const = 0;
4102
4103 /// @private
4104 void _iceD_getObjectInfosByType(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4105
4106 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
4107 /// @param expr The expression to match against the stringified identities of registered objects. The expression
4108 /// may contain a trailing wildcard (`*`) character.
4109 /// @param current The Current object of the incoming request.
4110 /// @return All the object infos with a stringified identity matching the given expression.
4111 [[nodiscard]] virtual ObjectInfoSeq getAllObjectInfos(std::string expr, const Ice::Current& current) const = 0;
4112
4113 /// @private
4114 void _iceD_getAllObjectInfos(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4115
4116 /// Pings an IceGrid node to see if it is active.
4117 /// @param name The node name.
4118 /// @param current The Current object of the incoming request.
4119 /// @return `true` if the node ping succeeded, `false` otherwise.
4120 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4121 [[nodiscard]] virtual bool pingNode(std::string name, const Ice::Current& current) const = 0;
4122
4123 /// @private
4124 void _iceD_pingNode(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4125
4126 /// Gets the load averages of a node.
4127 /// @param name The node name.
4128 /// @param current The Current object of the incoming request.
4129 /// @return The node load information.
4130 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4131 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4132 [[nodiscard]] virtual LoadInfo getNodeLoad(std::string name, const Ice::Current& current) const = 0;
4133
4134 /// @private
4135 void _iceD_getNodeLoad(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4136
4137 /// Gets the node information of a node.
4138 /// @param name The node name.
4139 /// @param current The Current object of the incoming request.
4140 /// @return The node information.
4141 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4142 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4143 [[nodiscard]] virtual NodeInfo getNodeInfo(std::string name, const Ice::Current& current) const = 0;
4144
4145 /// @private
4146 void _iceD_getNodeInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4147
4148 /// Gets a proxy to the admin object of an IceGrid node.
4149 /// @param name The IceGrid node name.
4150 /// @param current The Current object of the incoming request.
4151 /// @return A proxy to the IceGrid node's admin object. This proxy is never null.
4152 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4153 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4154 [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getNodeAdmin(std::string name, const Ice::Current& current) const = 0;
4155
4156 /// @private
4157 void _iceD_getNodeAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4158
4159 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
4160 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
4161 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
4162 /// @param name The node name.
4163 /// @param current The Current object of the incoming request.
4164 /// @return The number of processor sockets or 1 if the number of sockets can't be determined.
4165 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4166 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4167 [[nodiscard]] virtual std::int32_t getNodeProcessorSocketCount(std::string name, const Ice::Current& current) const = 0;
4168
4169 /// @private
4170 void _iceD_getNodeProcessorSocketCount(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4171
4172 /// Shuts down an IceGrid node.
4173 /// @param name The node name.
4174 /// @param current The Current object of the incoming request.
4175 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4176 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4177 virtual void shutdownNode(std::string name, const Ice::Current& current) = 0;
4178
4179 /// @private
4180 void _iceD_shutdownNode(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4181
4182 /// Get the hostname of a node.
4183 /// @param name The node name.
4184 /// @param current The Current object of the incoming request.
4185 /// @return The node hostname.
4186 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4187 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4188 [[nodiscard]] virtual std::string getNodeHostname(std::string name, const Ice::Current& current) const = 0;
4189
4190 /// @private
4191 void _iceD_getNodeHostname(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4192
4193 /// Gets the names of all IceGrid nodes currently registered.
4194 /// @param current The Current object of the incoming request.
4195 /// @return The node names.
4196 [[nodiscard]] virtual ::Ice::StringSeq getAllNodeNames(const Ice::Current& current) const = 0;
4197
4198 /// @private
4199 void _iceD_getAllNodeNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4200
4201 /// Pings an IceGrid registry to see if it is active.
4202 /// @param name The registry name.
4203 /// @param current The Current object of the incoming request.
4204 /// @return `true` if the registry ping succeeded, `false` otherwise.
4205 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4206 [[nodiscard]] virtual bool pingRegistry(std::string name, const Ice::Current& current) const = 0;
4207
4208 /// @private
4209 void _iceD_pingRegistry(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4210
4211 /// Gets the registry information of an IceGrid registry.
4212 /// @param name The registry name.
4213 /// @param current The Current object of the incoming request.
4214 /// @return The registry information.
4215 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4216 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
4217 [[nodiscard]] virtual RegistryInfo getRegistryInfo(std::string name, const Ice::Current& current) const = 0;
4218
4219 /// @private
4220 void _iceD_getRegistryInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4221
4222 /// Gets a proxy to the admin object of an IceGrid registry.
4223 /// @param name The registry name.
4224 /// @param current The Current object of the incoming request.
4225 /// @return A proxy to the admin object of an IceGrid registry. This proxy is never null.
4226 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4227 [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getRegistryAdmin(std::string name, const Ice::Current& current) const = 0;
4228
4229 /// @private
4230 void _iceD_getRegistryAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4231
4232 /// Shuts down an IceGrid registry.
4233 /// @param name The registry name.
4234 /// @param current The Current object of the incoming request.
4235 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4236 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
4237 virtual void shutdownRegistry(std::string name, const Ice::Current& current) = 0;
4238
4239 /// @private
4240 void _iceD_shutdownRegistry(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4241
4242 /// Gets the names of all the IceGrid registries currently registered.
4243 /// @param current The Current object of the incoming request.
4244 /// @return The registry names.
4245 [[nodiscard]] virtual ::Ice::StringSeq getAllRegistryNames(const Ice::Current& current) const = 0;
4246
4247 /// @private
4248 void _iceD_getAllRegistryNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4249
4250 /// Shuts down the IceGrid registry.
4251 /// @param current The Current object of the incoming request.
4252 virtual void shutdown(const Ice::Current& current) = 0;
4253
4254 /// @private
4255 void _iceD_shutdown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4256
4257 /// Gets the type ID of the associated Slice interface.
4258 /// @return The string `"::IceGrid::Admin"`.
4259 static const char* ice_staticId() noexcept;
4260 };
4261
4262 /// A shared pointer to an Admin.
4263 using AdminPtr = std::shared_ptr<Admin>;
4264
4265 /// Iterates over an IceGrid log file.
4266 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::FileIterator`.
4267 /// @headerfile IceGrid/IceGrid.h
4268 class ICEGRID_API FileIterator : public virtual Ice::Object
4269 {
4270 public:
4271 /// The associated proxy type.
4272 using ProxyType = FileIteratorPrx;
4273
4274 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4275 /// @param request The incoming request.
4276 /// @param sendResponse The callback to send the response.
4277 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4278
4279 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4280
4281 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4282
4283 /// Read lines from the log file.
4284 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
4285 /// message doesn't exceed the given size.
4286 /// @param[out] lines The lines read from the file. If there was nothing to read from the file since the last call to
4287 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
4288 /// newline character should be added when writing the last line to the to the output device).
4289 /// @param current The Current object of the incoming request.
4290 /// @return `true` if EOF is encountered.
4291 /// @throws IceGrid::FileNotAvailableException Thrown when the implementation failed to read from the file.
4292 virtual bool read(std::int32_t size, ::Ice::StringSeq& lines, const Ice::Current& current) = 0;
4293
4294 /// @private
4295 void _iceD_read(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4296
4297 /// Destroys the iterator.
4298 /// @param current The Current object of the incoming request.
4299 virtual void destroy(const Ice::Current& current) = 0;
4300
4301 /// @private
4302 void _iceD_destroy(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4303
4304 /// Gets the type ID of the associated Slice interface.
4305 /// @return The string `"::IceGrid::FileIterator"`.
4306 static const char* ice_staticId() noexcept;
4307 };
4308
4309 /// A shared pointer to a FileIterator.
4310 using FileIteratorPtr = std::shared_ptr<FileIterator>;
4311
4312 /// Monitors changes to the state of the registries.
4313 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::RegistryObserver`.
4314 /// @headerfile IceGrid/IceGrid.h
4315 class ICEGRID_API RegistryObserver : public virtual Ice::Object
4316 {
4317 public:
4318 /// The associated proxy type.
4320
4321 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4322 /// @param request The incoming request.
4323 /// @param sendResponse The callback to send the response.
4324 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4325
4326 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4327
4328 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4329
4330 /// Provides the initial state of the registries to the observer.
4331 /// @param registries The current state of the registries.
4332 /// @param current The Current object of the incoming request.
4333 virtual void registryInit(RegistryInfoSeq registries, const Ice::Current& current) = 0;
4334
4335 /// @private
4336 void _iceD_registryInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4337
4338 /// Notifies the observer that a registry replica came up.
4339 /// @param registryReplica The registry state.
4340 /// @param current The Current object of the incoming request.
4341 virtual void registryUp(RegistryInfo registryReplica, const Ice::Current& current) = 0;
4342
4343 /// @private
4344 void _iceD_registryUp(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4345
4346 /// Notifies the observer that a registry replica went down.
4347 /// @param name The registry name.
4348 /// @param current The Current object of the incoming request.
4349 virtual void registryDown(std::string name, const Ice::Current& current) = 0;
4350
4351 /// @private
4352 void _iceD_registryDown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4353
4354 /// Gets the type ID of the associated Slice interface.
4355 /// @return The string `"::IceGrid::RegistryObserver"`.
4356 static const char* ice_staticId() noexcept;
4357 };
4358
4359 /// A shared pointer to a RegistryObserver.
4360 using RegistryObserverPtr = std::shared_ptr<RegistryObserver>;
4361
4362 /// Monitors changes to the state of the nodes.
4363 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::NodeObserver`.
4364 /// @headerfile IceGrid/IceGrid.h
4365 class ICEGRID_API NodeObserver : public virtual Ice::Object
4366 {
4367 public:
4368 /// The associated proxy type.
4370
4371 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4372 /// @param request The incoming request.
4373 /// @param sendResponse The callback to send the response.
4374 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4375
4376 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4377
4378 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4379
4380 /// Provides the initial state of the nodes to the observer.
4381 /// @param nodes The current state of the nodes.
4382 /// @param current The Current object of the incoming request.
4383 virtual void nodeInit(NodeDynamicInfoSeq nodes, const Ice::Current& current) = 0;
4384
4385 /// @private
4386 void _iceD_nodeInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4387
4388 /// Notifies the observer that a node came up.
4389 /// @param node The node state.
4390 /// @param current The Current object of the incoming request.
4391 virtual void nodeUp(NodeDynamicInfo node, const Ice::Current& current) = 0;
4392
4393 /// @private
4394 void _iceD_nodeUp(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4395
4396 /// Notifies the observer that a node went down.
4397 /// @param name The node name.
4398 /// @param current The Current object of the incoming request.
4399 virtual void nodeDown(std::string name, const Ice::Current& current) = 0;
4400
4401 /// @private
4402 void _iceD_nodeDown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4403
4404 /// Notifies the observer that the state of a server changed.
4405 /// @param node The node hosting the server.
4406 /// @param updatedInfo The new server state.
4407 /// @param current The Current object of the incoming request.
4408 virtual void updateServer(std::string node, ServerDynamicInfo updatedInfo, const Ice::Current& current) = 0;
4409
4410 /// @private
4411 void _iceD_updateServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4412
4413 /// Notifies the observer that the state of an object adapter changed.
4414 /// @param node The node hosting the adapter.
4415 /// @param updatedInfo The new adapter state.
4416 /// @param current The Current object of the incoming request.
4417 virtual void updateAdapter(std::string node, AdapterDynamicInfo updatedInfo, const Ice::Current& current) = 0;
4418
4419 /// @private
4420 void _iceD_updateAdapter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4421
4422 /// Gets the type ID of the associated Slice interface.
4423 /// @return The string `"::IceGrid::NodeObserver"`.
4424 static const char* ice_staticId() noexcept;
4425 };
4426
4427 /// A shared pointer to a NodeObserver.
4428 using NodeObserverPtr = std::shared_ptr<NodeObserver>;
4429
4430 /// Monitors applications.
4431 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::ApplicationObserver`.
4432 /// @headerfile IceGrid/IceGrid.h
4433 class ICEGRID_API ApplicationObserver : public virtual Ice::Object
4434 {
4435 public:
4436 /// The associated proxy type.
4438
4439 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4440 /// @param request The incoming request.
4441 /// @param sendResponse The callback to send the response.
4442 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4443
4444 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4445
4446 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4447
4448 /// Provides the initial application infos to the observer.
4449 /// @param serial The current serial number of the registry database. This serial number allows observers to
4450 /// make sure that their internal state is synchronized with the registry.
4451 /// @param applications The applications currently registered with the registry.
4452 /// @param current The Current object of the incoming request.
4453 virtual void applicationInit(std::int32_t serial, ApplicationInfoSeq applications, const Ice::Current& current) = 0;
4454
4455 /// @private
4456 void _iceD_applicationInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4457
4458 /// Notifies the observer that an application was added.
4459 /// @param serial The new serial number of the registry database.
4460 /// @param desc The descriptor of the new application.
4461 /// @param current The Current object of the incoming request.
4462 virtual void applicationAdded(std::int32_t serial, ApplicationInfo desc, const Ice::Current& current) = 0;
4463
4464 /// @private
4465 void _iceD_applicationAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4466
4467 /// Notifies the observer that an application was removed.
4468 /// @param serial The new serial number of the registry database.
4469 /// @param name The name of the application that was removed.
4470 /// @param current The Current object of the incoming request.
4471 virtual void applicationRemoved(std::int32_t serial, std::string name, const Ice::Current& current) = 0;
4472
4473 /// @private
4474 void _iceD_applicationRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4475
4476 /// Notifies the observer that an application was updated.
4477 /// @param serial The new serial number of the registry database.
4478 /// @param desc The descriptor of the update.
4479 /// @param current The Current object of the incoming request.
4480 virtual void applicationUpdated(std::int32_t serial, ApplicationUpdateInfo desc, const Ice::Current& current) = 0;
4481
4482 /// @private
4483 void _iceD_applicationUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4484
4485 /// Gets the type ID of the associated Slice interface.
4486 /// @return The string `"::IceGrid::ApplicationObserver"`.
4487 static const char* ice_staticId() noexcept;
4488 };
4489
4490 /// A shared pointer to an ApplicationObserver.
4492
4493 /// Monitors dynamically-registered object adapters.
4494 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::AdapterObserver`.
4495 /// @headerfile IceGrid/IceGrid.h
4496 class ICEGRID_API AdapterObserver : public virtual Ice::Object
4497 {
4498 public:
4499 /// The associated proxy type.
4501
4502 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4503 /// @param request The incoming request.
4504 /// @param sendResponse The callback to send the response.
4505 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4506
4507 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4508
4509 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4510
4511 /// Provides the initial list of dynamically registered adapters to the observer.
4512 /// @param adpts The adapters that were dynamically registered with the registry.
4513 /// @param current The Current object of the incoming request.
4514 virtual void adapterInit(AdapterInfoSeq adpts, const Ice::Current& current) = 0;
4515
4516 /// @private
4517 void _iceD_adapterInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4518
4519 /// Notifies the observer that a dynamically-registered adapter was added.
4520 /// @param info The details of the new adapter.
4521 /// @param current The Current object of the incoming request.
4522 virtual void adapterAdded(AdapterInfo info, const Ice::Current& current) = 0;
4523
4524 /// @private
4525 void _iceD_adapterAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4526
4527 /// @param info The details of the updated adapter.
4528 /// @param current The Current object of the incoming request.
4529 virtual void adapterUpdated(AdapterInfo info, const Ice::Current& current) = 0;
4530
4531 /// @private
4532 void _iceD_adapterUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4533
4534 /// Notifies the observer that a dynamically-registered adapter was removed.
4535 /// @param id The ID of the removed adapter.
4536 /// @param current The Current object of the incoming request.
4537 virtual void adapterRemoved(std::string id, const Ice::Current& current) = 0;
4538
4539 /// @private
4540 void _iceD_adapterRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4541
4542 /// Gets the type ID of the associated Slice interface.
4543 /// @return The string `"::IceGrid::AdapterObserver"`.
4544 static const char* ice_staticId() noexcept;
4545 };
4546
4547 /// A shared pointer to an AdapterObserver.
4548 using AdapterObserverPtr = std::shared_ptr<AdapterObserver>;
4549
4550 /// Monitors well-known objects that are added, updated or removed using AdminPrx.
4551 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::ObjectObserver`.
4552 /// @headerfile IceGrid/IceGrid.h
4553 class ICEGRID_API ObjectObserver : public virtual Ice::Object
4554 {
4555 public:
4556 /// The associated proxy type.
4558
4559 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4560 /// @param request The incoming request.
4561 /// @param sendResponse The callback to send the response.
4562 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4563
4564 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4565
4566 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4567
4568 /// Provides the initial list of well-known objects to the observer.
4569 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
4570 /// @param current The Current object of the incoming request.
4571 virtual void objectInit(ObjectInfoSeq objects, const Ice::Current& current) = 0;
4572
4573 /// @private
4574 void _iceD_objectInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4575
4576 /// Notifies the observer that a well-known object was added.
4577 /// @param info The details of the new object.
4578 /// @param current The Current object of the incoming request.
4579 virtual void objectAdded(ObjectInfo info, const Ice::Current& current) = 0;
4580
4581 /// @private
4582 void _iceD_objectAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4583
4584 /// Notifies the observer that a well-known object was updated.
4585 /// @param info The details of the updated object.
4586 /// @param current The Current object of the incoming request.
4587 virtual void objectUpdated(ObjectInfo info, const Ice::Current& current) = 0;
4588
4589 /// @private
4590 void _iceD_objectUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4591
4592 /// Notifies the observer that a well-known object was removed.
4593 /// @param id The identity of the removed object.
4594 /// @param current The Current object of the incoming request.
4595 virtual void objectRemoved(::Ice::Identity id, const Ice::Current& current) = 0;
4596
4597 /// @private
4598 void _iceD_objectRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4599
4600 /// Gets the type ID of the associated Slice interface.
4601 /// @return The string `"::IceGrid::ObjectObserver"`.
4602 static const char* ice_staticId() noexcept;
4603 };
4604
4605 /// A shared pointer to an ObjectObserver.
4606 using ObjectObserverPtr = std::shared_ptr<ObjectObserver>;
4607
4608 /// Represents an administrative session between an admin tool and an IceGrid registry.
4609 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::AdminSession`.
4610 /// @see RegistryPrx
4611 /// @headerfile IceGrid/IceGrid.h
4612 class ICEGRID_API AdminSession : public virtual ::Glacier2::Session
4613 {
4614 public:
4615 /// The associated proxy type.
4616 using ProxyType = AdminSessionPrx;
4617
4618 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4619 /// @param request The incoming request.
4620 /// @param sendResponse The callback to send the response.
4621 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4622
4623 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4624
4625 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4626
4627 /// Keeps the session alive.
4628 /// @param current The Current object of the incoming request.
4629 virtual void keepAlive(const Ice::Current& current) = 0;
4630
4631 /// @private
4632 void _iceD_keepAlive(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4633
4634 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
4635 /// by the session.
4636 /// @param current The Current object of the incoming request.
4637 /// @return A proxy to the IceGrid admin object. This proxy is never null.
4638 [[nodiscard]] virtual std::optional<AdminPrx> getAdmin(const Ice::Current& current) const = 0;
4639
4640 /// @private
4641 void _iceD_getAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4642
4643 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
4644 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
4645 /// @param current The Current object of the incoming request.
4646 /// @return A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
4647 [[nodiscard]] virtual std::optional<Ice::ObjectPrx> getAdminCallbackTemplate(const Ice::Current& current) const = 0;
4648
4649 /// @private
4650 void _iceD_getAdminCallbackTemplate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4651
4652 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
4653 /// @param registryObs The registry observer.
4654 /// @param nodeObs The node observer.
4655 /// @param appObs The application observer.
4656 /// @param adptObs The adapter observer.
4657 /// @param objObs The object observer.
4658 /// @param current The Current object of the incoming request.
4659 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
4660 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;
4661
4662 /// @private
4663 void _iceD_setObservers(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4664
4665 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
4666 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
4667 /// session.
4668 /// @param registryObs The registry observer identity.
4669 /// @param nodeObs The node observer identity.
4670 /// @param appObs The application observer.
4671 /// @param adptObs The adapter observer.
4672 /// @param objObs The object observer.
4673 /// @param current The Current object of the incoming request.
4674 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
4675 virtual void setObserversByIdentity(::Ice::Identity registryObs, ::Ice::Identity nodeObs, ::Ice::Identity appObs, ::Ice::Identity adptObs, ::Ice::Identity objObs, const Ice::Current& current) = 0;
4676
4677 /// @private
4678 void _iceD_setObserversByIdentity(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4679
4680 /// Acquires an exclusive lock to start updating the registry applications.
4681 /// @param current The Current object of the incoming request.
4682 /// @return The current serial.
4683 /// @throws IceGrid::AccessDeniedException Thrown when the exclusive lock can't be acquired. This might happen if the
4684 /// lock is currently acquired by another session.
4685 virtual std::int32_t startUpdate(const Ice::Current& current) = 0;
4686
4687 /// @private
4688 void _iceD_startUpdate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4689
4690 /// Finishes updating the registry and releases the exclusive lock.
4691 /// @param current The Current object of the incoming request.
4692 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock.
4693 virtual void finishUpdate(const Ice::Current& current) = 0;
4694
4695 /// @private
4696 void _iceD_finishUpdate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4697
4698 /// Gets the name of the registry replica hosting this session.
4699 /// @param current The Current object of the incoming request.
4700 /// @return The replica name of the registry.
4701 [[nodiscard]] virtual std::string getReplicaName(const Ice::Current& current) const = 0;
4702
4703 /// @private
4704 void _iceD_getReplicaName(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4705
4706 /// Opens a server log file for reading.
4707 /// @param id The server ID.
4708 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
4709 /// service deployment descriptor.
4710 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4711 /// Otherwise, the file is read from the last @p count lines.
4712 /// @param current The Current object of the incoming request.
4713 /// @return An iterator to read the file. This proxy is never null.
4714 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
4715 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4716 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4717 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4718 virtual std::optional<FileIteratorPrx> openServerLog(std::string id, std::string path, std::int32_t count, const Ice::Current& current) = 0;
4719
4720 /// @private
4721 void _iceD_openServerLog(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4722
4723 /// Opens a server stderr file for reading.
4724 /// @param id The server ID.
4725 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4726 /// Otherwise, the file is read from the last @p count lines.
4727 /// @param current The Current object of the incoming request.
4728 /// @return An iterator to read the file. This proxy is never null.
4729 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
4730 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4731 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4732 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4733 virtual std::optional<FileIteratorPrx> openServerStdErr(std::string id, std::int32_t count, const Ice::Current& current) = 0;
4734
4735 /// @private
4736 void _iceD_openServerStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4737
4738 /// Opens a server stdout file for reading.
4739 /// @param id The server id.
4740 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4741 /// Otherwise, the file is read from the last @p count lines.
4742 /// @param current The Current object of the incoming request.
4743 /// @return An iterator to read the file. This proxy is never null.
4744 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
4745 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4746 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4747 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4748 virtual std::optional<FileIteratorPrx> openServerStdOut(std::string id, std::int32_t count, const Ice::Current& current) = 0;
4749
4750 /// @private
4751 void _iceD_openServerStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4752
4753 /// Opens a node stderr file for reading.
4754 /// @param name The node name.
4755 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4756 /// Otherwise, the file is read from the last @p count lines.
4757 /// @param current The Current object of the incoming request.
4758 /// @return An iterator to read the file. This proxy is never null.
4759 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4760 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4761 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4762 virtual std::optional<FileIteratorPrx> openNodeStdErr(std::string name, std::int32_t count, const Ice::Current& current) = 0;
4763
4764 /// @private
4765 void _iceD_openNodeStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4766
4767 /// Opens a node stdout file for reading.
4768 /// @param name The node name.
4769 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4770 /// Otherwise, the file is read from the last @p count lines.
4771 /// @param current The Current object of the incoming request.
4772 /// @return An iterator to read the file. This proxy is never null.
4773 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4774 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
4775 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4776 virtual std::optional<FileIteratorPrx> openNodeStdOut(std::string name, std::int32_t count, const Ice::Current& current) = 0;
4777
4778 /// @private
4779 void _iceD_openNodeStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4780
4781 /// Opens a registry stderr file for reading.
4782 /// @param name The registry name.
4783 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4784 /// Otherwise, the file is read from the last @p count lines.
4785 /// @param current The Current object of the incoming request.
4786 /// @return An iterator to read the file. This proxy is never null.
4787 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4788 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4789 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
4790 virtual std::optional<FileIteratorPrx> openRegistryStdErr(std::string name, std::int32_t count, const Ice::Current& current) = 0;
4791
4792 /// @private
4793 void _iceD_openRegistryStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4794
4795 /// Opens a registry stdout file for reading.
4796 /// @param name The registry name.
4797 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
4798 /// Otherwise, the file is read from the last @p count lines.
4799 /// @param current The Current object of the incoming request.
4800 /// @return An iterator to read the file. This proxy is never null.
4801 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
4802 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
4803 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
4804 virtual std::optional<FileIteratorPrx> openRegistryStdOut(std::string name, std::int32_t count, const Ice::Current& current) = 0;
4805
4806 /// @private
4807 void _iceD_openRegistryStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4808
4809 /// Gets the type ID of the associated Slice interface.
4810 /// @return The string `"::IceGrid::AdminSession"`.
4811 static const char* ice_staticId() noexcept;
4812 };
4813
4814 /// A shared pointer to an AdminSession.
4815 using AdminSessionPtr = std::shared_ptr<AdminSession>;
4816}
4817
4818namespace IceGrid
4819{
4820 /// Provides administrative access to an IceGrid deployment.
4821 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::Admin`.
4822 /// @headerfile IceGrid/IceGrid.h
4823 class ICEGRID_API AsyncAdmin : public virtual Ice::Object
4824 {
4825 public:
4826 /// The associated proxy type.
4828
4829 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
4830 /// @param request The incoming request.
4831 /// @param sendResponse The callback to send the response.
4832 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
4833
4834 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
4835
4836 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
4837
4838 /// Adds an application to IceGrid.
4839 /// @param descriptor The application descriptor.
4840 /// @param response The response callback.
4841 /// @param exception The exception callback.
4842 /// @param current The Current object of the incoming request.
4843 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4844 /// session is holding the lock.
4845 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4846 virtual void addApplicationAsync(ApplicationDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4847
4848 /// @private
4849 void _iceD_addApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4850
4851 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.
4852 /// @param descriptor The new application descriptor.
4853 /// @param response The response callback.
4854 /// @param exception The exception callback.
4855 /// @param current The Current object of the incoming request.
4856 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4857 /// session is holding the lock.
4858 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4859 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4860 virtual void syncApplicationAsync(ApplicationDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4861
4862 /// @private
4863 void _iceD_syncApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4864
4865 /// Updates a deployed application.
4866 /// @param descriptor The update descriptor.
4867 /// @param response The response callback.
4868 /// @param exception The exception callback.
4869 /// @param current The Current object of the incoming request.
4870 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4871 /// session is holding the lock.
4872 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4873 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4874 virtual void updateApplicationAsync(ApplicationUpdateDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4875
4876 /// @private
4877 void _iceD_updateApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4878
4879 /// Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor
4880 /// only if no server restarts are necessary for the update of the application. If some servers need to be
4881 /// restarted, the synchronization is rejected with a DeploymentException.
4882 /// @param descriptor The application descriptor.
4883 /// @param response The response callback.
4884 /// @param exception The exception callback.
4885 /// @param current The Current object of the incoming request.
4886 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4887 /// session is holding the lock.
4888 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4889 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4890 virtual void syncApplicationWithoutRestartAsync(ApplicationDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4891
4892 /// @private
4893 void _iceD_syncApplicationWithoutRestart(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4894
4895 /// Updates a deployed application. This operation succeeds only when no server restarts are necessary for the
4896 /// update of the application. If some servers need to be restarted, the synchronization is rejected with a
4897 /// DeploymentException.
4898 /// @param descriptor The update descriptor.
4899 /// @param response The response callback.
4900 /// @param exception The exception callback.
4901 /// @param current The Current object of the incoming request.
4902 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4903 /// session is holding the lock.
4904 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4905 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4906 virtual void updateApplicationWithoutRestartAsync(ApplicationUpdateDescriptor descriptor, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4907
4908 /// @private
4909 void _iceD_updateApplicationWithoutRestart(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4910
4911 /// Removes an application from IceGrid.
4912 /// @param name The application name.
4913 /// @param response The response callback.
4914 /// @param exception The exception callback.
4915 /// @param current The Current object of the incoming request.
4916 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4917 /// session is holding the lock.
4918 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4919 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4920 virtual void removeApplicationAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
4921
4922 /// @private
4923 void _iceD_removeApplication(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4924
4925 /// Instantiates a server template.
4926 /// @param application The application name.
4927 /// @param node The name of the node where the server will be deployed.
4928 /// @param desc The descriptor of the server instance to deploy.
4929 /// @param response The response callback.
4930 /// @param exception The exception callback.
4931 /// @param current The Current object of the incoming request.
4932 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock or when another
4933 /// session is holding the lock.
4934 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4935 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
4936 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;
4937
4938 /// @private
4939 void _iceD_instantiateServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
4940
4941 /// Gets an application descriptor.
4942 /// @param name The application name.
4943 /// @param response The response callback. It accepts:
4944 /// - The application descriptor.
4945 /// @param exception The exception callback.
4946 /// @param current The Current object of the incoming request.
4947 /// @throws IceGrid::ApplicationNotExistException Thrown when the application doesn't exist.
4948 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;
4949
4950 /// @private
4951 void _iceD_getApplicationInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4952
4953 /// Gets the default application descriptor.
4954 /// @param response The response callback. It accepts:
4955 /// - The default application descriptor.
4956 /// @param exception The exception callback.
4957 /// @param current The Current object of the incoming request.
4958 /// @throws IceGrid::DeploymentException Thrown when the default application descriptor is invalid or unreachable.
4959 virtual void getDefaultApplicationDescriptorAsync(std::function<void(const ApplicationDescriptor& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
4960
4961 /// @private
4962 void _iceD_getDefaultApplicationDescriptor(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4963
4964 /// Gets all the IceGrid applications currently registered.
4965 /// @param response The response callback. It accepts:
4966 /// - The application names.
4967 /// @param exception The exception callback.
4968 /// @param current The Current object of the incoming request.
4969 virtual void getAllApplicationNamesAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
4970
4971 /// @private
4972 void _iceD_getAllApplicationNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4973
4974 /// Gets information about a server.
4975 /// @param id The server ID.
4976 /// @param response The response callback. It accepts:
4977 /// - The server information.
4978 /// @param exception The exception callback.
4979 /// @param current The Current object of the incoming request.
4980 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4981 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;
4982
4983 /// @private
4984 void _iceD_getServerInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4985
4986 /// Gets the state of a server.
4987 /// @param id The server ID.
4988 /// @param response The response callback. It accepts:
4989 /// - The server state.
4990 /// @param exception The exception callback.
4991 /// @param current The Current object of the incoming request.
4992 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
4993 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
4994 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
4995 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;
4996
4997 /// @private
4998 void _iceD_getServerState(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
4999
5000 /// Gets the system process ID of a server. The process ID is operating system dependent.
5001 /// @param id The server ID.
5002 /// @param response The response callback. It accepts:
5003 /// - The process ID.
5004 /// @param exception The exception callback.
5005 /// @param current The Current object of the incoming request.
5006 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5007 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5008 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5009 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;
5010
5011 /// @private
5012 void _iceD_getServerPid(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5013
5014 /// Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by
5015 /// changing its identity: use the server ID as name and the returned category as category.
5016 /// @param response The response callback. It accepts:
5017 /// - The category for server admin objects.
5018 /// @param exception The exception callback.
5019 /// @param current The Current object of the incoming request.
5020 virtual void getServerAdminCategoryAsync(std::function<void(std::string_view returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5021
5022 /// @private
5023 void _iceD_getServerAdminCategory(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5024
5025 /// Gets a proxy to the admin object of a server.
5026 /// @param id The server ID.
5027 /// @param response The response callback. It accepts:
5028 /// - A proxy to the admin object of the server. This proxy is never null.
5029 /// @param exception The exception callback.
5030 /// @param current The Current object of the incoming request.
5031 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5032 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5033 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5034 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;
5035
5036 /// @private
5037 void _iceD_getServerAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5038
5039 /// Enables or disables a server. A disabled server can't be started on demand or administratively. The enable
5040 /// state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by
5041 /// default.
5042 /// @param id The server ID.
5043 /// @param enabled `true` to enable the server, `false` to disable it.
5044 /// @param response The response callback.
5045 /// @param exception The exception callback.
5046 /// @param current The Current object of the incoming request.
5047 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5048 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5049 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5050 virtual void enableServerAsync(std::string id, bool enabled, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5051
5052 /// @private
5053 void _iceD_enableServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5054
5055 /// Checks if the server is enabled or disabled.
5056 /// @param id The server ID.
5057 /// @param response The response callback. It accepts:
5058 /// - `true` if the server is enabled, `false` otherwise.
5059 /// @param exception The exception callback.
5060 /// @param current The Current object of the incoming request.
5061 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5062 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5063 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5064 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;
5065
5066 /// @private
5067 void _iceD_isServerEnabled(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5068
5069 /// Starts a server and waits for its activation.
5070 /// @param id The server id.
5071 /// @param response The response callback.
5072 /// @param exception The exception callback.
5073 /// @param current The Current object of the incoming request.
5074 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5075 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5076 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5077 /// @throws IceGrid::ServerStartException Thrown when the server startup failed.
5078 virtual void startServerAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5079
5080 /// @private
5081 void _iceD_startServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5082
5083 /// Stops a server.
5084 /// @param id The server ID.
5085 /// @param response The response callback.
5086 /// @param exception The exception callback.
5087 /// @param current The Current object of the incoming request.
5088 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5089 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5090 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5091 /// @throws IceGrid::ServerStopException Thrown when the server stop failed.
5092 virtual void stopServerAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5093
5094 /// @private
5095 void _iceD_stopServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5096
5097 /// Sends a signal to a server.
5098 /// @param id The server ID.
5099 /// @param signal The signal, for example SIGTERM or 15.
5100 /// @param response The response callback.
5101 /// @param exception The exception callback.
5102 /// @param current The Current object of the incoming request.
5103 /// @throws IceGrid::BadSignalException Thrown when the signal is not recognized by the target server.
5104 /// @throws IceGrid::DeploymentException Thrown when the deployment of the server failed.
5105 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5106 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5107 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;
5108
5109 /// @private
5110 void _iceD_sendSignal(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5111
5112 /// Gets the IDs of all the servers registered with IceGrid.
5113 /// @param response The response callback. It accepts:
5114 /// - The server IDs.
5115 /// @param exception The exception callback.
5116 /// @param current The Current object of the incoming request.
5117 virtual void getAllServerIdsAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5118
5119 /// @private
5120 void _iceD_getAllServerIds(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5121
5122 /// Gets adapter information for the replica group or adapter with the given ID.
5123 /// @param id The adapter or replica group ID.
5124 /// @param response The response callback. It accepts:
5125 /// - A sequence of AdapterInfo. If @p id refers to an adapter, this sequence contains a single element.
5126 /// If @p id refers to a replica group, this sequence contains adapter information for each member of the
5127 /// replica group.
5128 /// @param exception The exception callback.
5129 /// @param current The Current object of the incoming request.
5130 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter or replica group doesn't exist.
5131 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;
5132
5133 /// @private
5134 void _iceD_getAdapterInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5135
5136 /// Removes the adapter with the given ID.
5137 /// @param id The adapter ID.
5138 /// @param response The response callback.
5139 /// @param exception The exception callback.
5140 /// @param current The Current object of the incoming request.
5141 /// @throws IceGrid::AdapterNotExistException Thrown when the adapter doesn't exist.
5142 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
5143 virtual void removeAdapterAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5144
5145 /// @private
5146 void _iceD_removeAdapter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5147
5148 /// Gets the IDs of all adapters registered with IceGrid.
5149 /// @param response The response callback. It accepts:
5150 /// - The adapter IDs.
5151 /// @param exception The exception callback.
5152 /// @param current The Current object of the incoming request.
5153 virtual void getAllAdapterIdsAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5154
5155 /// @private
5156 void _iceD_getAllAdapterIds(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5157
5158 /// Adds an object to the object registry. IceGrid gets the object type by calling `ice_id` on @p obj. The
5159 /// object must be reachable.
5160 /// @param obj A proxy to the object. This proxy is never null.
5161 /// @param response The response callback.
5162 /// @param exception The exception callback.
5163 /// @param current The Current object of the incoming request.
5164 /// @throws IceGrid::DeploymentException Thrown when the object can't be added.
5165 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
5166 virtual void addObjectAsync(std::optional<Ice::ObjectPrx> obj, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5167
5168 /// @private
5169 void _iceD_addObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5170
5171 /// Updates an object in the object registry. Only objects added with this interface can be updated with this
5172 /// operation. Objects added with deployment descriptors should be updated with the deployment mechanism.
5173 /// @param obj A proxy to the object. This proxy is never null.
5174 /// @param response The response callback.
5175 /// @param exception The exception callback.
5176 /// @param current The Current object of the incoming request.
5177 /// @throws IceGrid::DeploymentException Thrown when the object can't be updated.
5178 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
5179 virtual void updateObjectAsync(std::optional<Ice::ObjectPrx> obj, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5180
5181 /// @private
5182 void _iceD_updateObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5183
5184 /// Adds an object to the object registry and explicitly specifies its type.
5185 /// @param obj The object to be added to the registry. The proxy is never null.
5186 /// @param type The type name.
5187 /// @param response The response callback.
5188 /// @param exception The exception callback.
5189 /// @param current The Current object of the incoming request.
5190 /// @throws IceGrid::DeploymentException Thrown when the application deployment failed.
5191 /// @throws IceGrid::ObjectExistsException Thrown when the object is already registered.
5192 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;
5193
5194 /// @private
5195 void _iceD_addObjectWithType(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5196
5197 /// Removes an object from the object registry. Only objects added with this interface can be removed with this
5198 /// operation. Objects added with deployment descriptors should be removed with the deployment mechanism.
5199 /// @param id The identity of the object to remove.
5200 /// @param response The response callback.
5201 /// @param exception The exception callback.
5202 /// @param current The Current object of the incoming request.
5203 /// @throws IceGrid::DeploymentException Thrown when the object can't be removed.
5204 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
5205 virtual void removeObjectAsync(::Ice::Identity id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5206
5207 /// @private
5208 void _iceD_removeObject(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5209
5210 /// Gets the object info for the object.
5211 /// @param id The identity of the object.
5212 /// @param response The response callback. It accepts:
5213 /// - The object info.
5214 /// @param exception The exception callback.
5215 /// @param current The Current object of the incoming request.
5216 /// @throws IceGrid::ObjectNotRegisteredException Thrown when the object isn't registered with the registry.
5217 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;
5218
5219 /// @private
5220 void _iceD_getObjectInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5221
5222 /// Gets the object info of all the registered objects with a given type.
5223 /// @param type The type name.
5224 /// @param response The response callback. It accepts:
5225 /// - The object infos.
5226 /// @param exception The exception callback.
5227 /// @param current The Current object of the incoming request.
5228 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;
5229
5230 /// @private
5231 void _iceD_getObjectInfosByType(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5232
5233 /// Gets the object info of all the registered objects whose stringified identities match the given expression.
5234 /// @param expr The expression to match against the stringified identities of registered objects. The expression
5235 /// may contain a trailing wildcard (`*`) character.
5236 /// @param response The response callback. It accepts:
5237 /// - All the object infos with a stringified identity matching the given expression.
5238 /// @param exception The exception callback.
5239 /// @param current The Current object of the incoming request.
5240 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;
5241
5242 /// @private
5243 void _iceD_getAllObjectInfos(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5244
5245 /// Pings an IceGrid node to see if it is active.
5246 /// @param name The node name.
5247 /// @param response The response callback. It accepts:
5248 /// - `true` if the node ping succeeded, `false` otherwise.
5249 /// @param exception The exception callback.
5250 /// @param current The Current object of the incoming request.
5251 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5252 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;
5253
5254 /// @private
5255 void _iceD_pingNode(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5256
5257 /// Gets the load averages of a node.
5258 /// @param name The node name.
5259 /// @param response The response callback. It accepts:
5260 /// - The node load information.
5261 /// @param exception The exception callback.
5262 /// @param current The Current object of the incoming request.
5263 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5264 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5265 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;
5266
5267 /// @private
5268 void _iceD_getNodeLoad(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5269
5270 /// Gets the node information of a node.
5271 /// @param name The node name.
5272 /// @param response The response callback. It accepts:
5273 /// - The node information.
5274 /// @param exception The exception callback.
5275 /// @param current The Current object of the incoming request.
5276 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5277 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5278 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;
5279
5280 /// @private
5281 void _iceD_getNodeInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5282
5283 /// Gets a proxy to the admin object of an IceGrid node.
5284 /// @param name The IceGrid node name.
5285 /// @param response The response callback. It accepts:
5286 /// - A proxy to the IceGrid node's admin object. This proxy is never null.
5287 /// @param exception The exception callback.
5288 /// @param current The Current object of the incoming request.
5289 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5290 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5291 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;
5292
5293 /// @private
5294 void _iceD_getNodeAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5295
5296 /// Gets the number of physical processor sockets in the computer where an IceGrid node is deployed.
5297 /// Note that this operation returns 1 on operating systems where this can't be automatically determined and
5298 /// where the `IceGrid.Node.ProcessorSocketCount` property for the node is not set.
5299 /// @param name The node name.
5300 /// @param response The response callback. It accepts:
5301 /// - The number of processor sockets or 1 if the number of sockets can't be determined.
5302 /// @param exception The exception callback.
5303 /// @param current The Current object of the incoming request.
5304 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5305 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5306 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;
5307
5308 /// @private
5309 void _iceD_getNodeProcessorSocketCount(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5310
5311 /// Shuts down an IceGrid node.
5312 /// @param name The node name.
5313 /// @param response The response callback.
5314 /// @param exception The exception callback.
5315 /// @param current The Current object of the incoming request.
5316 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5317 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5318 virtual void shutdownNodeAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5319
5320 /// @private
5321 void _iceD_shutdownNode(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5322
5323 /// Get the hostname of a node.
5324 /// @param name The node name.
5325 /// @param response The response callback. It accepts:
5326 /// - The node hostname.
5327 /// @param exception The exception callback.
5328 /// @param current The Current object of the incoming request.
5329 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5330 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5331 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;
5332
5333 /// @private
5334 void _iceD_getNodeHostname(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5335
5336 /// Gets the names of all IceGrid nodes currently registered.
5337 /// @param response The response callback. It accepts:
5338 /// - The node names.
5339 /// @param exception The exception callback.
5340 /// @param current The Current object of the incoming request.
5341 virtual void getAllNodeNamesAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5342
5343 /// @private
5344 void _iceD_getAllNodeNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5345
5346 /// Pings an IceGrid registry to see if it is active.
5347 /// @param name The registry name.
5348 /// @param response The response callback. It accepts:
5349 /// - `true` if the registry ping succeeded, `false` otherwise.
5350 /// @param exception The exception callback.
5351 /// @param current The Current object of the incoming request.
5352 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
5353 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;
5354
5355 /// @private
5356 void _iceD_pingRegistry(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5357
5358 /// Gets the registry information of an IceGrid registry.
5359 /// @param name The registry name.
5360 /// @param response The response callback. It accepts:
5361 /// - The registry information.
5362 /// @param exception The exception callback.
5363 /// @param current The Current object of the incoming request.
5364 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
5365 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
5366 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;
5367
5368 /// @private
5369 void _iceD_getRegistryInfo(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5370
5371 /// Gets a proxy to the admin object of an IceGrid registry.
5372 /// @param name The registry name.
5373 /// @param response The response callback. It accepts:
5374 /// - A proxy to the admin object of an IceGrid registry. This proxy is never null.
5375 /// @param exception The exception callback.
5376 /// @param current The Current object of the incoming request.
5377 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
5378 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;
5379
5380 /// @private
5381 void _iceD_getRegistryAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5382
5383 /// Shuts down an IceGrid registry.
5384 /// @param name The registry name.
5385 /// @param response The response callback.
5386 /// @param exception The exception callback.
5387 /// @param current The Current object of the incoming request.
5388 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
5389 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
5390 virtual void shutdownRegistryAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5391
5392 /// @private
5393 void _iceD_shutdownRegistry(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5394
5395 /// Gets the names of all the IceGrid registries currently registered.
5396 /// @param response The response callback. It accepts:
5397 /// - The registry names.
5398 /// @param exception The exception callback.
5399 /// @param current The Current object of the incoming request.
5400 virtual void getAllRegistryNamesAsync(std::function<void(const ::Ice::StringSeq& returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5401
5402 /// @private
5403 void _iceD_getAllRegistryNames(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5404
5405 /// Shuts down the IceGrid registry.
5406 /// @param response The response callback.
5407 /// @param exception The exception callback.
5408 /// @param current The Current object of the incoming request.
5409 virtual void shutdownAsync(std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5410
5411 /// @private
5412 void _iceD_shutdown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5413
5414 /// Gets the type ID of the associated Slice interface.
5415 /// @return The string `"::IceGrid::Admin"`.
5416 static const char* ice_staticId() noexcept;
5417 };
5418
5419 /// A shared pointer to an AsyncAdmin.
5420 using AsyncAdminPtr = std::shared_ptr<AsyncAdmin>;
5421
5422 /// Iterates over an IceGrid log file.
5423 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::FileIterator`.
5424 /// @headerfile IceGrid/IceGrid.h
5425 class ICEGRID_API AsyncFileIterator : public virtual Ice::Object
5426 {
5427 public:
5428 /// The associated proxy type.
5430
5431 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5432 /// @param request The incoming request.
5433 /// @param sendResponse The callback to send the response.
5434 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5435
5436 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5437
5438 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5439
5440 /// Read lines from the log file.
5441 /// @param size Specifies the maximum number of bytes to be received. The server will ensure that the returned
5442 /// message doesn't exceed the given size.
5443 /// @param response The response callback. It accepts:
5444 /// - `returnValue` `true` if EOF is encountered.
5445 /// - `lines` The lines read from the file. If there was nothing to read from the file since the last call to
5446 /// read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no
5447 /// newline character should be added when writing the last line to the to the output device).
5448 /// @param exception The exception callback.
5449 /// @param current The Current object of the incoming request.
5450 /// @throws IceGrid::FileNotAvailableException Thrown when the implementation failed to read from the file.
5451 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;
5452
5453 /// @private
5454 void _iceD_read(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5455
5456 /// Destroys the iterator.
5457 /// @param response The response callback.
5458 /// @param exception The exception callback.
5459 /// @param current The Current object of the incoming request.
5460 virtual void destroyAsync(std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5461
5462 /// @private
5463 void _iceD_destroy(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5464
5465 /// Gets the type ID of the associated Slice interface.
5466 /// @return The string `"::IceGrid::FileIterator"`.
5467 static const char* ice_staticId() noexcept;
5468 };
5469
5470 /// A shared pointer to an AsyncFileIterator.
5471 using AsyncFileIteratorPtr = std::shared_ptr<AsyncFileIterator>;
5472
5473 /// Monitors changes to the state of the registries.
5474 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::RegistryObserver`.
5475 /// @headerfile IceGrid/IceGrid.h
5476 class ICEGRID_API AsyncRegistryObserver : public virtual Ice::Object
5477 {
5478 public:
5479 /// The associated proxy type.
5481
5482 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5483 /// @param request The incoming request.
5484 /// @param sendResponse The callback to send the response.
5485 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5486
5487 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5488
5489 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5490
5491 /// Provides the initial state of the registries to the observer.
5492 /// @param registries The current state of the registries.
5493 /// @param response The response callback.
5494 /// @param exception The exception callback.
5495 /// @param current The Current object of the incoming request.
5496 virtual void registryInitAsync(RegistryInfoSeq registries, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5497
5498 /// @private
5499 void _iceD_registryInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5500
5501 /// Notifies the observer that a registry replica came up.
5502 /// @param registryReplica The registry state.
5503 /// @param response The response callback.
5504 /// @param exception The exception callback.
5505 /// @param current The Current object of the incoming request.
5506 virtual void registryUpAsync(RegistryInfo registryReplica, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5507
5508 /// @private
5509 void _iceD_registryUp(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5510
5511 /// Notifies the observer that a registry replica went down.
5512 /// @param name The registry name.
5513 /// @param response The response callback.
5514 /// @param exception The exception callback.
5515 /// @param current The Current object of the incoming request.
5516 virtual void registryDownAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5517
5518 /// @private
5519 void _iceD_registryDown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5520
5521 /// Gets the type ID of the associated Slice interface.
5522 /// @return The string `"::IceGrid::RegistryObserver"`.
5523 static const char* ice_staticId() noexcept;
5524 };
5525
5526 /// A shared pointer to an AsyncRegistryObserver.
5528
5529 /// Monitors changes to the state of the nodes.
5530 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::NodeObserver`.
5531 /// @headerfile IceGrid/IceGrid.h
5532 class ICEGRID_API AsyncNodeObserver : public virtual Ice::Object
5533 {
5534 public:
5535 /// The associated proxy type.
5537
5538 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5539 /// @param request The incoming request.
5540 /// @param sendResponse The callback to send the response.
5541 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5542
5543 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5544
5545 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5546
5547 /// Provides the initial state of the nodes to the observer.
5548 /// @param nodes The current state of the nodes.
5549 /// @param response The response callback.
5550 /// @param exception The exception callback.
5551 /// @param current The Current object of the incoming request.
5552 virtual void nodeInitAsync(NodeDynamicInfoSeq nodes, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5553
5554 /// @private
5555 void _iceD_nodeInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5556
5557 /// Notifies the observer that a node came up.
5558 /// @param node The node state.
5559 /// @param response The response callback.
5560 /// @param exception The exception callback.
5561 /// @param current The Current object of the incoming request.
5562 virtual void nodeUpAsync(NodeDynamicInfo node, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5563
5564 /// @private
5565 void _iceD_nodeUp(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5566
5567 /// Notifies the observer that a node went down.
5568 /// @param name The node name.
5569 /// @param response The response callback.
5570 /// @param exception The exception callback.
5571 /// @param current The Current object of the incoming request.
5572 virtual void nodeDownAsync(std::string name, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5573
5574 /// @private
5575 void _iceD_nodeDown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5576
5577 /// Notifies the observer that the state of a server changed.
5578 /// @param node The node hosting the server.
5579 /// @param updatedInfo The new server state.
5580 /// @param response The response callback.
5581 /// @param exception The exception callback.
5582 /// @param current The Current object of the incoming request.
5583 virtual void updateServerAsync(std::string node, ServerDynamicInfo updatedInfo, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5584
5585 /// @private
5586 void _iceD_updateServer(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5587
5588 /// Notifies the observer that the state of an object adapter changed.
5589 /// @param node The node hosting the adapter.
5590 /// @param updatedInfo The new adapter state.
5591 /// @param response The response callback.
5592 /// @param exception The exception callback.
5593 /// @param current The Current object of the incoming request.
5594 virtual void updateAdapterAsync(std::string node, AdapterDynamicInfo updatedInfo, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5595
5596 /// @private
5597 void _iceD_updateAdapter(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5598
5599 /// Gets the type ID of the associated Slice interface.
5600 /// @return The string `"::IceGrid::NodeObserver"`.
5601 static const char* ice_staticId() noexcept;
5602 };
5603
5604 /// A shared pointer to an AsyncNodeObserver.
5605 using AsyncNodeObserverPtr = std::shared_ptr<AsyncNodeObserver>;
5606
5607 /// Monitors applications.
5608 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::ApplicationObserver`.
5609 /// @headerfile IceGrid/IceGrid.h
5610 class ICEGRID_API AsyncApplicationObserver : public virtual Ice::Object
5611 {
5612 public:
5613 /// The associated proxy type.
5615
5616 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5617 /// @param request The incoming request.
5618 /// @param sendResponse The callback to send the response.
5619 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5620
5621 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5622
5623 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5624
5625 /// Provides the initial application infos to the observer.
5626 /// @param serial The current serial number of the registry database. This serial number allows observers to
5627 /// make sure that their internal state is synchronized with the registry.
5628 /// @param applications The applications currently registered with the registry.
5629 /// @param response The response callback.
5630 /// @param exception The exception callback.
5631 /// @param current The Current object of the incoming request.
5632 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;
5633
5634 /// @private
5635 void _iceD_applicationInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5636
5637 /// Notifies the observer that an application was added.
5638 /// @param serial The new serial number of the registry database.
5639 /// @param desc The descriptor of the new application.
5640 /// @param response The response callback.
5641 /// @param exception The exception callback.
5642 /// @param current The Current object of the incoming request.
5643 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;
5644
5645 /// @private
5646 void _iceD_applicationAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5647
5648 /// Notifies the observer that an application was removed.
5649 /// @param serial The new serial number of the registry database.
5650 /// @param name The name of the application that was removed.
5651 /// @param response The response callback.
5652 /// @param exception The exception callback.
5653 /// @param current The Current object of the incoming request.
5654 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;
5655
5656 /// @private
5657 void _iceD_applicationRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5658
5659 /// Notifies the observer that an application was updated.
5660 /// @param serial The new serial number of the registry database.
5661 /// @param desc The descriptor of the update.
5662 /// @param response The response callback.
5663 /// @param exception The exception callback.
5664 /// @param current The Current object of the incoming request.
5665 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;
5666
5667 /// @private
5668 void _iceD_applicationUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5669
5670 /// Gets the type ID of the associated Slice interface.
5671 /// @return The string `"::IceGrid::ApplicationObserver"`.
5672 static const char* ice_staticId() noexcept;
5673 };
5674
5675 /// A shared pointer to an AsyncApplicationObserver.
5677
5678 /// Monitors dynamically-registered object adapters.
5679 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::AdapterObserver`.
5680 /// @headerfile IceGrid/IceGrid.h
5681 class ICEGRID_API AsyncAdapterObserver : public virtual Ice::Object
5682 {
5683 public:
5684 /// The associated proxy type.
5686
5687 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5688 /// @param request The incoming request.
5689 /// @param sendResponse The callback to send the response.
5690 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5691
5692 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5693
5694 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5695
5696 /// Provides the initial list of dynamically registered adapters to the observer.
5697 /// @param adpts The adapters that were dynamically registered with the registry.
5698 /// @param response The response callback.
5699 /// @param exception The exception callback.
5700 /// @param current The Current object of the incoming request.
5701 virtual void adapterInitAsync(AdapterInfoSeq adpts, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5702
5703 /// @private
5704 void _iceD_adapterInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5705
5706 /// Notifies the observer that a dynamically-registered adapter was added.
5707 /// @param info The details of the new adapter.
5708 /// @param response The response callback.
5709 /// @param exception The exception callback.
5710 /// @param current The Current object of the incoming request.
5711 virtual void adapterAddedAsync(AdapterInfo info, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5712
5713 /// @private
5714 void _iceD_adapterAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5715
5716 /// @param info The details of the updated adapter.
5717 /// @param response The response callback.
5718 /// @param exception The exception callback.
5719 /// @param current The Current object of the incoming request.
5720 virtual void adapterUpdatedAsync(AdapterInfo info, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5721
5722 /// @private
5723 void _iceD_adapterUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5724
5725 /// Notifies the observer that a dynamically-registered adapter was removed.
5726 /// @param id The ID of the removed adapter.
5727 /// @param response The response callback.
5728 /// @param exception The exception callback.
5729 /// @param current The Current object of the incoming request.
5730 virtual void adapterRemovedAsync(std::string id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5731
5732 /// @private
5733 void _iceD_adapterRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5734
5735 /// Gets the type ID of the associated Slice interface.
5736 /// @return The string `"::IceGrid::AdapterObserver"`.
5737 static const char* ice_staticId() noexcept;
5738 };
5739
5740 /// A shared pointer to an AsyncAdapterObserver.
5742
5743 /// Monitors well-known objects that are added, updated or removed using AdminPrx.
5744 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::ObjectObserver`.
5745 /// @headerfile IceGrid/IceGrid.h
5746 class ICEGRID_API AsyncObjectObserver : public virtual Ice::Object
5747 {
5748 public:
5749 /// The associated proxy type.
5751
5752 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5753 /// @param request The incoming request.
5754 /// @param sendResponse The callback to send the response.
5755 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5756
5757 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5758
5759 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5760
5761 /// Provides the initial list of well-known objects to the observer.
5762 /// @param objects The well-known objects registered using ::IceGrid::AdminPrx.
5763 /// @param response The response callback.
5764 /// @param exception The exception callback.
5765 /// @param current The Current object of the incoming request.
5766 virtual void objectInitAsync(ObjectInfoSeq objects, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5767
5768 /// @private
5769 void _iceD_objectInit(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5770
5771 /// Notifies the observer that a well-known object was added.
5772 /// @param info The details of the new object.
5773 /// @param response The response callback.
5774 /// @param exception The exception callback.
5775 /// @param current The Current object of the incoming request.
5776 virtual void objectAddedAsync(ObjectInfo info, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5777
5778 /// @private
5779 void _iceD_objectAdded(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5780
5781 /// Notifies the observer that a well-known object was updated.
5782 /// @param info The details of the updated object.
5783 /// @param response The response callback.
5784 /// @param exception The exception callback.
5785 /// @param current The Current object of the incoming request.
5786 virtual void objectUpdatedAsync(ObjectInfo info, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5787
5788 /// @private
5789 void _iceD_objectUpdated(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5790
5791 /// Notifies the observer that a well-known object was removed.
5792 /// @param id The identity of the removed object.
5793 /// @param response The response callback.
5794 /// @param exception The exception callback.
5795 /// @param current The Current object of the incoming request.
5796 virtual void objectRemovedAsync(::Ice::Identity id, std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5797
5798 /// @private
5799 void _iceD_objectRemoved(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5800
5801 /// Gets the type ID of the associated Slice interface.
5802 /// @return The string `"::IceGrid::ObjectObserver"`.
5803 static const char* ice_staticId() noexcept;
5804 };
5805
5806 /// A shared pointer to an AsyncObjectObserver.
5808
5809 /// Represents an administrative session between an admin tool and an IceGrid registry.
5810 /// @remarks The Slice compiler generated this skeleton class from Slice interface `::IceGrid::AdminSession`.
5811 /// @see RegistryPrx
5812 /// @headerfile IceGrid/IceGrid.h
5813 class ICEGRID_API AsyncAdminSession : public virtual ::Glacier2::AsyncSession
5814 {
5815 public:
5816 /// The associated proxy type.
5818
5819 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
5820 /// @param request The incoming request.
5821 /// @param sendResponse The callback to send the response.
5822 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
5823
5824 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
5825
5826 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
5827
5828 /// Keeps the session alive.
5829 /// @param response The response callback.
5830 /// @param exception The exception callback.
5831 /// @param current The Current object of the incoming request.
5832 virtual void keepAliveAsync(std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5833
5834 /// @private
5835 void _iceD_keepAlive(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5836
5837 /// Gets a proxy to the IceGrid admin object. The admin object returned by this operation can only be accessed
5838 /// by the session.
5839 /// @param response The response callback. It accepts:
5840 /// - A proxy to the IceGrid admin object. This proxy is never null.
5841 /// @param exception The exception callback.
5842 /// @param current The Current object of the incoming request.
5843 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;
5844
5845 /// @private
5846 void _iceD_getAdmin(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5847
5848 /// Gets a "template" proxy for admin callback objects. An Admin client uses this proxy to set the category of
5849 /// its callback objects, and the published endpoints of the object adapter hosting the admin callback objects.
5850 /// @param response The response callback. It accepts:
5851 /// - A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
5852 /// @param exception The exception callback.
5853 /// @param current The Current object of the incoming request.
5854 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;
5855
5856 /// @private
5857 void _iceD_getAdminCallbackTemplate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5858
5859 /// Sets the observer proxies that receive notifications when the state of the registry or nodes changes.
5860 /// @param registryObs The registry observer.
5861 /// @param nodeObs The node observer.
5862 /// @param appObs The application observer.
5863 /// @param adptObs The adapter observer.
5864 /// @param objObs The object observer.
5865 /// @param response The response callback.
5866 /// @param exception The exception callback.
5867 /// @param current The Current object of the incoming request.
5868 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
5869 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;
5870
5871 /// @private
5872 void _iceD_setObservers(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5873
5874 /// Sets the observer identities that receive notifications when the state of the registry or nodes changes.
5875 /// This operation should be used by clients that are using a bidirectional connection to communicate with the
5876 /// session.
5877 /// @param registryObs The registry observer identity.
5878 /// @param nodeObs The node observer identity.
5879 /// @param appObs The application observer.
5880 /// @param adptObs The adapter observer.
5881 /// @param objObs The object observer.
5882 /// @param response The response callback.
5883 /// @param exception The exception callback.
5884 /// @param current The Current object of the incoming request.
5885 /// @throws IceGrid::ObserverAlreadyRegisteredException Thrown when an observer is already registered with this registry.
5886 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;
5887
5888 /// @private
5889 void _iceD_setObserversByIdentity(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5890
5891 /// Acquires an exclusive lock to start updating the registry applications.
5892 /// @param response The response callback. It accepts:
5893 /// - The current serial.
5894 /// @param exception The exception callback.
5895 /// @param current The Current object of the incoming request.
5896 /// @throws IceGrid::AccessDeniedException Thrown when the exclusive lock can't be acquired. This might happen if the
5897 /// lock is currently acquired by another session.
5898 virtual void startUpdateAsync(std::function<void(std::int32_t returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5899
5900 /// @private
5901 void _iceD_startUpdate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5902
5903 /// Finishes updating the registry and releases the exclusive lock.
5904 /// @param response The response callback.
5905 /// @param exception The exception callback.
5906 /// @param current The Current object of the incoming request.
5907 /// @throws IceGrid::AccessDeniedException Thrown when the session doesn't hold the exclusive lock.
5908 virtual void finishUpdateAsync(std::function<void()> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) = 0;
5909
5910 /// @private
5911 void _iceD_finishUpdate(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5912
5913 /// Gets the name of the registry replica hosting this session.
5914 /// @param response The response callback. It accepts:
5915 /// - The replica name of the registry.
5916 /// @param exception The exception callback.
5917 /// @param current The Current object of the incoming request.
5918 virtual void getReplicaNameAsync(std::function<void(std::string_view returnValue)> response, std::function<void(std::exception_ptr)> exception, const Ice::Current& current) const = 0;
5919
5920 /// @private
5921 void _iceD_getReplicaName(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>) const;
5922
5923 /// Opens a server log file for reading.
5924 /// @param id The server ID.
5925 /// @param path The path of the log file. A log file can be opened only if it's declared in the server or
5926 /// service deployment descriptor.
5927 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5928 /// Otherwise, the file is read from the last @p count lines.
5929 /// @param response The response callback. It accepts:
5930 /// - An iterator to read the file. This proxy is never null.
5931 /// @param exception The exception callback.
5932 /// @param current The Current object of the incoming request.
5933 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
5934 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
5935 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5936 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5937 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;
5938
5939 /// @private
5940 void _iceD_openServerLog(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5941
5942 /// Opens a server stderr file for reading.
5943 /// @param id The server ID.
5944 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5945 /// Otherwise, the file is read from the last @p count lines.
5946 /// @param response The response callback. It accepts:
5947 /// - An iterator to read the file. This proxy is never null.
5948 /// @param exception The exception callback.
5949 /// @param current The Current object of the incoming request.
5950 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
5951 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
5952 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5953 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5954 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;
5955
5956 /// @private
5957 void _iceD_openServerStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5958
5959 /// Opens a server stdout file for reading.
5960 /// @param id The server id.
5961 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5962 /// Otherwise, the file is read from the last @p count lines.
5963 /// @param response The response callback. It accepts:
5964 /// - An iterator to read the file. This proxy is never null.
5965 /// @param exception The exception callback.
5966 /// @param current The Current object of the incoming request.
5967 /// @throws IceGrid::DeploymentException Thrown when the server couldn't be deployed on the node.
5968 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
5969 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5970 /// @throws IceGrid::ServerNotExistException Thrown when the server doesn't exist.
5971 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;
5972
5973 /// @private
5974 void _iceD_openServerStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5975
5976 /// Opens a node stderr file for reading.
5977 /// @param name The node name.
5978 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5979 /// Otherwise, the file is read from the last @p count lines.
5980 /// @param response The response callback. It accepts:
5981 /// - An iterator to read the file. This proxy is never null.
5982 /// @param exception The exception callback.
5983 /// @param current The Current object of the incoming request.
5984 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
5985 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
5986 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
5987 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;
5988
5989 /// @private
5990 void _iceD_openNodeStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
5991
5992 /// Opens a node stdout file for reading.
5993 /// @param name The node name.
5994 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
5995 /// Otherwise, the file is read from the last @p count lines.
5996 /// @param response The response callback. It accepts:
5997 /// - An iterator to read the file. This proxy is never null.
5998 /// @param exception The exception callback.
5999 /// @param current The Current object of the incoming request.
6000 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
6001 /// @throws IceGrid::NodeNotExistException Thrown when the node doesn't exist.
6002 /// @throws IceGrid::NodeUnreachableException Thrown when the node is unreachable.
6003 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;
6004
6005 /// @private
6006 void _iceD_openNodeStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
6007
6008 /// Opens a registry stderr file for reading.
6009 /// @param name The registry name.
6010 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
6011 /// Otherwise, the file is read from the last @p count lines.
6012 /// @param response The response callback. It accepts:
6013 /// - An iterator to read the file. This proxy is never null.
6014 /// @param exception The exception callback.
6015 /// @param current The Current object of the incoming request.
6016 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
6017 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
6018 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
6019 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;
6020
6021 /// @private
6022 void _iceD_openRegistryStdErr(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
6023
6024 /// Opens a registry stdout file for reading.
6025 /// @param name The registry name.
6026 /// @param count Specifies where to start reading the file. If negative, the file is read from the beginning.
6027 /// Otherwise, the file is read from the last @p count lines.
6028 /// @param response The response callback. It accepts:
6029 /// - An iterator to read the file. This proxy is never null.
6030 /// @param exception The exception callback.
6031 /// @param current The Current object of the incoming request.
6032 /// @throws IceGrid::FileNotAvailableException Thrown when the file can't be read.
6033 /// @throws IceGrid::RegistryNotExistException Thrown when the registry doesn't exist.
6034 /// @throws IceGrid::RegistryUnreachableException Thrown when the registry is unreachable.
6035 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;
6036
6037 /// @private
6038 void _iceD_openRegistryStdOut(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
6039
6040 /// Gets the type ID of the associated Slice interface.
6041 /// @return The string `"::IceGrid::AdminSession"`.
6042 static const char* ice_staticId() noexcept;
6043 };
6044
6045 /// A shared pointer to an AsyncAdminSession.
6046 using AsyncAdminSessionPtr = std::shared_ptr<AsyncAdminSession>;
6047}
6048
6049namespace Ice
6050{
6051 /// @cond INTERNAL
6052 template<>
6053 struct StreamableTraits<::IceGrid::ServerState>
6054 {
6055 static constexpr StreamHelperCategory helper = StreamHelperCategoryEnum;
6056 static constexpr int minValue = 0;
6057 static constexpr int maxValue = 6;
6058 static constexpr int minWireSize = 1;
6059 static constexpr bool fixedLength = false;
6060 };
6061 /// @endcond
6062
6063 /// @cond INTERNAL
6064 template<>
6065 struct StreamableTraits<::IceGrid::ObjectInfo>
6066 {
6067 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6068 static constexpr int minWireSize = 3;
6069 static constexpr bool fixedLength = false;
6070 };
6071
6072 template<>
6073 struct StreamReader<::IceGrid::ObjectInfo>
6074 {
6075 /// Unmarshals a ::IceGrid::ObjectInfo from the input stream.
6076 static void read(InputStream* istr, ::IceGrid::ObjectInfo& v)
6077 {
6078 istr->readAll(v.proxy, v.type);
6079 }
6080 };
6081 /// @endcond
6082
6083 /// @cond INTERNAL
6084 template<>
6085 struct StreamableTraits<::IceGrid::AdapterInfo>
6086 {
6087 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6088 static constexpr int minWireSize = 4;
6089 static constexpr bool fixedLength = false;
6090 };
6091
6092 template<>
6093 struct StreamReader<::IceGrid::AdapterInfo>
6094 {
6095 /// Unmarshals a ::IceGrid::AdapterInfo from the input stream.
6096 static void read(InputStream* istr, ::IceGrid::AdapterInfo& v)
6097 {
6098 istr->readAll(v.id, v.proxy, v.replicaGroupId);
6099 }
6100 };
6101 /// @endcond
6102
6103 /// @cond INTERNAL
6104 template<>
6105 struct StreamableTraits<::IceGrid::ServerInfo>
6106 {
6107 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6108 static constexpr int minWireSize = 9;
6109 static constexpr bool fixedLength = false;
6110 };
6111
6112 template<>
6113 struct StreamReader<::IceGrid::ServerInfo>
6114 {
6115 /// Unmarshals a ::IceGrid::ServerInfo from the input stream.
6116 static void read(InputStream* istr, ::IceGrid::ServerInfo& v)
6117 {
6118 istr->readAll(v.application, v.uuid, v.revision, v.node, v.descriptor, v.sessionId);
6119 }
6120 };
6121 /// @endcond
6122
6123 /// @cond INTERNAL
6124 template<>
6125 struct StreamableTraits<::IceGrid::NodeInfo>
6126 {
6127 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6128 static constexpr int minWireSize = 11;
6129 static constexpr bool fixedLength = false;
6130 };
6131
6132 template<>
6133 struct StreamReader<::IceGrid::NodeInfo>
6134 {
6135 /// Unmarshals a ::IceGrid::NodeInfo from the input stream.
6136 static void read(InputStream* istr, ::IceGrid::NodeInfo& v)
6137 {
6138 istr->readAll(v.name, v.os, v.hostname, v.release, v.version, v.machine, v.nProcessors, v.dataDir);
6139 }
6140 };
6141 /// @endcond
6142
6143 /// @cond INTERNAL
6144 template<>
6145 struct StreamableTraits<::IceGrid::RegistryInfo>
6146 {
6147 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6148 static constexpr int minWireSize = 2;
6149 static constexpr bool fixedLength = false;
6150 };
6151
6152 template<>
6153 struct StreamReader<::IceGrid::RegistryInfo>
6154 {
6155 /// Unmarshals a ::IceGrid::RegistryInfo from the input stream.
6156 static void read(InputStream* istr, ::IceGrid::RegistryInfo& v)
6157 {
6158 istr->readAll(v.name, v.hostname);
6159 }
6160 };
6161 /// @endcond
6162
6163 /// @cond INTERNAL
6164 template<>
6165 struct StreamableTraits<::IceGrid::LoadInfo>
6166 {
6167 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6168 static constexpr int minWireSize = 12;
6169 static constexpr bool fixedLength = true;
6170 };
6171
6172 template<>
6173 struct StreamReader<::IceGrid::LoadInfo>
6174 {
6175 /// Unmarshals a ::IceGrid::LoadInfo from the input stream.
6176 static void read(InputStream* istr, ::IceGrid::LoadInfo& v)
6177 {
6178 istr->readAll(v.avg1, v.avg5, v.avg15);
6179 }
6180 };
6181 /// @endcond
6182
6183 /// @cond INTERNAL
6184 template<>
6185 struct StreamableTraits<::IceGrid::ApplicationInfo>
6186 {
6187 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6188 static constexpr int minWireSize = 33;
6189 static constexpr bool fixedLength = false;
6190 };
6191
6192 template<>
6193 struct StreamReader<::IceGrid::ApplicationInfo>
6194 {
6195 /// Unmarshals a ::IceGrid::ApplicationInfo from the input stream.
6196 static void read(InputStream* istr, ::IceGrid::ApplicationInfo& v)
6197 {
6198 istr->readAll(v.uuid, v.createTime, v.createUser, v.updateTime, v.updateUser, v.revision, v.descriptor);
6199 }
6200 };
6201 /// @endcond
6202
6203 /// @cond INTERNAL
6204 template<>
6205 struct StreamableTraits<::IceGrid::ApplicationUpdateInfo>
6206 {
6207 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6208 static constexpr int minWireSize = 28;
6209 static constexpr bool fixedLength = false;
6210 };
6211
6212 template<>
6213 struct StreamReader<::IceGrid::ApplicationUpdateInfo>
6214 {
6215 /// Unmarshals a ::IceGrid::ApplicationUpdateInfo from the input stream.
6216 static void read(InputStream* istr, ::IceGrid::ApplicationUpdateInfo& v)
6217 {
6218 istr->readAll(v.updateTime, v.updateUser, v.revision, v.descriptor);
6219 }
6220 };
6221 /// @endcond
6222
6223 /// @cond INTERNAL
6224 template<>
6225 struct StreamableTraits<::IceGrid::ServerDynamicInfo>
6226 {
6227 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6228 static constexpr int minWireSize = 7;
6229 static constexpr bool fixedLength = false;
6230 };
6231
6232 template<>
6233 struct StreamReader<::IceGrid::ServerDynamicInfo>
6234 {
6235 /// Unmarshals a ::IceGrid::ServerDynamicInfo from the input stream.
6236 static void read(InputStream* istr, ::IceGrid::ServerDynamicInfo& v)
6237 {
6238 istr->readAll(v.id, v.state, v.pid, v.enabled);
6239 }
6240 };
6241 /// @endcond
6242
6243 /// @cond INTERNAL
6244 template<>
6245 struct StreamableTraits<::IceGrid::AdapterDynamicInfo>
6246 {
6247 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6248 static constexpr int minWireSize = 3;
6249 static constexpr bool fixedLength = false;
6250 };
6251
6252 template<>
6253 struct StreamReader<::IceGrid::AdapterDynamicInfo>
6254 {
6255 /// Unmarshals a ::IceGrid::AdapterDynamicInfo from the input stream.
6256 static void read(InputStream* istr, ::IceGrid::AdapterDynamicInfo& v)
6257 {
6258 istr->readAll(v.id, v.proxy);
6259 }
6260 };
6261 /// @endcond
6262
6263 /// @cond INTERNAL
6264 template<>
6265 struct StreamableTraits<::IceGrid::NodeDynamicInfo>
6266 {
6267 static constexpr StreamHelperCategory helper = StreamHelperCategoryStruct;
6268 static constexpr int minWireSize = 13;
6269 static constexpr bool fixedLength = false;
6270 };
6271
6272 template<>
6273 struct StreamReader<::IceGrid::NodeDynamicInfo>
6274 {
6275 /// Unmarshals a ::IceGrid::NodeDynamicInfo from the input stream.
6276 static void read(InputStream* istr, ::IceGrid::NodeDynamicInfo& v)
6277 {
6278 istr->readAll(v.info, v.servers, v.adapters);
6279 }
6280 };
6281 /// @endcond
6282}
6283
6284// NOLINTEND(modernize-concat-nested-namespaces)
6285
6286#include <Ice/PopDisableWarnings.h>
6287#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:3485
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:3470
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:2109
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:2116
AdapterObserverPrx & operator=(AdapterObserverPrx &&rhs) noexcept
Move assignment operator.
Definition Admin.h:2127
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:2101
AdapterObserverPrx(const AdapterObserverPrx &other) noexcept
Copy constructor.
Definition Admin.h:2105
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:2096
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:4500
Monitors dynamically-registered object adapters.
Definition Admin.h:4497
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:159
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:144
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:148
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:152
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:170
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:139
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:2433
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:2444
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:2426
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:2418
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:2422
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:2408
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:1944
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:1929
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:1955
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:1937
ApplicationObserverPrx(const ApplicationObserverPrx &other) noexcept
Copy constructor.
Definition Admin.h:1933
Monitors applications.
Definition Admin.h:1924
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:4437
Monitors applications.
Definition Admin.h:4434
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:5685
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:5682
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:5817
Represents an administrative session between an admin tool and an IceGrid registry.
Definition Admin.h:5814
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:4827
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:4824
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:5614
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:5611
FileIteratorPrx ProxyType
The associated proxy type.
Definition Admin.h:5429
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:5426
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:5536
Monitors changes to the state of the nodes.
Definition Admin.h:5533
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:5750
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:5747
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:5480
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:5477
Represents a session object used by IceGrid clients to allocate and release objects.
Definition Session.h:354
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:3439
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3424
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:3291
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:3276
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:1487
FileIteratorPrx(FileIteratorPrx &&other) noexcept
Move constructor.
Definition Admin.h:1495
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:1513
FileIteratorPrx(const FileIteratorPrx &other) noexcept
Copy constructor.
Definition Admin.h:1491
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:1502
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:1482
std::string reason
The reason for the failure.
Definition Admin.h:3631
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:3616
FileNotAvailableException(const FileNotAvailableException &) noexcept=default
Copy constructor.
NodeObserverPrx & operator=(const NodeObserverPrx &rhs) noexcept
Copy assignment operator.
Definition Admin.h:1757
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:1742
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:1768
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:1746
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:1750
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:1737
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:4369
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:4366
std::string name
The name of the node that is not reachable.
Definition Admin.h:3339
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:3342
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:3324
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:2270
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:2263
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:2281
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:2255
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:2259
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:2250
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:4557
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:4554
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:3564
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:3531
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3516
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:1609
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:1613
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:1635
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:1624
RegistryObserverPrx(RegistryObserverPrx &&other) noexcept
Move constructor.
Definition Admin.h:1617
Monitors changes to the state of the registries.
Definition Admin.h:1604
RegistryObserverPrx ProxyType
The associated proxy type.
Definition Admin.h:4319
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:4316
Represents the main entry point into the IceGrid registry service.
Definition Registry.h:278
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:3390
std::tuple< const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this exception.
Definition Admin.h:3375
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:3393
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:4815
std::shared_ptr< ApplicationObserver > ApplicationObserverPtr
A shared pointer to an ApplicationObserver.
Definition Admin.h:4491
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:113
std::shared_ptr< AdapterObserver > AdapterObserverPtr
A shared pointer to an AdapterObserver.
Definition Admin.h:4548
std::vector< AdapterInfo > AdapterInfoSeq
A sequence of AdapterInfo.
Definition Admin.h:81
std::vector< NodeDynamicInfo > NodeDynamicInfoSeq
A sequence of NodeDynamicInfo.
Definition Admin.h:120
ServerState
Represents the state of a server.
Definition Admin.h:40
@ Deactivating
The server is being deactivated.
Definition Admin.h:55
@ Inactive
The server is not running.
Definition Admin.h:42
@ Active
The server is running.
Definition Admin.h:52
@ Destroying
The server is being destroyed.
Definition Admin.h:58
@ ActivationTimedOut
The server activation timed out.
Definition Admin.h:49
@ Destroyed
The server is destroyed.
Definition Admin.h:61
@ Activating
The server is being activated and will change to the active state when the registered server object a...
Definition Admin.h:46
std::shared_ptr< FileIterator > FileIteratorPtr
A shared pointer to a FileIterator.
Definition Admin.h:4310
std::vector< RegistryInfo > RegistryInfoSeq
A sequence of RegistryInfo.
Definition Admin.h:90
std::shared_ptr< AsyncFileIterator > AsyncFileIteratorPtr
A shared pointer to an AsyncFileIterator.
Definition Admin.h:5471
std::shared_ptr< AsyncApplicationObserver > AsyncApplicationObserverPtr
A shared pointer to an AsyncApplicationObserver.
Definition Admin.h:5676
std::shared_ptr< AsyncAdmin > AsyncAdminPtr
A shared pointer to an AsyncAdmin.
Definition Admin.h:5420
std::shared_ptr< ServerDescriptor > ServerDescriptorPtr
A shared pointer to a ServerDescriptor.
Definition Descriptor.h:72
std::shared_ptr< RegistryObserver > RegistryObserverPtr
A shared pointer to a RegistryObserver.
Definition Admin.h:4360
std::shared_ptr< AsyncNodeObserver > AsyncNodeObserverPtr
A shared pointer to an AsyncNodeObserver.
Definition Admin.h:5605
std::map< std::string, std::optional< Ice::ObjectPrx > > StringObjectProxyDict
A dictionary of string to proxies.
Definition Admin.h:71
std::shared_ptr< NodeObserver > NodeObserverPtr
A shared pointer to a NodeObserver.
Definition Admin.h:4428
std::shared_ptr< Admin > AdminPtr
A shared pointer to an Admin.
Definition Admin.h:4263
std::shared_ptr< ObjectObserver > ObjectObserverPtr
A shared pointer to an ObjectObserver.
Definition Admin.h:4606
std::shared_ptr< AsyncRegistryObserver > AsyncRegistryObserverPtr
A shared pointer to an AsyncRegistryObserver.
Definition Admin.h:5527
std::shared_ptr< AsyncObjectObserver > AsyncObjectObserverPtr
A shared pointer to an AsyncObjectObserver.
Definition Admin.h:5807
std::vector< ServerDynamicInfo > ServerDynamicInfoSeq
A sequence of ServerDynamicInfo.
Definition Admin.h:108
std::shared_ptr< AsyncAdapterObserver > AsyncAdapterObserverPtr
A shared pointer to an AsyncAdapterObserver.
Definition Admin.h:5741
std::vector< ObjectInfo > ObjectInfoSeq
A sequence of ObjectInfo.
Definition Admin.h:76
std::vector< ApplicationInfo > ApplicationInfoSeq
A sequence of ApplicationInfo.
Definition Admin.h:97
std::shared_ptr< AsyncAdminSession > AsyncAdminSessionPtr
A shared pointer to an AsyncAdminSession.
Definition Admin.h:6046
Deploy and manage Ice servers.
Definition Admin.h:34
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:28
The Ice RPC framework.
Definition SampleEvent.h:60
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:3689
std::optional< Ice::ObjectPrx > proxy
The direct proxy containing the adapter endpoints. This proxy is never null.
Definition Admin.h:3685
std::string id
The id of the adapter.
Definition Admin.h:3682
Dynamic information about the state of an adapter.
Definition Admin.h:3680
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:3006
std::string id
The ID of the adapter.
Definition Admin.h:3000
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:3010
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:3003
Information about an adapter registered with the IceGrid registry.
Definition Admin.h:2998
Describes an application.
std::int64_t updateTime
The last update time.
Definition Admin.h:3191
std::int64_t createTime
The creation time.
Definition Admin.h:3185
std::string updateUser
The user who updated the application.
Definition Admin.h:3194
std::string createUser
The user who created the application.
Definition Admin.h:3188
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:3200
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:3204
std::string uuid
Unique application identifier.
Definition Admin.h:3182
std::int32_t revision
The application revision number.
Definition Admin.h:3197
Information about an IceGrid application.
Definition Admin.h:3180
An application update descriptor to describe the updates to apply to a deployed application.
::IceGrid::ApplicationUpdateDescriptor descriptor
The update descriptor.
Definition Admin.h:3235
std::int32_t revision
The application revision number.
Definition Admin.h:3232
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:3239
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:3226
std::string updateUser
The user who updated the application.
Definition Admin.h:3229
Information about updates to an IceGrid application.
Definition Admin.h:3224
float avg5
The load average over the past 5 minutes.
Definition Admin.h:3153
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:3160
float avg15
The load average over the past 15 minutes.
Definition Admin.h:3156
float avg1
The load average over the past minute.
Definition Admin.h:3150
Information about the load of a node.
Definition Admin.h:3148
::IceGrid::NodeInfo info
Some static information about the node.
Definition Admin.h:3711
::IceGrid::AdapterDynamicInfoSeq adapters
The dynamic information of the adapters deployed on this node.
Definition Admin.h:3717
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:3721
::IceGrid::ServerDynamicInfoSeq servers
The dynamic information of the servers deployed on this node.
Definition Admin.h:3714
Dynamic information about the state of a node.
Definition Admin.h:3709
std::string release
The operation system release level.
Definition Admin.h:3082
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:3099
std::string machine
The machine hardware type.
Definition Admin.h:3088
std::string hostname
The network name of the host running this node.
Definition Admin.h:3079
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:3076
std::string version
The operation system version.
Definition Admin.h:3085
std::string name
The name of the node.
Definition Admin.h:3073
std::int32_t nProcessors
The number of processor threads on the node.
Definition Admin.h:3092
std::string dataDir
The path to the node data directory.
Definition Admin.h:3095
Information about an IceGrid node.
Definition Admin.h:3071
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:2978
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:2974
std::optional< Ice::ObjectPrx > proxy
The proxy of the object.
Definition Admin.h:2971
Information about an Ice well-known object.
Definition Admin.h:2969
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:3128
std::string name
The name of the registry.
Definition Admin.h:3121
std::string hostname
The network name of the host running this registry.
Definition Admin.h:3124
Information about an IceGrid registry replica.
Definition Admin.h:3119
::IceGrid::ServerState state
The state of the server.
Definition Admin.h:3650
std::string id
The ID of the server.
Definition Admin.h:3647
std::int32_t pid
The process ID of the server.
Definition Admin.h:3653
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:3660
bool enabled
Indicates whether the server is enabled.
Definition Admin.h:3656
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:3645
::IceGrid::ServerDescriptorPtr descriptor
The server descriptor.
Definition Admin.h:3044
std::string application
The application to which this server belongs.
Definition Admin.h:3032
std::string uuid
The application UUID.
Definition Admin.h:3035
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:3051
std::string sessionId
The ID of the session which allocated the server.
Definition Admin.h:3047
std::string node
The IceGrid node where this server is deployed.
Definition Admin.h:3041
std::int32_t revision
The application revision.
Definition Admin.h:3038
Information about a server managed by an IceGrid node.
Definition Admin.h:3030
Describes a template instantiation that creates a server.
Definition Descriptor.h:633
Provides information about an incoming request being dispatched.
Definition Current.h:18
Represents the identity of an Ice object.
Definition Identity.h:41