zeroc-ice-x64-mingw 3.6b1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (147) hide show
  1. checksums.yaml +7 -0
  2. data/ICE_LICENSE +54 -0
  3. data/LICENSE +339 -0
  4. data/bin/slice2rb +17 -0
  5. data/ice-x64-mingw.gemspec +41 -0
  6. data/lib/Glacier2.rb +12 -0
  7. data/lib/Glacier2/Metrics.rb +99 -0
  8. data/lib/Glacier2/PermissionsVerifier.rb +168 -0
  9. data/lib/Glacier2/PermissionsVerifierF.rb +34 -0
  10. data/lib/Glacier2/Router.rb +141 -0
  11. data/lib/Glacier2/RouterF.rb +29 -0
  12. data/lib/Glacier2/SSLInfo.rb +79 -0
  13. data/lib/Glacier2/Session.rb +470 -0
  14. data/lib/Ice.rb +659 -0
  15. data/lib/Ice/BuiltinSequences.rb +64 -0
  16. data/lib/Ice/Communicator.rb +93 -0
  17. data/lib/Ice/CommunicatorF.rb +28 -0
  18. data/lib/Ice/Connection.rb +414 -0
  19. data/lib/Ice/ConnectionF.rb +36 -0
  20. data/lib/Ice/Current.rb +152 -0
  21. data/lib/Ice/Endpoint.rb +265 -0
  22. data/lib/Ice/EndpointF.rb +52 -0
  23. data/lib/Ice/EndpointTypes.rb +77 -0
  24. data/lib/Ice/FacetMap.rb +28 -0
  25. data/lib/Ice/Identity.rb +70 -0
  26. data/lib/Ice/ImplicitContext.rb +59 -0
  27. data/lib/Ice/ImplicitContextF.rb +28 -0
  28. data/lib/Ice/Instrumentation.rb +425 -0
  29. data/lib/Ice/InstrumentationF.rb +35 -0
  30. data/lib/Ice/LocalException.rb +1081 -0
  31. data/lib/Ice/Locator.rb +314 -0
  32. data/lib/Ice/LocatorF.rb +34 -0
  33. data/lib/Ice/Logger.rb +57 -0
  34. data/lib/Ice/LoggerF.rb +28 -0
  35. data/lib/Ice/Metrics.rb +696 -0
  36. data/lib/Ice/ObjectAdapterF.rb +28 -0
  37. data/lib/Ice/ObjectFactory.rb +53 -0
  38. data/lib/Ice/ObjectFactoryF.rb +28 -0
  39. data/lib/Ice/Plugin.rb +87 -0
  40. data/lib/Ice/PluginF.rb +32 -0
  41. data/lib/Ice/Process.rb +93 -0
  42. data/lib/Ice/ProcessF.rb +29 -0
  43. data/lib/Ice/Properties.rb +65 -0
  44. data/lib/Ice/PropertiesAdmin.rb +104 -0
  45. data/lib/Ice/PropertiesF.rb +33 -0
  46. data/lib/Ice/Router.rb +163 -0
  47. data/lib/Ice/RouterF.rb +29 -0
  48. data/lib/Ice/SliceChecksumDict.rb +28 -0
  49. data/lib/Ice/Version.rb +100 -0
  50. data/lib/IceBox.rb +10 -0
  51. data/lib/IceBox/IceBox.rb +272 -0
  52. data/lib/IceGrid.rb +17 -0
  53. data/lib/IceGrid/Admin.rb +1076 -0
  54. data/lib/IceGrid/Descriptor.rb +1505 -0
  55. data/lib/IceGrid/Exception.rb +401 -0
  56. data/lib/IceGrid/FileParser.rb +105 -0
  57. data/lib/IceGrid/Locator.rb +105 -0
  58. data/lib/IceGrid/Observer.rb +571 -0
  59. data/lib/IceGrid/Query.rb +168 -0
  60. data/lib/IceGrid/Registry.rb +120 -0
  61. data/lib/IceGrid/Session.rb +114 -0
  62. data/lib/IceGrid/UserAccountMapper.rb +101 -0
  63. data/lib/IcePatch2.rb +10 -0
  64. data/lib/IcePatch2/FileInfo.rb +75 -0
  65. data/lib/IcePatch2/FileServer.rb +141 -0
  66. data/lib/IceRuby.so +0 -0
  67. data/lib/IceStorm.rb +11 -0
  68. data/lib/IceStorm/IceStorm.rb +463 -0
  69. data/lib/IceStorm/Metrics.rb +155 -0
  70. data/slice/Freeze/BackgroundSaveEvictor.ice +111 -0
  71. data/slice/Freeze/CatalogData.ice +49 -0
  72. data/slice/Freeze/Connection.ice +111 -0
  73. data/slice/Freeze/ConnectionF.ice +20 -0
  74. data/slice/Freeze/DB.ice +37 -0
  75. data/slice/Freeze/Evictor.ice +339 -0
  76. data/slice/Freeze/EvictorF.ice +22 -0
  77. data/slice/Freeze/EvictorStorage.ice +72 -0
  78. data/slice/Freeze/Exception.ice +100 -0
  79. data/slice/Freeze/Transaction.ice +57 -0
  80. data/slice/Freeze/TransactionalEvictor.ice +50 -0
  81. data/slice/Glacier2/Metrics.ice +77 -0
  82. data/slice/Glacier2/PermissionsVerifier.ice +105 -0
  83. data/slice/Glacier2/PermissionsVerifierF.ice +21 -0
  84. data/slice/Glacier2/Router.ice +178 -0
  85. data/slice/Glacier2/RouterF.ice +20 -0
  86. data/slice/Glacier2/SSLInfo.ice +50 -0
  87. data/slice/Glacier2/Session.ice +273 -0
  88. data/slice/Ice/BuiltinSequences.ice +48 -0
  89. data/slice/Ice/Communicator.ice +567 -0
  90. data/slice/Ice/CommunicatorF.ice +20 -0
  91. data/slice/Ice/Connection.ice +323 -0
  92. data/slice/Ice/ConnectionF.ice +22 -0
  93. data/slice/Ice/Current.ice +160 -0
  94. data/slice/Ice/Endpoint.ice +227 -0
  95. data/slice/Ice/EndpointF.ice +32 -0
  96. data/slice/Ice/EndpointTypes.ice +38 -0
  97. data/slice/Ice/FacetMap.ice +25 -0
  98. data/slice/Ice/Identity.ice +59 -0
  99. data/slice/Ice/ImplicitContext.ice +109 -0
  100. data/slice/Ice/ImplicitContextF.ice +20 -0
  101. data/slice/Ice/Instrumentation.ice +499 -0
  102. data/slice/Ice/InstrumentationF.ice +26 -0
  103. data/slice/Ice/LocalException.ice +1015 -0
  104. data/slice/Ice/Locator.ice +227 -0
  105. data/slice/Ice/LocatorF.ice +21 -0
  106. data/slice/Ice/Logger.ice +86 -0
  107. data/slice/Ice/LoggerF.ice +20 -0
  108. data/slice/Ice/Metrics.ice +422 -0
  109. data/slice/Ice/ObjectAdapter.ice +673 -0
  110. data/slice/Ice/ObjectAdapterF.ice +20 -0
  111. data/slice/Ice/ObjectFactory.ice +60 -0
  112. data/slice/Ice/ObjectFactoryF.ice +20 -0
  113. data/slice/Ice/Plugin.ice +117 -0
  114. data/slice/Ice/PluginF.ice +21 -0
  115. data/slice/Ice/Process.ice +54 -0
  116. data/slice/Ice/ProcessF.ice +20 -0
  117. data/slice/Ice/Properties.ice +228 -0
  118. data/slice/Ice/PropertiesAdmin.ice +75 -0
  119. data/slice/Ice/PropertiesF.ice +21 -0
  120. data/slice/Ice/RemoteLogger.ice +232 -0
  121. data/slice/Ice/Router.ice +83 -0
  122. data/slice/Ice/RouterF.ice +20 -0
  123. data/slice/Ice/ServantLocator.ice +117 -0
  124. data/slice/Ice/ServantLocatorF.ice +20 -0
  125. data/slice/Ice/SliceChecksumDict.ice +25 -0
  126. data/slice/Ice/Version.ice +39 -0
  127. data/slice/IceBox/IceBox.ice +194 -0
  128. data/slice/IceDiscovery/IceDiscovery.ice +32 -0
  129. data/slice/IceGrid/Admin.ice +1578 -0
  130. data/slice/IceGrid/Descriptor.ice +1079 -0
  131. data/slice/IceGrid/Discovery.ice +73 -0
  132. data/slice/IceGrid/Exception.ice +383 -0
  133. data/slice/IceGrid/FileParser.ice +61 -0
  134. data/slice/IceGrid/Locator.ice +56 -0
  135. data/slice/IceGrid/Observer.ice +394 -0
  136. data/slice/IceGrid/PluginFacade.ice +316 -0
  137. data/slice/IceGrid/Query.ice +130 -0
  138. data/slice/IceGrid/Registry.ice +138 -0
  139. data/slice/IceGrid/Session.ice +124 -0
  140. data/slice/IceGrid/UserAccountMapper.ice +58 -0
  141. data/slice/IcePatch2/FileInfo.ice +49 -0
  142. data/slice/IcePatch2/FileServer.ice +129 -0
  143. data/slice/IceSSL/ConnectionInfo.ice +34 -0
  144. data/slice/IceSSL/EndpointInfo.ice +41 -0
  145. data/slice/IceStorm/IceStorm.ice +405 -0
  146. data/slice/IceStorm/Metrics.ice +71 -0
  147. metadata +207 -0
@@ -0,0 +1,316 @@
1
+ // **********************************************************************
2
+ //
3
+ // Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
4
+ //
5
+ // This copy of Ice is licensed to you under the terms described in the
6
+ // ICE_LICENSE file included in this distribution.
7
+ //
8
+ // **********************************************************************
9
+
10
+ #pragma once
11
+
12
+ [["cpp:header-ext:h"]]
13
+ [["cpp:include:IceGrid/Config.h"]]
14
+
15
+ #include <Ice/BuiltinSequences.ice>
16
+ #include <Ice/Current.ice>
17
+
18
+ #include <IceGrid/Admin.ice>
19
+
20
+ module IceGrid
21
+ {
22
+
23
+ /**
24
+ *
25
+ * The ReplicaGroupFilter is used by IceGrid to filter adapters
26
+ * returned to the client when it resolves a filtered replica group.
27
+ *
28
+ * IceGrid provides the list of available adapters. The implementation
29
+ * of this method can use the provided context and connection to
30
+ * filter and return the filtered set of adapters.
31
+ *
32
+ **/
33
+ local interface ReplicaGroupFilter
34
+ {
35
+ /**
36
+ *
37
+ * Filter the the given set of adapters.
38
+ *
39
+ * @param replicaGroupId The replica group ID.
40
+ *
41
+ * @param adapterIds The adpater IDs to filter.
42
+ *
43
+ * @param con The connection from the Ice client which is
44
+ * resolving the replica group endpoints.
45
+ *
46
+ * @param ctx The context from the ICe client which is resolving
47
+ * the replica group endpoints.
48
+ *
49
+ * @return The filtered adapter IDs.
50
+ *
51
+ **/
52
+ Ice::StringSeq filter(string replicaGroupId, Ice::StringSeq adapterIds, Ice::Connection con, Ice::Context ctx);
53
+ };
54
+
55
+ /**
56
+ *
57
+ * The TypeFilter is used by IceGrid to filter well-known proxies
58
+ * returned to the client when it searches a well-known object by
59
+ * type.
60
+ *
61
+ * IceGrid provides the list of available proxies. The implementation
62
+ * of this method can use the provided context and connection to
63
+ * filter and return the filtered set of proxies.
64
+ *
65
+ **/
66
+ local interface TypeFilter
67
+ {
68
+ /**
69
+ *
70
+ * Filter the the given set of proxies.
71
+ *
72
+ * @param type The type.
73
+ *
74
+ * @param proxies The proxies to filter.
75
+ *
76
+ * @param con The connection from the Ice client which is
77
+ * looking up well-known objects by type.
78
+ *
79
+ * @param ctx The context from the ICe client which is looking up
80
+ * well-known objects by type.
81
+ *
82
+ * @return The filtered proxies.
83
+ *
84
+ **/
85
+ Ice::ObjectProxySeq filter(string type, Ice::ObjectProxySeq proxies, Ice::Connection con, Ice::Context ctx);
86
+ };
87
+
88
+
89
+ /**
90
+ *
91
+ * The RegistryPluginFacade is implemented by IceGrid and can be used
92
+ * by plugins and filter implementations to retrieve information from
93
+ * IceGrid about the well-known objects or adapters. It's also used to
94
+ * register/unregister replica group and type filters.
95
+ *
96
+ **/
97
+ local interface RegistryPluginFacade
98
+ {
99
+ /**
100
+ *
101
+ * Get an application descriptor.
102
+ *
103
+ * @param name The application name.
104
+ *
105
+ * @return The application descriptor.
106
+ *
107
+ * @throws ApplicationNotExistException Raised if the application
108
+ * doesn't exist.
109
+ *
110
+ **/
111
+ ["nonmutating", "cpp:const"] idempotent ApplicationInfo getApplicationInfo(string name)
112
+ throws ApplicationNotExistException;
113
+
114
+ /**
115
+ *
116
+ * Get the server information for the server with the given id.
117
+ *
118
+ * @param id The server id.
119
+ *
120
+ * @throws ServerNotExistException Raised if the server doesn't exist.
121
+ *
122
+ * @return The server information.
123
+ *
124
+ **/
125
+ ["nonmutating", "cpp:const"] idempotent ServerInfo getServerInfo(string id)
126
+ throws ServerNotExistException;
127
+
128
+ /**
129
+ *
130
+ * Get the ID of the server to which the given adapter belongs.
131
+ *
132
+ * @param adapterId The adapter ID.
133
+ *
134
+ * @return The server ID or the empty string if the given
135
+ * identifier is not associated to an object adapter defined with
136
+ * an application descriptor.
137
+ *
138
+ * @throws AdapterNotExistException Raised if the adapter doesn't
139
+ * exist.
140
+ *
141
+ **/
142
+ ["nonmutating", "cpp:const"] idempotent string getAdapterServer(string adapterId)
143
+ throws AdapterNotExistException;
144
+
145
+ /**
146
+ *
147
+ * Get the name of the application to which the given adapter belongs.
148
+ *
149
+ * @param adapterId The adapter ID.
150
+ *
151
+ * @return The application name or the empty string if the given
152
+ * identifier is not associated to a replica group or object
153
+ * adapter defined with an application descriptor.
154
+ *
155
+ * @throws AdapterNotExistException Raised if the adapter doesn't
156
+ * exist.
157
+ *
158
+ **/
159
+ ["nonmutating", "cpp:const"] idempotent string getAdapterApplication(string adapterId)
160
+ throws AdapterNotExistException;
161
+
162
+ /**
163
+ *
164
+ * Get the name of the node to which the given adapter belongs.
165
+ *
166
+ * @param adapterId The adapter ID.
167
+ *
168
+ * @return The node name or the empty string if the given
169
+ * identifier is not associated to an object adapter defined with
170
+ * an application descriptor.
171
+ *
172
+ * @throws AdapterNotExistException Raised if the adapter doesn't
173
+ * exist.
174
+ *
175
+ **/
176
+ ["nonmutating", "cpp:const"] idempotent string getAdapterNode(string adapterId)
177
+ throws AdapterNotExistException;
178
+
179
+ /**
180
+ *
181
+ * Get the adapter information for the replica group or adapter
182
+ * with the given id.
183
+ *
184
+ * @param id The adapter id.
185
+ *
186
+ * @return A sequence of adapter information structures. If the
187
+ * given id refers to an adapter, this sequence will contain only
188
+ * one element. If the given id refers to a replica group, the
189
+ * sequence will contain the adapter information of each member of
190
+ * the replica group.
191
+ *
192
+ * @throws AdapterNotExistException Raised if the adapter or
193
+ * replica group doesn't exist.
194
+ *
195
+ **/
196
+ ["nonmutating", "cpp:const"] idempotent AdapterInfoSeq getAdapterInfo(string id)
197
+ throws AdapterNotExistException;
198
+
199
+ /**
200
+ *
201
+ * Get the object info for the object with the given identity.
202
+ *
203
+ * @param id The identity of the object.
204
+ *
205
+ * @return The object info.
206
+ *
207
+ * @throws ObjectNotRegisteredException Raised if the object isn't
208
+ * registered with the registry.
209
+ *
210
+ **/
211
+ ["nonmutating", "cpp:const"] idempotent ObjectInfo getObjectInfo(Ice::Identity id)
212
+ throws ObjectNotRegisteredException;
213
+
214
+ /**
215
+ *
216
+ * Get the node information for the node with the given name.
217
+ *
218
+ * @param name The node name.
219
+ *
220
+ * @return The node information.
221
+ *
222
+ * @throws NodeNotExistException Raised if the node doesn't exist.
223
+ *
224
+ * @throws NodeUnreachableException Raised if the node could not be
225
+ * reached.
226
+ *
227
+ **/
228
+ ["nonmutating", "cpp:const"] idempotent NodeInfo getNodeInfo(string name)
229
+ throws NodeNotExistException, NodeUnreachableException;
230
+
231
+ /**
232
+ *
233
+ * Get the load averages of the node.
234
+ *
235
+ * @param name The node name.
236
+ *
237
+ * @return The node load information.
238
+ *
239
+ * @throws NodeNotExistException Raised if the node doesn't exist.
240
+ *
241
+ * @throws NodeUnreachableException Raised if the node could not be
242
+ * reached.
243
+ *
244
+ **/
245
+ ["nonmutating", "cpp:const"] idempotent LoadInfo getNodeLoad(string name)
246
+ throws NodeNotExistException, NodeUnreachableException;
247
+
248
+ /**
249
+ *
250
+ * Get the property value for the given property and adapter. The
251
+ * property is looked up in the server or service descriptor where
252
+ * the adapter is defined.
253
+ *
254
+ * @param adapterId The adapter ID
255
+ *
256
+ * @param name The name of the property.
257
+ *
258
+ * @return The property value.
259
+ *
260
+ **/
261
+ ["nonmutating", "cpp:const"] idempotent string getPropertyForAdapter(string adapterId, string name)
262
+ throws AdapterNotExistException;
263
+
264
+ /**
265
+ *
266
+ * Add a replica group filter.
267
+ *
268
+ * @param id The identifier of the filter. This identifier must
269
+ * match the value of the "filter" attribute specified in the
270
+ * replica group descriptor. To filter dynamically registered
271
+ * replica groups, you should use the empty filter id.
272
+ *
273
+ * @param filter The filter implementation.
274
+ *
275
+ **/
276
+ void addReplicaGroupFilter(string id, ReplicaGroupFilter filter);
277
+
278
+ /**
279
+ *
280
+ * Remove a replica group filter.
281
+ *
282
+ * @param id The identifier of the filter.
283
+ *
284
+ * @param filter The filter implementation.
285
+ *
286
+ * @return True of the filter was removed, false otherwise.
287
+ *
288
+ **/
289
+ bool removeReplicaGroupFilter(string id, ReplicaGroupFilter filter);
290
+
291
+ /**
292
+ *
293
+ * Add a type filter.
294
+ *
295
+ * @param type The type to register this filter with.
296
+ *
297
+ * @param filter The filter implementation.
298
+ *
299
+ **/
300
+ void addTypeFilter(string type, TypeFilter filter);
301
+
302
+ /**
303
+ *
304
+ * Remove a type filter.
305
+ *
306
+ * @param type The type to register this filter with.
307
+ *
308
+ * @param filter The filter implementation.
309
+ *
310
+ * @return True of the filter was removed, false otherwise.
311
+ *
312
+ **/
313
+ bool removeTypeFilter(string type, TypeFilter filter);
314
+ };
315
+
316
+ };
@@ -0,0 +1,130 @@
1
+ // **********************************************************************
2
+ //
3
+ // Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
4
+ //
5
+ // This copy of Ice is licensed to you under the terms described in the
6
+ // ICE_LICENSE file included in this distribution.
7
+ //
8
+ // **********************************************************************
9
+
10
+ #pragma once
11
+
12
+ [["cpp:header-ext:h"]]
13
+ [["cpp:include:IceGrid/Config.h"]]
14
+
15
+ #include <Ice/Identity.ice>
16
+ #include <Ice/BuiltinSequences.ice>
17
+
18
+ #include <IceGrid/Exception.ice>
19
+
20
+ /**
21
+ *
22
+ * IceGrid is a server activation and deployment tool. IceGrid,
23
+ * simplifies the complex task of deploying applications in a
24
+ * heterogeneous computer network.
25
+ *
26
+ **/
27
+ module IceGrid
28
+ {
29
+
30
+ /**
31
+ *
32
+ * Determines which load sampling interval to use.
33
+ *
34
+ **/
35
+ enum LoadSample
36
+ {
37
+ /**
38
+ * Sample every minute.
39
+ **/
40
+ LoadSample1,
41
+
42
+ /**
43
+ * Sample every five minutes.
44
+ **/
45
+ LoadSample5,
46
+
47
+ /**
48
+ * Sample every fifteen minutes.
49
+ **/
50
+ LoadSample15
51
+ };
52
+
53
+ /**
54
+ *
55
+ * The IceGrid query interface. This interface is accessible to
56
+ * Ice clients who wish to look up well-known objects.
57
+ *
58
+ **/
59
+ interface Query
60
+ {
61
+ /**
62
+ *
63
+ * Find a well-known object by identity.
64
+ *
65
+ * @param id The identity.
66
+ *
67
+ * @return The proxy or null if no such object has been found.
68
+ *
69
+ **/
70
+ ["nonmutating", "cpp:const"] idempotent Object* findObjectById(Ice::Identity id);
71
+
72
+ /**
73
+ *
74
+ * Find a well-known object by type. If there are several objects
75
+ * registered for the given type, the object is randomly
76
+ * selected.
77
+ *
78
+ * @param type The object type.
79
+ *
80
+ * @return The proxy or null, if no such object has been found.
81
+ *
82
+ **/
83
+ ["nonmutating", "cpp:const"] idempotent Object* findObjectByType(string type);
84
+
85
+ /**
86
+ *
87
+ * Find a well-known object by type on the least-loaded node. If
88
+ * the registry does not know which node hosts the object
89
+ * (for example, because the object was registered with a direct proxy), the
90
+ * registry assumes the object is hosted on a node that has a load
91
+ * average of 1.0.
92
+ *
93
+ * @param type The object type.
94
+ *
95
+ * @param sample The sampling interval.
96
+ *
97
+ * @return The proxy or null, if no such object has been found.
98
+ *
99
+ **/
100
+ ["nonmutating", "cpp:const"] idempotent Object* findObjectByTypeOnLeastLoadedNode(string type, LoadSample sample);
101
+
102
+ /**
103
+ *
104
+ * Find all the well-known objects with the given type.
105
+ *
106
+ * @param type The object type.
107
+ *
108
+ * @return The proxies or an empty sequence, if no such objects
109
+ * have been found.
110
+ *
111
+ **/
112
+ ["nonmutating", "cpp:const"] idempotent Ice::ObjectProxySeq findAllObjectsByType(string type);
113
+
114
+ /**
115
+ *
116
+ * Find all the object replicas associated with the given
117
+ * proxy. If the given proxy is not an indirect proxy from a
118
+ * replica group, an empty sequence is returned.
119
+ *
120
+ * @param proxy The object proxy.
121
+ *
122
+ * @return The proxies of each object replica or an empty sequence,
123
+ * if the given proxy is not from a replica group.
124
+ *
125
+ **/
126
+ ["cpp:const"] idempotent Ice::ObjectProxySeq findAllReplicas(Object* proxy);
127
+ };
128
+
129
+ };
130
+
@@ -0,0 +1,138 @@
1
+ // **********************************************************************
2
+ //
3
+ // Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
4
+ //
5
+ // This copy of Ice is licensed to you under the terms described in the
6
+ // ICE_LICENSE file included in this distribution.
7
+ //
8
+ // **********************************************************************
9
+
10
+ #pragma once
11
+
12
+ [["cpp:header-ext:h"]]
13
+ [["cpp:include:IceGrid/Config.h"]]
14
+
15
+ #include <IceGrid/Exception.ice>
16
+ #include <IceGrid/Session.ice>
17
+ #include <IceGrid/Admin.ice>
18
+
19
+ module IceGrid
20
+ {
21
+
22
+ /**
23
+ *
24
+ * The IceGrid registry allows clients create sessions
25
+ * directly with the registry.
26
+ *
27
+ * @see Session
28
+ * @see AdminSession
29
+ *
30
+ **/
31
+ interface Registry
32
+ {
33
+ /**
34
+ *
35
+ * Create a client session.
36
+ *
37
+ * @see Session
38
+ * @see Glacier2.PermissionsVerifier
39
+ *
40
+ * @return A proxy for the newly created session.
41
+ *
42
+ * @param userId The user id.
43
+ *
44
+ * @param password The password for the given user id.
45
+ *
46
+ * @throws PermissionDeniedException Raised if the password for
47
+ * the given user id is not correct, or if the user is not allowed
48
+ * access.
49
+ *
50
+ **/
51
+ Session* createSession(string userId, string password)
52
+ throws PermissionDeniedException;
53
+
54
+ /**
55
+ *
56
+ * Create an administrative session.
57
+ *
58
+ * @see Session
59
+ * @see Glacier2.PermissionsVerifier
60
+ *
61
+ * @return A proxy for the newly created session.
62
+ *
63
+ * @param userId The user id.
64
+ *
65
+ * @param password The password for the given user id.
66
+ *
67
+ * @throws PermissionDeniedException Raised if the password for
68
+ * the given user id is not correct, or if the user is not allowed
69
+ * access.
70
+ *
71
+ **/
72
+ AdminSession* createAdminSession(string userId, string password)
73
+ throws PermissionDeniedException;
74
+
75
+ /**
76
+ *
77
+ * Create a client session from a secure connection.
78
+ *
79
+ * @see Session
80
+ * @see Glacier2.SSLPermissionsVerifier
81
+ *
82
+ * @return A proxy for the newly created session.
83
+ *
84
+ * @throws PermissionDeniedException Raised if the password for
85
+ * the given user id is not correct, or if the user is not allowed
86
+ * access.
87
+ *
88
+ **/
89
+ Session* createSessionFromSecureConnection()
90
+ throws PermissionDeniedException;
91
+
92
+ /**
93
+ *
94
+ * Create an administrative session from a secure connection.
95
+ *
96
+ * @see Session
97
+ * @see Glacier2.SSLPermissionsVerifier
98
+ *
99
+ * @return A proxy for the newly created session.
100
+ *
101
+ * @throws PermissionDeniedException Raised if the password for
102
+ * the given user id is not correct, or if the user is not allowed
103
+ * access.
104
+ *
105
+ **/
106
+ AdminSession* createAdminSessionFromSecureConnection()
107
+ throws PermissionDeniedException;
108
+
109
+ /**
110
+ *
111
+ * Get the session timeout. If a client or administrative client
112
+ * doesn't call the session keepAlive method in the time interval
113
+ * defined by this timeout, IceGrid might reap the session.
114
+ *
115
+ * @see Session#keepAlive
116
+ * @see AdminSession#keepAlive
117
+ *
118
+ * @return The timeout (in seconds).
119
+ *
120
+ **/
121
+ ["nonmutating", "cpp:const"] idempotent int getSessionTimeout();
122
+
123
+ /**
124
+ *
125
+ * Get the value of the ACM timeout. Clients supporting ACM
126
+ * connection heartbeats can enable them instead of explicitly
127
+ * sending keep alives requests.
128
+ *
129
+ * NOTE: This method is only available since Ice 3.6.
130
+ *
131
+ * @return The timeout (in seconds).
132
+ *
133
+ **/
134
+ ["nonmutating", "cpp:const"] idempotent int getACMTimeout();
135
+ };
136
+
137
+ };
138
+