Ice 3.8
C++ API Reference
Loading...
Searching...
No Matches
ServiceManager.h
1// Copyright (c) ZeroC, Inc.
2
3// slice2cpp version 3.8.0-alpha.0
4// <auto-generated>Generated from Slice file 'ServiceManager.ice'.</auto-generated>
5// clang-format off
6
7#ifndef IceBox_ServiceManager_h_
8#define IceBox_ServiceManager_h_
9
11#include <Ice/Ice.h>
12#include <Ice/BuiltinSequences.h>
13#include <IceBox/Config.h>
14
15#ifndef ICE_DISABLE_VERSION
16# if ICE_INT_VERSION != 30850
17# error Ice version mismatch: an exact match is required for beta generated code
18# endif
19#endif
20
21#ifndef ICEBOX_API
22# if defined(ICEBOX_API_EXPORTS)
23# define ICEBOX_API ICE_DECLSPEC_EXPORT
24# else
25# define ICEBOX_API ICE_DECLSPEC_IMPORT
26# endif
27#endif
28
29// NOLINTBEGIN(modernize-concat-nested-namespaces)
30
31/// Host multiple independent services in the same Ice server.
32namespace IceBox
33{
35
37}
38
39namespace IceBox
40{
41 /// Observes the status of services in an IceBox server.
42 /// @remarks This interface is implemented by admin tools that monitor the IceBox server.
43 /// @see ServiceManager#addObserver
44 /// @headerfile IceBox/IceBox.h
45 class ICEBOX_API ServiceObserverPrx : public Ice::Proxy<ServiceObserverPrx, Ice::ObjectPrx>
46 {
47 public:
48 /// Constructs a proxy from a Communicator and a proxy string.
49 /// @param communicator The communicator of the new proxy.
50 /// @param proxyString The proxy string to parse.
51 ServiceObserverPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
52
53 /// Copy constructor. Constructs with a copy of the contents of @p other.
54 /// @param other The proxy to copy from.
55 ServiceObserverPrx(const ServiceObserverPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
56
57 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
58 /// @param other The proxy to move from.
59 ServiceObserverPrx(ServiceObserverPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
60
61 ~ServiceObserverPrx() override;
62
63 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
64 /// @param rhs The proxy to copy from.
65 /// @return A reference to this proxy.
67 {
68 if (this != &rhs)
69 {
71 }
72 return *this;
73 }
74
75 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
76 /// @param rhs The proxy to move from.
78 {
79 if (this != &rhs)
80 {
81 Ice::ObjectPrx::operator=(std::move(rhs));
82 }
83 return *this;
84 }
85
86 /// Receives the names of the services that were started.
87 /// @param services The names of the services that were started.
88 /// @param context The request context.
89 void servicesStarted(const ::Ice::StringSeq& services, const Ice::Context& context = Ice::noExplicitContext) const;
90
91 /// Receives the names of the services that were started.
92 /// @param services The names of the services that were started.
93 /// @param context The request context.
94 /// @return A future that becomes available when the invocation completes.
95 [[nodiscard]] std::future<void> servicesStartedAsync(const ::Ice::StringSeq& services, const Ice::Context& context = Ice::noExplicitContext) const;
96
97 /// Receives the names of the services that were started.
98 /// @param services The names of the services that were started.
99 /// @param response The response callback.
100 /// @param exception The exception callback.
101 /// @param sent The sent callback.
102 /// @param context The request context.
103 /// @return A function that can be called to cancel the invocation locally.
104 // NOLINTNEXTLINE(modernize-use-nodiscard)
105 std::function<void()> servicesStartedAsync(const ::Ice::StringSeq& services, 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;
106
107 /// @private
108 void _iceI_servicesStarted(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ::Ice::StringSeq&, const Ice::Context&) const;
109
110 /// Receives the names of the services that were stopped.
111 /// @param services The names of the services that were stopped.
112 /// @param context The request context.
113 void servicesStopped(const ::Ice::StringSeq& services, const Ice::Context& context = Ice::noExplicitContext) const;
114
115 /// Receives the names of the services that were stopped.
116 /// @param services The names of the services that were stopped.
117 /// @param context The request context.
118 /// @return A future that becomes available when the invocation completes.
119 [[nodiscard]] std::future<void> servicesStoppedAsync(const ::Ice::StringSeq& services, const Ice::Context& context = Ice::noExplicitContext) const;
120
121 /// Receives the names of the services that were stopped.
122 /// @param services The names of the services that were stopped.
123 /// @param response The response callback.
124 /// @param exception The exception callback.
125 /// @param sent The sent callback.
126 /// @param context The request context.
127 /// @return A function that can be called to cancel the invocation locally.
128 // NOLINTNEXTLINE(modernize-use-nodiscard)
129 std::function<void()> servicesStoppedAsync(const ::Ice::StringSeq& services, 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;
130
131 /// @private
132 void _iceI_servicesStopped(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const ::Ice::StringSeq&, const Ice::Context&) const;
133
134 /// Gets the type ID of the associated Slice interface.
135 /// @return The string `"::IceBox::ServiceObserver"`.
136 static const char* ice_staticId() noexcept;
137
138 /// @private
139 static ServiceObserverPrx _fromReference(IceInternal::ReferencePtr ref) { return ServiceObserverPrx{std::move(ref)}; }
140
141 protected:
142 /// @private
143 ServiceObserverPrx() = default;
144
145 /// @private
146 explicit ServiceObserverPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
147 {
148 }
149 };
150
151 /// Administers the services of an IceBox server.
152 /// @headerfile IceBox/IceBox.h
153 class ICEBOX_API ServiceManagerPrx : public Ice::Proxy<ServiceManagerPrx, Ice::ObjectPrx>
154 {
155 public:
156 /// Constructs a proxy from a Communicator and a proxy string.
157 /// @param communicator The communicator of the new proxy.
158 /// @param proxyString The proxy string to parse.
159 ServiceManagerPrx(const Ice::CommunicatorPtr& communicator, std::string_view proxyString) : Ice::ObjectPrx{communicator, proxyString} {} // NOLINT(modernize-use-equals-default)
160
161 /// Copy constructor. Constructs with a copy of the contents of @p other.
162 /// @param other The proxy to copy from.
163 ServiceManagerPrx(const ServiceManagerPrx& other) noexcept : Ice::ObjectPrx{other} {} // NOLINT(modernize-use-equals-default)
164
165 /// Move constructor. Constructs a proxy with the contents of @p other using move semantics.
166 /// @param other The proxy to move from.
167 ServiceManagerPrx(ServiceManagerPrx&& other) noexcept : Ice::ObjectPrx{std::move(other)} {} // NOLINT(modernize-use-equals-default)
168
169 ~ServiceManagerPrx() override;
170
171 /// Copy assignment operator. Replaces the contents of this proxy with a copy of the contents of @p rhs.
172 /// @param rhs The proxy to copy from.
173 /// @return A reference to this proxy.
175 {
176 if (this != &rhs)
177 {
179 }
180 return *this;
181 }
182
183 /// Move assignment operator. Replaces the contents of this proxy with the contents of @p rhs using move semantics.
184 /// @param rhs The proxy to move from.
186 {
187 if (this != &rhs)
188 {
189 Ice::ObjectPrx::operator=(std::move(rhs));
190 }
191 return *this;
192 }
193
194 /// Starts a service.
195 /// @param service The service name.
196 /// @param context The request context.
197 /// @throws IceBox::AlreadyStartedException Thrown when the service is already running.
198 /// @throws IceBox::NoSuchServiceException Thrown when IceBox does not know a service named @p service.
199 void startService(std::string_view service, const Ice::Context& context = Ice::noExplicitContext) const;
200
201 /// Starts a service.
202 /// @param service The service name.
203 /// @param context The request context.
204 /// @return A future that becomes available when the invocation completes.
205 [[nodiscard]] std::future<void> startServiceAsync(std::string_view service, const Ice::Context& context = Ice::noExplicitContext) const;
206
207 /// Starts a service.
208 /// @param service The service name.
209 /// @param response The response callback.
210 /// @param exception The exception callback.
211 /// @param sent The sent callback.
212 /// @param context The request context.
213 /// @return A function that can be called to cancel the invocation locally.
214 // NOLINTNEXTLINE(modernize-use-nodiscard)
215 std::function<void()> startServiceAsync(std::string_view service, 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;
216
217 /// @private
218 void _iceI_startService(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
219
220 /// Stops a service.
221 /// @param service The service name.
222 /// @param context The request context.
223 /// @throws IceBox::AlreadyStoppedException Thrown when the service is already stopped.
224 /// @throws IceBox::NoSuchServiceException Thrown when IceBox does not know a service named @p service.
225 void stopService(std::string_view service, const Ice::Context& context = Ice::noExplicitContext) const;
226
227 /// Stops a service.
228 /// @param service The service name.
229 /// @param context The request context.
230 /// @return A future that becomes available when the invocation completes.
231 [[nodiscard]] std::future<void> stopServiceAsync(std::string_view service, const Ice::Context& context = Ice::noExplicitContext) const;
232
233 /// Stops a service.
234 /// @param service The service name.
235 /// @param response The response callback.
236 /// @param exception The exception callback.
237 /// @param sent The sent callback.
238 /// @param context The request context.
239 /// @return A function that can be called to cancel the invocation locally.
240 // NOLINTNEXTLINE(modernize-use-nodiscard)
241 std::function<void()> stopServiceAsync(std::string_view service, 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;
242
243 /// @private
244 void _iceI_stopService(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, std::string_view, const Ice::Context&) const;
245
246 /// Registers a new observer with this service manager.
247 /// @param observer The new observer.
248 /// @param context The request context.
249 void addObserver(const std::optional<ServiceObserverPrx>& observer, const Ice::Context& context = Ice::noExplicitContext) const;
250
251 /// Registers a new observer with this service manager.
252 /// @param observer The new observer.
253 /// @param context The request context.
254 /// @return A future that becomes available when the invocation completes.
255 [[nodiscard]] std::future<void> addObserverAsync(const std::optional<ServiceObserverPrx>& observer, const Ice::Context& context = Ice::noExplicitContext) const;
256
257 /// Registers a new observer with this service manager.
258 /// @param observer The new observer.
259 /// @param response The response callback.
260 /// @param exception The exception callback.
261 /// @param sent The sent callback.
262 /// @param context The request context.
263 /// @return A function that can be called to cancel the invocation locally.
264 // NOLINTNEXTLINE(modernize-use-nodiscard)
265 std::function<void()> addObserverAsync(const std::optional<ServiceObserverPrx>& observer, 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;
266
267 /// @private
268 void _iceI_addObserver(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const std::optional<ServiceObserverPrx>&, const Ice::Context&) const;
269
270 /// Shuts down all services.
271 /// @param context The request context.
272 void shutdown(const Ice::Context& context = Ice::noExplicitContext) const;
273
274 /// Shuts down all services.
275 /// @param context The request context.
276 /// @return A future that becomes available when the invocation completes.
277 [[nodiscard]] std::future<void> shutdownAsync(const Ice::Context& context = Ice::noExplicitContext) const;
278
279 /// Shuts down all services.
280 /// @param response The response callback.
281 /// @param exception The exception callback.
282 /// @param sent The sent callback.
283 /// @param context The request context.
284 /// @return A function that can be called to cancel the invocation locally.
285 // NOLINTNEXTLINE(modernize-use-nodiscard)
286 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;
287
288 /// @private
289 void _iceI_shutdown(const std::shared_ptr<IceInternal::OutgoingAsyncT<void>>&, const Ice::Context&) const;
290
291 /// Gets the type ID of the associated Slice interface.
292 /// @return The string `"::IceBox::ServiceManager"`.
293 static const char* ice_staticId() noexcept;
294
295 /// @private
296 static ServiceManagerPrx _fromReference(IceInternal::ReferencePtr ref) { return ServiceManagerPrx{std::move(ref)}; }
297
298 protected:
299 /// @private
300 ServiceManagerPrx() = default;
301
302 /// @private
303 explicit ServiceManagerPrx(IceInternal::ReferencePtr&& ref) : Ice::ObjectPrx{std::move(ref)}
304 {
305 }
306 };
307}
308
309namespace IceBox
310{
311 /// The exception that is thrown when attempting to start a service that is already running.
312 /// @headerfile IceBox/IceBox.h
314 {
315 public:
316 /// Gets the type ID of the associated Slice exception.
317 /// @return The string `"::IceBox::AlreadyStartedException"`.
318 static const char* ice_staticId() noexcept;
319
320 [[nodiscard]] const char* ice_id() const noexcept override;
321
322 void ice_throw() const override;
323
324 protected:
325 /// @private
326 void _writeImpl(Ice::OutputStream*) const override;
327
328 /// @private
329 void _readImpl(Ice::InputStream*) override;
330 };
331
332 /// The exception that is thrown when attempting to stop a service that is already stopped.
333 /// @headerfile IceBox/IceBox.h
334 class ICEBOX_API AlreadyStoppedException : public Ice::UserException
335 {
336 public:
337 /// Gets the type ID of the associated Slice exception.
338 /// @return The string `"::IceBox::AlreadyStoppedException"`.
339 static const char* ice_staticId() noexcept;
340
341 [[nodiscard]] const char* ice_id() const noexcept override;
342
343 void ice_throw() const override;
344
345 protected:
346 /// @private
347 void _writeImpl(Ice::OutputStream*) const override;
348
349 /// @private
350 void _readImpl(Ice::InputStream*) override;
351 };
352
353 /// The exception that is thrown when a service name does not refer to a known service.
354 /// @headerfile IceBox/IceBox.h
355 class ICEBOX_API NoSuchServiceException : public Ice::UserException
356 {
357 public:
358 /// Gets the type ID of the associated Slice exception.
359 /// @return The string `"::IceBox::NoSuchServiceException"`.
360 static const char* ice_staticId() noexcept;
361
362 [[nodiscard]] const char* ice_id() const noexcept override;
363
364 void ice_throw() const override;
365
366 protected:
367 /// @private
368 void _writeImpl(Ice::OutputStream*) const override;
369
370 /// @private
371 void _readImpl(Ice::InputStream*) override;
372 };
373}
374
375namespace IceBox
376{
377 /// Observes the status of services in an IceBox server.
378 /// @remarks This interface is implemented by admin tools that monitor the IceBox server.
379 /// @see ServiceManager#addObserver
380 /// @headerfile IceBox/IceBox.h
381 class ICEBOX_API ServiceObserver : public virtual Ice::Object
382 {
383 public:
384 /// The associated proxy type.
386
387 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
388 /// @param request The incoming request.
389 /// @param sendResponse The callback to send the response.
390 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
391
392 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
393
394 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
395
396 /// Receives the names of the services that were started.
397 /// @param services The names of the services that were started.
398 /// @param current The Current object of the incoming request.
399 virtual void servicesStarted(::Ice::StringSeq services, const Ice::Current& current) = 0;
400
401 /// @private
402 void _iceD_servicesStarted(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
403
404 /// Receives the names of the services that were stopped.
405 /// @param services The names of the services that were stopped.
406 /// @param current The Current object of the incoming request.
407 virtual void servicesStopped(::Ice::StringSeq services, const Ice::Current& current) = 0;
408
409 /// @private
410 void _iceD_servicesStopped(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
411
412 /// Gets the type ID of the associated Slice interface.
413 /// @return The string `"::IceBox::ServiceObserver"`.
414 static const char* ice_staticId() noexcept;
415 };
416
417 /// A shared pointer to a ServiceObserver.
418 using ServiceObserverPtr = std::shared_ptr<ServiceObserver>;
419
420 /// Administers the services of an IceBox server.
421 /// @headerfile IceBox/IceBox.h
422 class ICEBOX_API ServiceManager : public virtual Ice::Object
423 {
424 public:
425 /// The associated proxy type.
426 using ProxyType = ServiceManagerPrx;
427
428 /// Dispatches an incoming request to one of the member functions of this generated class, based on the operation name carried by the request.
429 /// @param request The incoming request.
430 /// @param sendResponse The callback to send the response.
431 void dispatch(Ice::IncomingRequest& request, std::function<void(Ice::OutgoingResponse)> sendResponse) override;
432
433 [[nodiscard]] std::vector<std::string> ice_ids(const Ice::Current& current) const override;
434
435 [[nodiscard]] std::string ice_id(const Ice::Current& current) const override;
436
437 /// Starts a service.
438 /// @param service The service name.
439 /// @param current The Current object of the incoming request.
440 /// @throws IceBox::AlreadyStartedException Thrown when the service is already running.
441 /// @throws IceBox::NoSuchServiceException Thrown when IceBox does not know a service named @p service.
442 virtual void startService(std::string service, const Ice::Current& current) = 0;
443
444 /// @private
445 void _iceD_startService(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
446
447 /// Stops a service.
448 /// @param service The service name.
449 /// @param current The Current object of the incoming request.
450 /// @throws IceBox::AlreadyStoppedException Thrown when the service is already stopped.
451 /// @throws IceBox::NoSuchServiceException Thrown when IceBox does not know a service named @p service.
452 virtual void stopService(std::string service, const Ice::Current& current) = 0;
453
454 /// @private
455 void _iceD_stopService(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
456
457 /// Registers a new observer with this service manager.
458 /// @param observer The new observer.
459 /// @param current The Current object of the incoming request.
460 virtual void addObserver(std::optional<ServiceObserverPrx> observer, const Ice::Current& current) = 0;
461
462 /// @private
463 void _iceD_addObserver(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
464
465 /// Shuts down all services.
466 /// @param current The Current object of the incoming request.
467 virtual void shutdown(const Ice::Current& current) = 0;
468
469 /// @private
470 void _iceD_shutdown(Ice::IncomingRequest&, std::function<void(Ice::OutgoingResponse)>);
471
472 /// Gets the type ID of the associated Slice interface.
473 /// @return The string `"::IceBox::ServiceManager"`.
474 static const char* ice_staticId() noexcept;
475 };
476
477 /// A shared pointer to a ServiceManager.
478 using ServiceManagerPtr = std::shared_ptr<ServiceManager>;
479}
480
481// NOLINTEND(modernize-concat-nested-namespaces)
482
484#endif
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.
The exception that is thrown when attempting to start a service that is already running.
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.
The exception that is thrown when attempting to stop a service that is already stopped.
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.
The exception that is thrown when a service name does not refer to a known service.
std::function< void()> addObserverAsync(const std::optional< ServiceObserverPrx > &observer, 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
Registers a new observer with this service manager.
void stopService(std::string_view service, const Ice::Context &context=Ice::noExplicitContext) const
Stops a service.
std::function< void()> stopServiceAsync(std::string_view service, 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 service.
ServiceManagerPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
ServiceManagerPrx & operator=(const ServiceManagerPrx &rhs) noexcept
Copy assignment operator.
void shutdown(const Ice::Context &context=Ice::noExplicitContext) const
Shuts down all services.
std::future< void > shutdownAsync(const Ice::Context &context=Ice::noExplicitContext) const
Shuts down all services.
std::function< void()> startServiceAsync(std::string_view service, 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 service.
std::future< void > startServiceAsync(std::string_view service, const Ice::Context &context=Ice::noExplicitContext) const
Starts a service.
ServiceManagerPrx(const ServiceManagerPrx &other) noexcept
Copy constructor.
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 all services.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
void startService(std::string_view service, const Ice::Context &context=Ice::noExplicitContext) const
Starts a service.
void addObserver(const std::optional< ServiceObserverPrx > &observer, const Ice::Context &context=Ice::noExplicitContext) const
Registers a new observer with this service manager.
std::future< void > stopServiceAsync(std::string_view service, const Ice::Context &context=Ice::noExplicitContext) const
Stops a service.
std::future< void > addObserverAsync(const std::optional< ServiceObserverPrx > &observer, const Ice::Context &context=Ice::noExplicitContext) const
Registers a new observer with this service manager.
ServiceManagerPrx & operator=(ServiceManagerPrx &&rhs) noexcept
Move assignment operator.
ServiceManagerPrx(ServiceManagerPrx &&other) noexcept
Move constructor.
Administers the services of an IceBox server.
std::future< void > servicesStoppedAsync(const ::Ice::StringSeq &services, const Ice::Context &context=Ice::noExplicitContext) const
Receives the names of the services that were stopped.
std::future< void > servicesStartedAsync(const ::Ice::StringSeq &services, const Ice::Context &context=Ice::noExplicitContext) const
Receives the names of the services that were started.
ServiceObserverPrx(ServiceObserverPrx &&other) noexcept
Move constructor.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice interface.
ServiceObserverPrx(const Ice::CommunicatorPtr &communicator, std::string_view proxyString)
Constructs a proxy from a Communicator and a proxy string.
void servicesStopped(const ::Ice::StringSeq &services, const Ice::Context &context=Ice::noExplicitContext) const
Receives the names of the services that were stopped.
ServiceObserverPrx & operator=(ServiceObserverPrx &&rhs) noexcept
Move assignment operator.
ServiceObserverPrx(const ServiceObserverPrx &other) noexcept
Copy constructor.
std::function< void()> servicesStoppedAsync(const ::Ice::StringSeq &services, 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
Receives the names of the services that were stopped.
std::function< void()> servicesStartedAsync(const ::Ice::StringSeq &services, 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
Receives the names of the services that were started.
void servicesStarted(const ::Ice::StringSeq &services, const Ice::Context &context=Ice::noExplicitContext) const
Receives the names of the services that were started.
ServiceObserverPrx & operator=(const ServiceObserverPrx &rhs) noexcept
Copy assignment operator.
Observes the status of services in an IceBox server.
virtual void servicesStarted(::Ice::StringSeq services, const Ice::Current &current)=0
Receives the names of the services that were started.
virtual void servicesStopped(::Ice::StringSeq services, const Ice::Current &current)=0
Receives the names of the services that were stopped.
std::vector< std::string > ice_ids(const Ice::Current &current) const override
Gets the Slice interfaces supported by this object as a list of type IDs.
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,...
ServiceObserverPrx ProxyType
The associated proxy type.
std::string ice_id(const Ice::Current &current) const override
Gets the type ID of the most-derived Slice interface supported by this object.
Observes the status of services in an IceBox server.
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
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 Ice exceptions defined in Slice.
std::shared_ptr< ServiceManager > ServiceManagerPtr
A shared pointer to a ServiceManager.
std::shared_ptr< ServiceObserver > ServiceObserverPtr
A shared pointer to a ServiceObserver.
Host multiple independent services in the same Ice server.
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:59
Provides information about an incoming request being dispatched.
Definition Current.h:18