zeroc-ice 3.7.11__cp314-cp314-macosx_10_15_universal2.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. Glacier2/Metrics_ice.py +82 -0
  2. Glacier2/PermissionsVerifierF_ice.py +32 -0
  3. Glacier2/PermissionsVerifier_ice.py +284 -0
  4. Glacier2/RouterF_ice.py +28 -0
  5. Glacier2/Router_ice.py +618 -0
  6. Glacier2/SSLInfo_ice.py +179 -0
  7. Glacier2/Session_ice.py +1103 -0
  8. Glacier2/__init__.py +226 -0
  9. Ice/BuiltinSequences_ice.py +65 -0
  10. Ice/CommunicatorF_ice.py +27 -0
  11. Ice/Communicator_ice.py +469 -0
  12. Ice/ConnectionF_ice.py +33 -0
  13. Ice/Connection_ice.py +680 -0
  14. Ice/Current_ice.py +175 -0
  15. Ice/EndpointF_ice.py +45 -0
  16. Ice/EndpointTypes_ice.py +54 -0
  17. Ice/Endpoint_ice.py +304 -0
  18. Ice/FacetMap_ice.py +27 -0
  19. Ice/Identity_ice.py +133 -0
  20. Ice/ImplicitContextF_ice.py +27 -0
  21. Ice/ImplicitContext_ice.py +119 -0
  22. Ice/InstrumentationF_ice.py +38 -0
  23. Ice/Instrumentation_ice.py +566 -0
  24. Ice/LocalException_ice.py +1715 -0
  25. Ice/LocatorF_ice.py +32 -0
  26. Ice/Locator_ice.py +728 -0
  27. Ice/LoggerF_ice.py +27 -0
  28. Ice/Logger_ice.py +96 -0
  29. Ice/Metrics_ice.py +864 -0
  30. Ice/ObjectAdapterF_ice.py +27 -0
  31. Ice/ObjectAdapter_ice.py +461 -0
  32. Ice/ObjectFactory_ice.py +68 -0
  33. Ice/PluginF_ice.py +30 -0
  34. Ice/Plugin_ice.py +136 -0
  35. Ice/ProcessF_ice.py +28 -0
  36. Ice/Process_ice.py +175 -0
  37. Ice/PropertiesAdmin_ice.py +247 -0
  38. Ice/PropertiesF_ice.py +31 -0
  39. Ice/Properties_ice.py +199 -0
  40. Ice/Py3/IceFuture.py +52 -0
  41. Ice/Py3/__init__.py +3 -0
  42. Ice/RemoteLogger_ice.py +617 -0
  43. Ice/RouterF_ice.py +28 -0
  44. Ice/Router_ice.py +350 -0
  45. Ice/ServantLocatorF_ice.py +27 -0
  46. Ice/ServantLocator_ice.py +110 -0
  47. Ice/SliceChecksumDict_ice.py +29 -0
  48. Ice/ValueFactory_ice.py +125 -0
  49. Ice/Version_ice.py +217 -0
  50. Ice/__init__.py +2008 -0
  51. IceBox/IceBox_ice.py +644 -0
  52. IceBox/__init__.py +10 -0
  53. IceGrid/Admin_ice.py +6662 -0
  54. IceGrid/Descriptor_ice.py +1795 -0
  55. IceGrid/Exception_ice.py +592 -0
  56. IceGrid/FileParser_ice.py +171 -0
  57. IceGrid/PluginFacade_ice.py +288 -0
  58. IceGrid/Registry_ice.py +985 -0
  59. IceGrid/Session_ice.py +406 -0
  60. IceGrid/UserAccountMapper_ice.py +166 -0
  61. IceGrid/__init__.py +17 -0
  62. IceMX/__init__.py +12 -0
  63. IcePatch2/FileInfo_ice.py +287 -0
  64. IcePatch2/FileServer_ice.py +555 -0
  65. IcePatch2/__init__.py +11 -0
  66. IcePy.cpython-314-darwin.so +0 -0
  67. IceStorm/IceStorm_ice.py +1265 -0
  68. IceStorm/Metrics_ice.py +106 -0
  69. IceStorm/__init__.py +10 -0
  70. slice/Glacier2/Metrics.ice +88 -0
  71. slice/Glacier2/PermissionsVerifier.ice +111 -0
  72. slice/Glacier2/PermissionsVerifierF.ice +30 -0
  73. slice/Glacier2/Router.ice +186 -0
  74. slice/Glacier2/RouterF.ice +29 -0
  75. slice/Glacier2/SSLInfo.ice +59 -0
  76. slice/Glacier2/Session.ice +274 -0
  77. slice/Ice/BuiltinSequences.ice +59 -0
  78. slice/Ice/Communicator.ice +676 -0
  79. slice/Ice/CommunicatorF.ice +31 -0
  80. slice/Ice/Connection.ice +516 -0
  81. slice/Ice/ConnectionF.ice +33 -0
  82. slice/Ice/Current.ice +170 -0
  83. slice/Ice/Endpoint.ice +291 -0
  84. slice/Ice/EndpointF.ice +43 -0
  85. slice/Ice/EndpointTypes.ice +48 -0
  86. slice/Ice/FacetMap.ice +36 -0
  87. slice/Ice/Identity.ice +75 -0
  88. slice/Ice/ImplicitContext.ice +119 -0
  89. slice/Ice/ImplicitContextF.ice +30 -0
  90. slice/Ice/Instrumentation.ice +509 -0
  91. slice/Ice/InstrumentationF.ice +38 -0
  92. slice/Ice/LocalException.ice +1040 -0
  93. slice/Ice/Locator.ice +239 -0
  94. slice/Ice/LocatorF.ice +32 -0
  95. slice/Ice/Logger.ice +99 -0
  96. slice/Ice/LoggerF.ice +31 -0
  97. slice/Ice/Metrics.ice +436 -0
  98. slice/Ice/ObjectAdapter.ice +710 -0
  99. slice/Ice/ObjectAdapterF.ice +31 -0
  100. slice/Ice/ObjectFactory.ice +71 -0
  101. slice/Ice/Plugin.ice +131 -0
  102. slice/Ice/PluginF.ice +36 -0
  103. slice/Ice/Process.ice +64 -0
  104. slice/Ice/ProcessF.ice +31 -0
  105. slice/Ice/Properties.ice +244 -0
  106. slice/Ice/PropertiesAdmin.ice +87 -0
  107. slice/Ice/PropertiesF.ice +32 -0
  108. slice/Ice/RemoteLogger.ice +226 -0
  109. slice/Ice/Router.ice +103 -0
  110. slice/Ice/RouterF.ice +31 -0
  111. slice/Ice/ServantLocator.ice +136 -0
  112. slice/Ice/ServantLocatorF.ice +31 -0
  113. slice/Ice/SliceChecksumDict.ice +36 -0
  114. slice/Ice/ValueFactory.ice +133 -0
  115. slice/Ice/Version.ice +51 -0
  116. slice/IceBT/ConnectionInfo.ice +59 -0
  117. slice/IceBT/EndpointInfo.ice +57 -0
  118. slice/IceBT/Types.ice +45 -0
  119. slice/IceBox/IceBox.ice +216 -0
  120. slice/IceGrid/Admin.ice +1957 -0
  121. slice/IceGrid/Descriptor.ice +1094 -0
  122. slice/IceGrid/Exception.ice +396 -0
  123. slice/IceGrid/FileParser.ice +72 -0
  124. slice/IceGrid/PluginFacade.ice +329 -0
  125. slice/IceGrid/Registry.ice +269 -0
  126. slice/IceGrid/Session.ice +128 -0
  127. slice/IceGrid/UserAccountMapper.ice +69 -0
  128. slice/IceIAP/ConnectionInfo.ice +74 -0
  129. slice/IceIAP/EndpointInfo.ice +68 -0
  130. slice/IcePatch2/FileInfo.ice +85 -0
  131. slice/IcePatch2/FileServer.ice +191 -0
  132. slice/IceSSL/ConnectionInfo.ice +54 -0
  133. slice/IceSSL/ConnectionInfoF.ice +31 -0
  134. slice/IceSSL/EndpointInfo.ice +45 -0
  135. slice/IceStorm/IceStorm.ice +414 -0
  136. slice/IceStorm/Metrics.ice +83 -0
  137. slice2py.py +21 -0
  138. zeroc_ice-3.7.11.dist-info/METADATA +97 -0
  139. zeroc_ice-3.7.11.dist-info/RECORD +142 -0
  140. zeroc_ice-3.7.11.dist-info/WHEEL +5 -0
  141. zeroc_ice-3.7.11.dist-info/entry_points.txt +2 -0
  142. zeroc_ice-3.7.11.dist-info/top_level.txt +10 -0
@@ -0,0 +1,133 @@
1
+ //
2
+ // Copyright (c) ZeroC, Inc. All rights reserved.
3
+ //
4
+
5
+ #pragma once
6
+
7
+ [["cpp:dll-export:ICE_API"]]
8
+ [["cpp:doxygen:include:Ice/Ice.h"]]
9
+ [["cpp:header-ext:h"]]
10
+
11
+ [["ice-prefix"]]
12
+
13
+ [["js:module:ice"]]
14
+ [["js:cjs-module"]]
15
+
16
+ [["objc:dll-export:ICE_API"]]
17
+ [["objc:header-dir:objc"]]
18
+
19
+ [["python:pkgdir:Ice"]]
20
+
21
+ #ifndef __SLICE2JAVA_COMPAT__
22
+ [["java:package:com.zeroc"]]
23
+ #endif
24
+
25
+ ["objc:prefix:ICE"]
26
+ module Ice
27
+ {
28
+
29
+ #if !defined(__SLICE2PHP__)
30
+ /**
31
+ *
32
+ * A factory for values. Value factories are used in several
33
+ * places, such as when Ice receives a class instance and
34
+ * when Freeze restores a persistent value. Value factories
35
+ * must be implemented by the application writer and registered
36
+ * with the communicator.
37
+ *
38
+ **/
39
+ ["delegate"]
40
+ local interface ValueFactory
41
+ {
42
+ /**
43
+ *
44
+ * Create a new value for a given value type. The type is the
45
+ * absolute Slice type id, i.e., the id relative to the
46
+ * unnamed top-level Slice module. For example, the absolute
47
+ * Slice type id for an interface <code>Bar</code> in the module
48
+ * <code>Foo</code> is <code>"::Foo::Bar"</code>.
49
+ *
50
+ * Note that the leading "<code>::</code>" is required.
51
+ *
52
+ * @param type The value type.
53
+ *
54
+ * @return The value created for the given type, or nil if the
55
+ * factory is unable to create the value.
56
+ *
57
+ **/
58
+ ["swift:noexcept"] Value create(string type);
59
+ }
60
+
61
+ /**
62
+ *
63
+ * A value factory manager maintains a collection of value factories.
64
+ * An application can supply a custom implementation during communicator
65
+ * initialization, otherwise Ice provides a default implementation.
66
+ *
67
+ * @see ValueFactory
68
+ *
69
+ **/
70
+ local interface ValueFactoryManager
71
+ {
72
+ /**
73
+ *
74
+ * Add a value factory. Attempting to add a factory with an id for
75
+ * which a factory is already registered throws AlreadyRegisteredException.
76
+ *
77
+ * When unmarshaling an Ice value, the Ice run time reads the
78
+ * most-derived type id off the wire and attempts to create an
79
+ * instance of the type using a factory. If no instance is created,
80
+ * either because no factory was found, or because all factories
81
+ * returned nil, the behavior of the Ice run time depends on the
82
+ * format with which the value was marshaled:
83
+ *
84
+ * If the value uses the "sliced" format, Ice ascends the class
85
+ * hierarchy until it finds a type that is recognized by a factory,
86
+ * or it reaches the least-derived type. If no factory is found that
87
+ * can create an instance, the run time throws NoValueFactoryException.
88
+ *
89
+ * If the value uses the "compact" format, Ice immediately raises
90
+ * NoValueFactoryException.
91
+ *
92
+ * The following order is used to locate a factory for a type:
93
+ *
94
+ * <ol>
95
+ *
96
+ * <li>The Ice run-time looks for a factory registered
97
+ * specifically for the type.</li>
98
+ *
99
+ * <li>If no instance has been created, the Ice run-time looks
100
+ * for the default factory, which is registered with an empty type id.
101
+ * </li>
102
+ *
103
+ * <li>If no instance has been created by any of the preceding
104
+ * steps, the Ice run-time looks for a factory that may have been
105
+ * statically generated by the language mapping for non-abstract classes.
106
+ * </li>
107
+ *
108
+ * </ol>
109
+ *
110
+ * @param factory The factory to add.
111
+ *
112
+ * @param id The type id for which the factory can create instances, or
113
+ * an empty string for the default factory.
114
+ *
115
+ **/
116
+ void add(["swift:nonnull"] ValueFactory factory, ["objc:param:sliceId"] string id);
117
+
118
+ /**
119
+ *
120
+ * Find an value factory registered with this communicator.
121
+ *
122
+ * @param id The type id for which the factory can create instances,
123
+ * or an empty string for the default factory.
124
+ *
125
+ * @return The value factory, or null if no value factory was
126
+ * found for the given id.
127
+ *
128
+ **/
129
+ ["cpp:const", "cpp:noexcept", "swift:noexcept"] ValueFactory find(string id);
130
+ }
131
+ #endif
132
+
133
+ }
slice/Ice/Version.ice ADDED
@@ -0,0 +1,51 @@
1
+ //
2
+ // Copyright (c) ZeroC, Inc. All rights reserved.
3
+ //
4
+
5
+ #pragma once
6
+
7
+ [["cpp:dll-export:ICE_API"]]
8
+ [["cpp:doxygen:include:Ice/Ice.h"]]
9
+ [["cpp:header-ext:h"]]
10
+
11
+ [["ice-prefix"]]
12
+
13
+ [["js:module:ice"]]
14
+ [["js:cjs-module"]]
15
+
16
+ [["objc:dll-export:ICE_API"]]
17
+ [["objc:header-dir:objc"]]
18
+
19
+ [["python:pkgdir:Ice"]]
20
+
21
+ #ifndef __SLICE2JAVA_COMPAT__
22
+ [["java:package:com.zeroc"]]
23
+ #endif
24
+
25
+ ["objc:prefix:ICE"]
26
+ module Ice
27
+ {
28
+
29
+ /**
30
+ *
31
+ * A version structure for the protocol version.
32
+ *
33
+ **/
34
+ struct ProtocolVersion
35
+ {
36
+ byte major;
37
+ byte minor;
38
+ }
39
+
40
+ /**
41
+ *
42
+ * A version structure for the encoding version.
43
+ *
44
+ **/
45
+ struct EncodingVersion
46
+ {
47
+ byte major;
48
+ byte minor;
49
+ }
50
+
51
+ }
@@ -0,0 +1,59 @@
1
+ //
2
+ // Copyright (c) ZeroC, Inc. All rights reserved.
3
+ //
4
+
5
+ #pragma once
6
+
7
+ [["cpp:dll-export:ICEBT_API"]]
8
+ [["cpp:doxygen:include:IceBT/IceBT.h"]]
9
+ [["cpp:header-ext:h"]]
10
+
11
+ [["ice-prefix"]]
12
+
13
+ [["js:module:ice"]]
14
+ [["js:cjs-module"]]
15
+
16
+ [["objc:header-dir:objc"]]
17
+
18
+ [["python:pkgdir:IceBT"]]
19
+
20
+ #include <Ice/Connection.ice>
21
+
22
+ #ifndef __SLICE2JAVA_COMPAT__
23
+ [["java:package:com.zeroc"]]
24
+ #endif
25
+
26
+ ["objc:prefix:ICEBT"]
27
+ module IceBT
28
+ {
29
+
30
+ /**
31
+ *
32
+ * Provides access to the details of a Bluetooth connection.
33
+ *
34
+ **/
35
+ local class ConnectionInfo extends Ice::ConnectionInfo
36
+ {
37
+ /** The local Bluetooth address. */
38
+ string localAddress = "";
39
+
40
+ /** The local RFCOMM channel. */
41
+ int localChannel = -1;
42
+
43
+ /** The remote Bluetooth address. */
44
+ string remoteAddress = "";
45
+
46
+ /** The remote RFCOMM channel. */
47
+ int remoteChannel = -1;
48
+
49
+ /** The UUID of the service being offered (in a server) or targeted (in a client). */
50
+ string uuid = "";
51
+
52
+ /** The connection buffer receive size. **/
53
+ int rcvSize = 0;
54
+
55
+ /** The connection buffer send size. **/
56
+ int sndSize = 0;
57
+ }
58
+
59
+ }
@@ -0,0 +1,57 @@
1
+ //
2
+ // Copyright (c) ZeroC, Inc. All rights reserved.
3
+ //
4
+
5
+ #pragma once
6
+
7
+ [["cpp:dll-export:ICEBT_API"]]
8
+ [["cpp:doxygen:include:IceBT/IceBT.h"]]
9
+ [["cpp:header-ext:h"]]
10
+
11
+ [["ice-prefix"]]
12
+
13
+ [["js:module:ice"]]
14
+ [["js:cjs-module"]]
15
+
16
+ [["objc:header-dir:objc"]]
17
+
18
+ [["python:pkgdir:IceBT"]]
19
+
20
+ #include <Ice/Endpoint.ice>
21
+
22
+ #ifndef __SLICE2JAVA_COMPAT__
23
+ [["java:package:com.zeroc"]]
24
+ #endif
25
+
26
+ /**
27
+ *
28
+ * IceBT provides a Bluetooth transport for Ice.
29
+ *
30
+ **/
31
+ ["objc:prefix:ICEBT", "swift:module:Ice:SSL"]
32
+ module IceBT
33
+ {
34
+
35
+ /**
36
+ *
37
+ * Provides access to Bluetooth endpoint information.
38
+ *
39
+ **/
40
+ local class EndpointInfo extends Ice::EndpointInfo
41
+ {
42
+ /**
43
+ *
44
+ * The address configured with the endpoint.
45
+ *
46
+ **/
47
+ string addr;
48
+
49
+ /**
50
+ *
51
+ * The UUID configured with the endpoint.
52
+ *
53
+ **/
54
+ string uuid;
55
+ }
56
+
57
+ }
slice/IceBT/Types.ice ADDED
@@ -0,0 +1,45 @@
1
+ //
2
+ // Copyright (c) ZeroC, Inc. All rights reserved.
3
+ //
4
+
5
+ #pragma once
6
+
7
+ [["cpp:dll-export:ICEBT_API"]]
8
+ [["cpp:doxygen:include:IceBT/IceBT.h"]]
9
+ [["cpp:header-ext:h"]]
10
+
11
+ [["ice-prefix"]]
12
+
13
+ [["js:module:ice"]]
14
+ [["js:cjs-module"]]
15
+
16
+ [["objc:header-dir:objc"]]
17
+
18
+ [["python:pkgdir:IceBT"]]
19
+
20
+ #ifndef __SLICE2JAVA_COMPAT__
21
+ [["java:package:com.zeroc"]]
22
+ #endif
23
+
24
+ /**
25
+ *
26
+ * IceBT provides a Bluetooth transport for Ice.
27
+ *
28
+ **/
29
+ ["objc:prefix:ICEBT"]
30
+ module IceBT
31
+ {
32
+
33
+ /**
34
+ *
35
+ * Indicates a failure in the Bluetooth plug-in.
36
+ *
37
+ **/
38
+ ["cpp:ice_print"]
39
+ local exception BluetoothException
40
+ {
41
+ /** Provides more information about the failure. */
42
+ string reason;
43
+ }
44
+
45
+ }
@@ -0,0 +1,216 @@
1
+ //
2
+ // Copyright (c) ZeroC, Inc. All rights reserved.
3
+ //
4
+
5
+ #pragma once
6
+
7
+ [["cpp:dll-export:ICEBOX_API"]]
8
+ [["cpp:doxygen:include:IceBox/IceBox.h"]]
9
+ [["cpp:header-ext:h"]]
10
+ [["cpp:include:IceBox/Config.h"]]
11
+
12
+ [["ice-prefix"]]
13
+
14
+ [["js:module:ice"]]
15
+ [["js:cjs-module"]]
16
+
17
+ [["objc:header-dir:objc"]]
18
+
19
+ [["python:pkgdir:IceBox"]]
20
+
21
+ #include <Ice/BuiltinSequences.ice>
22
+ #include <Ice/CommunicatorF.ice>
23
+ #include <Ice/PropertiesF.ice>
24
+ #include <Ice/SliceChecksumDict.ice>
25
+
26
+ #ifndef __SLICE2JAVA_COMPAT__
27
+ [["java:package:com.zeroc"]]
28
+ #endif
29
+
30
+ /**
31
+ *
32
+ * IceBox is an application server specifically for Ice
33
+ * applications. IceBox can easily run and administer Ice services
34
+ * that are dynamically loaded as a DLL, shared library, or Java
35
+ * class.
36
+ *
37
+ **/
38
+ module IceBox
39
+ {
40
+
41
+ /**
42
+ *
43
+ * This exception is a general failure notification. It is thrown
44
+ * for errors such as a service encountering an error during
45
+ * initialization, or the service manager being unable
46
+ * to load a service executable.
47
+ *
48
+ **/
49
+ ["cpp:ice_print"]
50
+ local exception FailureException
51
+ {
52
+ /**
53
+ *
54
+ * The reason for the failure.
55
+ *
56
+ **/
57
+ string reason;
58
+ }
59
+
60
+ /**
61
+ *
62
+ * This exception is thrown if an attempt is made to start an
63
+ * already-started service.
64
+ *
65
+ **/
66
+ exception AlreadyStartedException
67
+ {
68
+ }
69
+
70
+ /**
71
+ *
72
+ * This exception is thrown if an attempt is made to stop an
73
+ * already-stopped service.
74
+ *
75
+ **/
76
+ exception AlreadyStoppedException
77
+ {
78
+ }
79
+
80
+ /**
81
+ *
82
+ * This exception is thrown if a service name does not refer
83
+ * to an existing service.
84
+ *
85
+ **/
86
+ exception NoSuchServiceException
87
+ {
88
+ }
89
+
90
+ /**
91
+ *
92
+ * An application service managed by a {@link ServiceManager}.
93
+ *
94
+ **/
95
+ local interface Service
96
+ {
97
+ /**
98
+ *
99
+ * Start the service. The given communicator is created by the
100
+ * {@link ServiceManager} for use by the service. This communicator may
101
+ * also be used by other services, depending on the service
102
+ * configuration.
103
+ *
104
+ * <p class="Note">The {@link ServiceManager} owns this communicator, and is
105
+ * responsible for destroying it.
106
+ *
107
+ * @param name The service's name, as determined by the
108
+ * configuration.
109
+ *
110
+ * @param communicator A communicator for use by the service.
111
+ *
112
+ * @param args The service arguments that were not converted into
113
+ * properties.
114
+ *
115
+ * @throws FailureException Raised if {@link #start} failed.
116
+ *
117
+ **/
118
+ void start(string name, Ice::Communicator communicator, Ice::StringSeq args);
119
+
120
+ /**
121
+ *
122
+ * Stop the service.
123
+ *
124
+ **/
125
+ void stop();
126
+ }
127
+
128
+ /**
129
+ *
130
+ * An Observer interface implemented by admin clients interested in the status
131
+ * of services.
132
+ *
133
+ * @see ServiceManager
134
+ *
135
+ **/
136
+ interface ServiceObserver
137
+ {
138
+ /**
139
+ *
140
+ * Receives the names of the services that were started.
141
+ *
142
+ * @param services The names of the services.
143
+ *
144
+ **/
145
+ void servicesStarted(Ice::StringSeq services);
146
+
147
+ /**
148
+ *
149
+ * Receives the names of the services that were stopped.
150
+ *
151
+ * @param services The names of the services.
152
+ *
153
+ **/
154
+ void servicesStopped(Ice::StringSeq services);
155
+ }
156
+
157
+ /**
158
+ *
159
+ * Administers a set of {@link Service} instances.
160
+ *
161
+ * @see Service
162
+ *
163
+ **/
164
+ interface ServiceManager
165
+ {
166
+ /**
167
+ *
168
+ * Returns the checksums for the IceBox Slice definitions.
169
+ *
170
+ * @return A dictionary mapping Slice type ids to their checksums.
171
+ *
172
+ **/
173
+ ["nonmutating", "cpp:const"] idempotent Ice::SliceChecksumDict getSliceChecksums();
174
+
175
+ /**
176
+ *
177
+ * Start an individual service.
178
+ *
179
+ * @param service The service name.
180
+ *
181
+ * @throws AlreadyStartedException If the service is already running.
182
+ * @throws NoSuchServiceException If no service could be found with the given name.
183
+ **/
184
+ void startService(string service)
185
+ throws AlreadyStartedException, NoSuchServiceException;
186
+
187
+ /**
188
+ *
189
+ * Stop an individual service.
190
+ *
191
+ * @param service The service name.
192
+ *
193
+ * @throws AlreadyStoppedException If the service is already stopped.
194
+ * @throws NoSuchServiceException If no service could be found with the given name.
195
+ **/
196
+ void stopService(string service)
197
+ throws AlreadyStoppedException, NoSuchServiceException;
198
+
199
+ /**
200
+ *
201
+ * Registers a new observer with the ServiceManager.
202
+ *
203
+ * @param observer The new observer
204
+ *
205
+ **/
206
+ void addObserver(ServiceObserver* observer);
207
+
208
+ /**
209
+ *
210
+ * Shut down all services. This causes stop to be invoked on all configured services.
211
+ *
212
+ **/
213
+ void shutdown();
214
+ }
215
+
216
+ }