ridl 2.2.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,152 @@
1
+ // $Id$
2
+
3
+ #include <TimeBase.pidl>
4
+ #include <IOP.pidl>
5
+
6
+ #pragma prefix "omg.org"
7
+ module Messaging {
8
+ //
9
+ // Messaging Quality of Service
10
+ //
11
+ typedef short RebindMode;
12
+ const RebindMode TRANSPARENT = 0;
13
+ const RebindMode NO_REBIND = 1;
14
+ const RebindMode NO_RECONNECT = 2;
15
+ typedef short SyncScope;
16
+ const SyncScope SYNC_NONE = 0;
17
+ const SyncScope SYNC_WITH_TRANSPORT = 1;
18
+ const SyncScope SYNC_WITH_SERVER = 2;
19
+ const SyncScope SYNC_WITH_TARGET = 3;
20
+ typedef short RoutingType;
21
+ const RoutingType ROUTE_NONE = 0;
22
+ const RoutingType ROUTE_FORWARD = 1;
23
+ const RoutingType ROUTE_STORE_AND_FORWARD = 2;
24
+ typedef TimeBase::TimeT Timeout;
25
+ typedef short Priority;
26
+ typedef unsigned short Ordering;
27
+ const Ordering ORDER_ANY = 0x01;
28
+ const Ordering ORDER_TEMPORAL = 0x02;
29
+ const Ordering ORDER_PRIORITY = 0x04;
30
+ const Ordering ORDER_DEADLINE = 0x08;
31
+ //
32
+ // Locally-Constrained Policy Objects
33
+ //
34
+ // Rebind Policy (default = TRANSPARENT)
35
+ const CORBA::PolicyType REBIND_POLICY_TYPE = 23;
36
+ local interface RebindPolicy : CORBA::Policy {
37
+ readonly attribute RebindMode rebind_mode;
38
+ };
39
+ // Synchronization Policy (default = SYNC_WITH_TRANSPORT)
40
+ const CORBA::PolicyType SYNC_SCOPE_POLICY_TYPE = 24;
41
+ local interface SyncScopePolicy : CORBA::Policy {
42
+ readonly attribute SyncScope synchronization;
43
+ };
44
+ // Priority Policies
45
+
46
+
47
+
48
+ const CORBA::PolicyType REQUEST_PRIORITY_POLICY_TYPE = 25;
49
+ struct PriorityRange {
50
+ Priority min;
51
+ Priority max;
52
+ };
53
+ local interface RequestPriorityPolicy : CORBA::Policy {
54
+ readonly attribute PriorityRange priority_range;
55
+ };
56
+ const CORBA::PolicyType REPLY_PRIORITY_POLICY_TYPE = 26;
57
+ local interface ReplyPriorityPolicy : CORBA::Policy {
58
+ readonly attribute PriorityRange priority_range;
59
+ };
60
+ // Timeout Policies
61
+ const CORBA::PolicyType REQUEST_START_TIME_POLICY_TYPE = 27;
62
+ local interface RequestStartTimePolicy : CORBA::Policy {
63
+ readonly attribute TimeBase::UtcT start_time;
64
+ };
65
+ const CORBA::PolicyType REQUEST_END_TIME_POLICY_TYPE = 28;
66
+ local interface RequestEndTimePolicy : CORBA::Policy {
67
+ readonly attribute TimeBase::UtcT end_time;
68
+ };
69
+ const CORBA::PolicyType REPLY_START_TIME_POLICY_TYPE = 29;
70
+ local interface ReplyStartTimePolicy : CORBA::Policy {
71
+ readonly attribute TimeBase::UtcT start_time;
72
+ };
73
+ const CORBA::PolicyType REPLY_END_TIME_POLICY_TYPE = 30;
74
+ local interface ReplyEndTimePolicy : CORBA::Policy {
75
+ readonly attribute TimeBase::UtcT end_time;
76
+ };
77
+ const CORBA::PolicyType RELATIVE_REQ_TIMEOUT_POLICY_TYPE =
78
+ 31;
79
+ local interface RelativeRequestTimeoutPolicy : CORBA::Policy {
80
+ readonly attribute TimeBase::TimeT relative_expiry;
81
+ };
82
+ const CORBA::PolicyType RELATIVE_RT_TIMEOUT_POLICY_TYPE = 32;
83
+ local interface RelativeRoundtripTimeoutPolicy : CORBA::Policy {
84
+ readonly attribute TimeBase::TimeT relative_expiry;
85
+ };
86
+ const CORBA::PolicyType ROUTING_POLICY_TYPE = 33;
87
+ struct RoutingTypeRange {
88
+ RoutingType min;
89
+ RoutingType max;
90
+ };
91
+ local interface RoutingPolicy : CORBA::Policy {
92
+ readonly attribute RoutingTypeRange routing_range;
93
+ };
94
+
95
+
96
+ const CORBA::PolicyType MAX_HOPS_POLICY_TYPE = 34;
97
+ local interface MaxHopsPolicy : CORBA::Policy {
98
+ readonly attribute unsigned short max_hops;
99
+ };
100
+ // Router Delivery-ordering Policy (default = ORDER_TEMPORAL)
101
+ const CORBA::PolicyType QUEUE_ORDER_POLICY_TYPE = 35;
102
+ local interface QueueOrderPolicy : CORBA::Policy {
103
+ readonly attribute Ordering allowed_orders;
104
+ };
105
+ //
106
+ // Propagation of QoS Policies
107
+ //
108
+ struct PolicyValue {
109
+ CORBA::PolicyType ptype;
110
+ CORBA::OctetSeq pvalue;
111
+ };
112
+ typedef sequence<PolicyValue> PolicyValueSeq;
113
+ const IOP::ComponentId TAG_POLICIES = 2;
114
+ const IOP::ServiceId INVOCATION_POLICIES = 7;
115
+ //
116
+ // Exception Delivery in the Callback Model
117
+ //
118
+ // native UserExceptionBase;
119
+ //
120
+ // Replaced with CORBA::UserException below,
121
+ // as specified in the Java mapping.
122
+ //
123
+ /*
124
+ valuetype ExceptionHolder {
125
+ void raise_exception() raises (CORBA::UserException);
126
+ void raise_exception_with_list(
127
+ in CORBA::ExceptionList exc_list
128
+ ) raises (CORBA::UserException);
129
+ private boolean is_system_exception;
130
+ private boolean byte_order;
131
+ private sequence<octet> marshaled_exception;
132
+ };
133
+ */
134
+ //
135
+ // Base interface for the Callback model
136
+ //
137
+ interface ReplyHandler { };
138
+ //
139
+ // Base value for the Polling model
140
+ //
141
+ /*
142
+ value Poller supports CORBA::Pollable {
143
+ readonly attribute Object operation_target;
144
+ readonly attribute string operation_name;
145
+ attribute ReplyHandler associated_handler;
146
+ readonly attribute boolean is_from_poller;
147
+
148
+ Object target;
149
+ string op_name;
150
+ };
151
+ */
152
+ };
@@ -0,0 +1,371 @@
1
+ // CORBA V2.6
2
+ // PORTABLE OBJECT ADAPTER, Chapter 9
3
+ // $Id$
4
+
5
+ #ifndef _POA_IDL_
6
+ #define _POA_IDL_
7
+
8
+ #pragma prefix "omg.org"
9
+
10
+ #include <orb.idl>
11
+
12
+ module PortableServer
13
+ {
14
+ // forward declaration
15
+
16
+ local interface POA;
17
+ typedef sequence<POA> POAList;
18
+
19
+ native Servant;
20
+
21
+ typedef CORBA::OctetSeq ObjectId;
22
+
23
+ exception ForwardRequest
24
+ {
25
+ Object forward_reference;
26
+ };
27
+
28
+ // **********************************************
29
+ //
30
+ // Policy interfaces
31
+ //
32
+ // **********************************************
33
+
34
+ const CORBA::PolicyType THREAD_POLICY_ID = 16;
35
+ const CORBA::PolicyType LIFESPAN_POLICY_ID = 17;
36
+ const CORBA::PolicyType ID_UNIQUENESS_POLICY_ID = 18;
37
+ const CORBA::PolicyType ID_ASSIGNMENT_POLICY_ID = 19;
38
+ const CORBA::PolicyType IMPLICIT_ACTIVATION_POLICY_ID = 20;
39
+ const CORBA::PolicyType SERVANT_RETENTION_POLICY_ID = 21;
40
+ const CORBA::PolicyType REQUEST_PROCESSING_POLICY_ID = 22;
41
+
42
+ enum ThreadPolicyValue
43
+ {
44
+ ORB_CTRL_MODEL,
45
+ SINGLE_THREAD_MODEL,
46
+ MAIN_THREAD_MODEL
47
+ };
48
+
49
+ local interface ThreadPolicy : CORBA::Policy
50
+ {
51
+ readonly attribute ThreadPolicyValue value;
52
+ };
53
+
54
+ enum LifespanPolicyValue
55
+ {
56
+ TRANSIENT,
57
+ PERSISTENT
58
+ };
59
+
60
+ local interface LifespanPolicy : CORBA::Policy
61
+ {
62
+ readonly attribute LifespanPolicyValue value;
63
+ };
64
+
65
+ enum IdUniquenessPolicyValue
66
+ {
67
+ UNIQUE_ID,
68
+ MULTIPLE_ID
69
+ };
70
+
71
+ local interface IdUniquenessPolicy : CORBA::Policy
72
+ {
73
+ readonly attribute IdUniquenessPolicyValue value;
74
+ };
75
+
76
+ enum IdAssignmentPolicyValue
77
+ {
78
+ USER_ID,
79
+ SYSTEM_ID
80
+ };
81
+
82
+ local interface IdAssignmentPolicy : CORBA::Policy
83
+ {
84
+ readonly attribute IdAssignmentPolicyValue value;
85
+ };
86
+
87
+ enum ImplicitActivationPolicyValue
88
+ {
89
+ IMPLICIT_ACTIVATION,
90
+ NO_IMPLICIT_ACTIVATION
91
+ };
92
+
93
+ local interface ImplicitActivationPolicy : CORBA::Policy
94
+ {
95
+ readonly attribute ImplicitActivationPolicyValue value;
96
+ };
97
+
98
+ enum ServantRetentionPolicyValue
99
+ {
100
+ RETAIN,
101
+ NON_RETAIN
102
+ };
103
+
104
+ local interface ServantRetentionPolicy : CORBA::Policy
105
+ {
106
+ readonly attribute ServantRetentionPolicyValue value;
107
+ };
108
+
109
+ enum RequestProcessingPolicyValue
110
+ {
111
+ USE_ACTIVE_OBJECT_MAP_ONLY,
112
+ USE_DEFAULT_SERVANT,
113
+ USE_SERVANT_MANAGER
114
+ };
115
+
116
+ local interface RequestProcessingPolicy : CORBA::Policy
117
+ {
118
+ readonly attribute RequestProcessingPolicyValue value;
119
+ };
120
+
121
+ // **************************************************
122
+ //
123
+ // POAManager interface
124
+ //
125
+ // **************************************************
126
+
127
+ local interface POAManager
128
+ {
129
+ exception AdapterInactive {};
130
+
131
+ enum State { HOLDING, ACTIVE, DISCARDING, INACTIVE };
132
+
133
+ void activate ()
134
+ raises (AdapterInactive);
135
+ void hold_requests (in boolean wait_for_completion)
136
+ raises (AdapterInactive);
137
+ void discard_requests (in boolean wait_for_completion)
138
+ raises (AdapterInactive );
139
+ void deactivate (in boolean etherealize_objects,
140
+ in boolean wait_for_completion)
141
+ raises (AdapterInactive);
142
+
143
+ State get_state ();
144
+ };
145
+
146
+ // **************************************************
147
+ //
148
+ // AdapterActivator interface
149
+ //
150
+ // **************************************************
151
+
152
+ local interface AdapterActivator
153
+ {
154
+ boolean unknown_adapter (in POA parent, in string name);
155
+ };
156
+
157
+ // **************************************************
158
+ //
159
+ // ServantManager interface
160
+ //
161
+ // **************************************************
162
+
163
+ local interface ServantManager {};
164
+
165
+ local interface ServantActivator : ServantManager
166
+ {
167
+ Servant incarnate (in ObjectId oid,
168
+ in POA adapter)
169
+ raises (ForwardRequest);
170
+
171
+ void etherealize (in ObjectId oid,
172
+ in POA adapter,
173
+ in Servant serv,
174
+ in boolean cleanup_in_progress,
175
+ in boolean remaining_activations);
176
+ };
177
+
178
+ local interface ServantLocator : ServantManager
179
+ {
180
+ native Cookie;
181
+
182
+ Servant preinvoke (in ObjectId oid,
183
+ in POA adapter,
184
+ in CORBA::Identifier operation,
185
+ out Cookie the_cookie)
186
+ raises (ForwardRequest);
187
+
188
+ void postinvoke(in ObjectId oid,
189
+ in POA adapter,
190
+ in CORBA::Identifier operation,
191
+ in Cookie the_cookie,
192
+ in Servant the_servant );
193
+ };
194
+
195
+ // **************************************************
196
+ //
197
+ // POA interface
198
+ //
199
+ // **************************************************
200
+
201
+
202
+ local interface POA
203
+ {
204
+ exception AdapterAlreadyExists {};
205
+ exception AdapterInactive {};
206
+ exception AdapterNonExistent {};
207
+ exception InvalidPolicy {unsigned short index;};
208
+ exception NoServant {};
209
+ exception ObjectAlreadyActive {};
210
+ exception ObjectNotActive {};
211
+ exception ServantAlreadyActive {};
212
+ exception ServantNotActive {};
213
+ exception WrongAdapter {};
214
+ exception WrongPolicy {};
215
+
216
+ //--------------------------------------------------
217
+ //
218
+ // POA creation and destruction
219
+ //
220
+ //--------------------------------------------------
221
+
222
+ POA create_POA( in string adapter_name,
223
+ in POAManager a_POAManager,
224
+ in CORBA::PolicyList policies )
225
+ raises ( AdapterAlreadyExists, InvalidPolicy );
226
+
227
+ POA find_POA( in string adapter_name, in boolean activate_it )
228
+ raises ( AdapterNonExistent );
229
+
230
+ void destroy( in boolean etherealize_objects,
231
+ in boolean wait_for_completion );
232
+
233
+ // **************************************************
234
+ //
235
+ // Factories for Policy objects
236
+ //
237
+ // **************************************************
238
+ ThreadPolicy create_thread_policy
239
+ (in ThreadPolicyValue value);
240
+ LifespanPolicy create_lifespan_policy
241
+ (in LifespanPolicyValue value);
242
+ IdUniquenessPolicy create_id_uniqueness_policy
243
+ (in IdUniquenessPolicyValue value);
244
+ IdAssignmentPolicy create_id_assignment_policy
245
+ (in IdAssignmentPolicyValue value);
246
+ ImplicitActivationPolicy create_implicit_activation_policy
247
+ (in ImplicitActivationPolicyValue value);
248
+ ServantRetentionPolicy create_servant_retention_policy
249
+ (in ServantRetentionPolicyValue value);
250
+ RequestProcessingPolicy create_request_processing_policy
251
+ (in RequestProcessingPolicyValue value);
252
+
253
+ //--------------------------------------------------
254
+ //
255
+ // POA attributes
256
+ //
257
+ //--------------------------------------------------
258
+
259
+ readonly attribute string the_name;
260
+ readonly attribute POA the_parent;
261
+ readonly attribute POAList the_children;
262
+ readonly attribute POAManager the_POAManager;
263
+ attribute AdapterActivator the_activator;
264
+
265
+
266
+ //--------------------------------------------------
267
+ //
268
+ // Servant Manager registration:
269
+ //
270
+ //--------------------------------------------------
271
+
272
+ ServantManager get_servant_manager( )
273
+ raises ( WrongPolicy );
274
+
275
+ void set_servant_manager( in ServantManager imgr )
276
+ raises ( WrongPolicy );
277
+
278
+ //--------------------------------------------------
279
+ //
280
+ // operations for the USE_DEFAULT_SERVANT policy
281
+ //
282
+ //--------------------------------------------------
283
+
284
+ Servant get_servant( )
285
+ raises ( NoServant, WrongPolicy );
286
+
287
+ void set_servant( in Servant p_servant )
288
+ raises ( WrongPolicy );
289
+
290
+ // **************************************************
291
+ //
292
+ // object activation and deactivation
293
+ //
294
+ // **************************************************
295
+
296
+ ObjectId activate_object( in Servant p_servant )
297
+ raises ( ServantAlreadyActive, WrongPolicy );
298
+
299
+ void activate_object_with_id (in ObjectId id,
300
+ in Servant p_servant)
301
+ raises ( ServantAlreadyActive, ObjectAlreadyActive,
302
+ WrongPolicy );
303
+
304
+ void deactivate_object( in ObjectId oid )
305
+ raises ( ObjectNotActive, WrongPolicy );
306
+
307
+ // **************************************************
308
+ //
309
+ // reference creation operations
310
+ //
311
+ // **************************************************
312
+
313
+ Object create_reference (in CORBA::RepositoryId intf)
314
+ raises (WrongPolicy);
315
+
316
+ Object create_reference_with_id
317
+ (
318
+ in ObjectId oid,
319
+ in CORBA::RepositoryId intf
320
+ )
321
+ raises (WrongPolicy);
322
+
323
+
324
+ //--------------------------------------------------
325
+ //
326
+ // Identity mapping operations:
327
+ //
328
+ //--------------------------------------------------
329
+
330
+ ObjectId servant_to_id (in Servant p_servant)
331
+ raises (ServantNotActive, WrongPolicy);
332
+
333
+ Object servant_to_reference (in Servant p_servant)
334
+ raises (ServantNotActive, WrongPolicy);
335
+
336
+ Servant reference_to_servant (in Object reference)
337
+ raises (ObjectNotActive, WrongAdapter, WrongPolicy);
338
+
339
+ ObjectId reference_to_id (in Object reference)
340
+ raises (WrongAdapter, WrongPolicy);
341
+
342
+ Servant id_to_servant (in ObjectId oid)
343
+ raises (ObjectNotActive, WrongPolicy);
344
+
345
+ Object id_to_reference (in ObjectId oid)
346
+ raises (ObjectNotActive, WrongPolicy);
347
+ };
348
+
349
+
350
+ // **************************************************
351
+ //
352
+ // Current interface
353
+ //
354
+ // **************************************************
355
+
356
+ // not pseudo, because it must be returned as a subtype
357
+ // of CORBA::Object in resolve_initial_references()
358
+
359
+ local interface Current : CORBA::Current
360
+ {
361
+ exception NoContext {};
362
+
363
+ POA get_POA () raises (NoContext);
364
+ ObjectId get_object_id () raises (NoContext);
365
+ Object get_reference () raises (NoContext);
366
+ Servant get_servant () raises (NoContext);
367
+ };
368
+
369
+ };
370
+
371
+ #endif /* _POA_IDL_ */