epan/dissectors/pidl/ C99 drsuapi
[wireshark-sm.git] / epan / dissectors / corba-idl / parlay / gms.idl
bloba12f6085c837e63025744e614fc2c866b1231752
1 //Source file: gms.idl
2 //Date: 11 October 2004
3 //Generic Messaging Interfaces and Data Types for ETSI ES 203 915-09 V1.1.1, DES/TISPAN-01005-09-OSA, Parlay 5.0
5 #ifndef __GMS_DEFINED
6 #define __GMS_DEFINED
9 #include "osa.idl"
11 module org {
13 module csapi {
16 module gms {
17 interface IpAppMessagingManager ;
18 interface IpMailbox ;
19 interface IpMailboxFolder ;
23 enum TpMessagingFault {
25 P_MESSAGING_FAULT_UNDEFINED
29 enum TpMessagingEventName {
31 P_EVENT_GMS_NAME_UNDEFINED,
32 P_EVENT_GMS_NEW_MESSAGE_ARRIVED
36 enum TpMessageStatus {
38 P_MESSAGING_MESSAGE_STATUS_READ_MESSAGE,
39 P_MESSAGING_MESSAGE_STATUS_UNREAD_MESSAGE,
40 P_MESSAGING_MESSAGE_STATUS_FORWARDED_MESSAGE,
41 P_MESSAGING_MESSAGE_STATUS_REPLIED_TO_MESSAGE,
42 P_MESSAGING_MESSAGE_STATUS_SAVED_OR_UNSENT_MESSAGE,
43 P_MESSAGING_MESSAGE_STATUS_NOTIFICATION_THAT_A_MESSAGE_WAS_DELIVERED,
44 P_MESSAGING_MESSAGE_STATUS_NOTIFICATION_THAT_A_MESSAGE_WAS_READ,
45 P_MESSAGING_MESSAGE_STATUS_NOTIFICATION_THAT_A_MESSAGE_WAS_NOT_DELIVERED,
46 P_MESSAGING_MESSAGE_STATUS_NOTIFICATION_THAT_A_MESSAGE_WAS_NOT_READ
50 enum TpMessagePriority {
52 P_MESSAGING_MESSAGE_PRIORITY_UNDEFINED,
53 P_MESSAGING_MESSAGE_PRIORITY_HIGH,
54 P_MESSAGING_MESSAGE_PRIORITY_LOW
58 enum TpMessageInfoPropertyName {
60 P_MESSAGING_MESSAGE_UNDEFINED,
61 P_MESSAGING_MESSAGE_ID,
62 P_MESSAGING_MESSAGE_SUBJECT,
63 P_MESSAGING_MESSAGE_DATE_SENT,
64 P_MESSAGING_MESSAGE_DATE_RECEIVED,
65 P_MESSAGING_MESSAGE_DATE_CHANGED,
66 P_MESSAGING_MESSAGE_SENT_FROM,
67 P_MESSAGING_MESSAGE_SENT_TO,
68 P_MESSAGING_MESSAGE_CC_TO,
69 P_MESSAGING_MESSAGE_BCC_TO,
70 P_MESSAGING_MESSAGE_SIZE,
71 P_MESSAGING_MESSAGE_PRIORITY,
72 P_MESSAGING_MESSAGE_FORMAT,
73 P_MESSAGING_MESSAGE_FOLDER,
74 P_MESSAGING_MESSAGE_STATUS
78 enum TpMessageFormat {
80 P_MESSAGING_MESSAGE_FORMAT_UNDEFINED,
81 P_MESSAGING_MESSAGE_FORMAT_TEXT,
82 P_MESSAGING_MESSAGE_FORMAT_BINARY,
83 P_MESSAGING_MESSAGE_FORMAT_UUENCODED,
84 P_MESSAGING_MESSAGE_FORMAT_MIME,
85 P_MESSAGING_MESSAGE_FORMAT_WAVE,
86 P_MESSAGING_MESSAGE_FORMAT_AU
90 union TpMessageInfoProperty switch(TpMessageInfoPropertyName) {
91 case P_MESSAGING_MESSAGE_ID: TpString MessagingMessageID;
92 case P_MESSAGING_MESSAGE_SUBJECT: TpString MessagingMessageSubject;
93 case P_MESSAGING_MESSAGE_DATE_SENT: TpDateAndTime MessagingMessageDateSent;
94 case P_MESSAGING_MESSAGE_DATE_RECEIVED: TpDateAndTime MessagingMessageDateReceived;
95 case P_MESSAGING_MESSAGE_DATE_CHANGED: TpDateAndTime MessagingMessageDateChanged;
96 case P_MESSAGING_MESSAGE_SENT_FROM: TpAddress MessagingMessageSentFrom;
97 case P_MESSAGING_MESSAGE_SENT_TO: TpAddress MessagingMessageSentTo;
98 case P_MESSAGING_MESSAGE_CC_TO: TpAddress MessagingMessageCCTo;
99 case P_MESSAGING_MESSAGE_BCC_TO: TpAddress MessagingMessageBCCTo;
100 case P_MESSAGING_MESSAGE_SIZE: TpInt32 MessagingMessageSize;
101 case P_MESSAGING_MESSAGE_PRIORITY: TpMessagePriority MessagingMessagePriority;
102 case P_MESSAGING_MESSAGE_FORMAT: TpMessageFormat MessagingMessageFormat;
103 case P_MESSAGING_MESSAGE_FOLDER: TpString MessagingMessageFolder;
104 case P_MESSAGING_MESSAGE_STATUS: TpMessageStatus MessagingMessageStatus;
105 default: short Dummy;
109 typedef sequence <TpMessageInfoProperty> TpMessageInfoPropertySet;
112 enum TpMailboxInfoPropertyName {
114 P_MESSAGING_MAILBOX_UNDEFINED,
115 P_MESSAGING_MAILBOX_ID,
116 P_MESSAGING_MAILBOX_OWNER,
117 P_MESSAGING_MAILBOX_FOLDER,
118 P_MESSAGING_MAILBOX_DATE_CREATED,
119 P_MESSAGING_MAILBOX_DATE_CHANGED
123 union TpMailboxInfoProperty switch(TpMailboxInfoPropertyName) {
124 case P_MESSAGING_MAILBOX_ID: TpAddress MessagingMailboxID;
125 case P_MESSAGING_MAILBOX_OWNER: TpString MessagingMailboxOwner;
126 case P_MESSAGING_MAILBOX_FOLDER: TpString MessagingMailboxFolder;
127 case P_MESSAGING_MAILBOX_DATE_CREATED: TpDateAndTime MessagingMailboxDateCreated;
128 case P_MESSAGING_MAILBOX_DATE_CHANGED: TpDateAndTime MessagingMailboxDateChanged;
129 default: short Dummy;
133 typedef sequence <TpMailboxInfoProperty> TpMailboxInfoPropertySet;
136 struct TpGMSNewMessageArrivedInfo {
137 TpAddress MailboxID;
138 TpString FolderID;
139 TpString MessageID;
140 TpInt32 NumberOfProperties;
144 union TpMessagingEventInfo switch(TpMessagingEventName) {
145 case P_EVENT_GMS_NAME_UNDEFINED: TpString EventNameUndefined;
146 case P_EVENT_GMS_NEW_MESSAGE_ARRIVED: TpGMSNewMessageArrivedInfo EventGMSNewMessageArrived;
150 struct TpGMSNewMessageArrivedCriteria {
151 TpAddress MailboxID;
152 TpString AuthenticationInfo;
156 union TpMessagingEventCriteria switch(TpMessagingEventName) {
157 case P_EVENT_GMS_NEW_MESSAGE_ARRIVED: TpGMSNewMessageArrivedCriteria EventGMSNewMessageArrived;
158 default: short Dummy;
162 enum TpFolderInfoPropertyName {
164 P_MESSAGING_FOLDER_UNDEFINED,
165 P_MESSAGING_FOLDER_ID,
166 P_MESSAGING_FOLDER_MESSAGE,
167 P_MESSAGING_FOLDER_SUBFOLDER,
168 P_MESSAGING_FOLDER_DATE_CREATED,
169 P_MESSAGING_FOLDER_DATE_CHANGED
173 union TpFolderInfoProperty switch(TpFolderInfoPropertyName) {
174 case P_MESSAGING_FOLDER_ID: TpString MessagingFolderID;
175 case P_MESSAGING_FOLDER_MESSAGE: TpString MessagingFolderMessage;
176 case P_MESSAGING_FOLDER_SUBFOLDER: TpString MessagingFolderSubfolder;
177 case P_MESSAGING_FOLDER_DATE_CREATED: TpDateAndTime MessagingFolderDateCreated;
178 case P_MESSAGING_FOLDER_DATE_CHANGED: TpDateAndTime MessagingFolderDateChanged;
179 default: short Dummy;
183 typedef sequence <TpFolderInfoProperty> TpFolderInfoPropertySet;
186 exception P_GMS_INVALID_FOLDER_ID {
187 TpString ExtraInformation;
191 exception P_GMS_INSUFFICIENT_PRIVILEGE {
192 TpString ExtraInformation;
196 exception P_GMS_INVALID_AUTHENTICATION_INFORMATION {
197 TpString ExtraInformation;
201 exception P_GMS_INVALID_MAILBOX {
202 TpString ExtraInformation;
206 exception P_GMS_INVALID_MESSAGE_ID {
207 TpString ExtraInformation;
211 exception P_GMS_LOCKING_LOCKED_MAILBOX {
212 TpString ExtraInformation;
216 exception P_GMS_MESSAGE_NOT_REMOVED {
217 TpString ExtraInformation;
221 exception P_GMS_NUMBER_NOT_POSITIVE {
222 TpString ExtraInformation;
226 exception P_GMS_UNLOCKING_UNLOCKED_MAILBOX {
227 TpString ExtraInformation;
231 exception P_GMS_MAILBOX_LOCKED {
232 TpString ExtraInformation;
236 exception P_GMS_CANNOT_UNLOCK_MAILBOX {
237 TpString ExtraInformation;
241 exception P_GMS_PROPERTY_NOT_SET {
242 TpString ExtraInformation;
246 exception P_GMS_FOLDER_IS_OPEN {
247 TpString ExtraInformation;
251 exception P_GMS_MAILBOX_OPEN {
252 TpString ExtraInformation;
256 typedef TpLongString TpMessage;
259 struct TpMailboxIdentifier {
260 IpMailbox Mailbox;
261 TpSessionID SessionID;
265 struct TpMailboxFolderIdentifier {
266 IpMailboxFolder MailboxFolder;
267 TpSessionID SessionID;
271 interface IpMessagingManager : IpService {
273 TpMailboxIdentifier openMailbox (
274 in TpAddress mailboxID,
275 in TpString authenticationInfo
277 raises (TpCommonExceptions,P_GMS_INVALID_MAILBOX,P_GMS_INVALID_AUTHENTICATION_INFORMATION);
279 TpAssignmentID enableMessagingNotification (
280 in IpAppMessagingManager appInterface,
281 in TpMessagingEventCriteria eventCriteria
283 raises (TpCommonExceptions,P_INVALID_CRITERIA);
285 void disableMessagingNotification (
286 in TpAssignmentID assignmentID
288 raises (TpCommonExceptions,P_INVALID_ASSIGNMENT_ID);
293 interface IpAppMessagingManager : IpInterface {
294 void mailboxTerminated (
295 in IpMailbox mailbox,
296 in TpSessionID mailboxSessionID
299 void mailboxFaultDetected (
300 in IpMailbox mailbox,
301 in TpSessionID mailboxSessionID,
302 in TpMessagingFault fault
305 void messagingEventNotify (
306 in IpMessagingManager messagingManager,
307 in TpMessagingEventInfo eventInfo,
308 in TpAssignmentID assignmentID
311 void messagingNotificationTerminated ();
316 interface IpMailbox : IpService {
318 void close (
319 in TpSessionID mailboxSessionID
321 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
323 void lock (
324 in TpSessionID mailboxSessionID
326 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_LOCKING_LOCKED_MAILBOX);
328 void unlock (
329 in TpSessionID mailboxSessionID
331 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_UNLOCKING_UNLOCKED_MAILBOX,P_GMS_CANNOT_UNLOCK_MAILBOX);
333 TpInt32 getInfoAmount (
334 in TpSessionID mailboxSessionID
336 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
338 TpMailboxInfoPropertySet getInfoProperties (
339 in TpSessionID mailboxSessionID,
340 in TpInt32 firstProperty,
341 in TpInt32 numberOfProperties
343 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_NUMBER_NOT_POSITIVE);
345 void setInfoProperties (
346 in TpSessionID mailboxSessionID,
347 in TpInt32 firstProperty,
348 in TpMailboxInfoPropertySet mailboxInfoProperties
350 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_PROPERTY_NOT_SET,P_GMS_MAILBOX_LOCKED);
352 TpMailboxFolderIdentifier openFolder (
353 in TpSessionID mailboxSessionID,
354 in TpString folderID
356 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_FOLDER_IS_OPEN,P_GMS_INVALID_FOLDER_ID,P_GMS_MAILBOX_LOCKED);
358 void createFolder (
359 in TpSessionID mailboxSessionID,
360 in TpString folderID
362 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_INVALID_FOLDER_ID,P_GMS_MAILBOX_LOCKED);
364 void remove (
365 in TpAddress mailboxID,
366 in TpString authenticationInfo
368 raises (TpCommonExceptions,P_GMS_INSUFFICIENT_PRIVILEGE,P_GMS_INVALID_MAILBOX,P_GMS_MAILBOX_LOCKED,P_GMS_MAILBOX_OPEN,P_GMS_INVALID_AUTHENTICATION_INFORMATION);
372 interface IpMessage : IpService {
374 TpInt32 getInfoAmount (
375 in TpSessionID folderSessionID,
376 in TpString messageID
378 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_INVALID_MESSAGE_ID);
380 TpMessageInfoPropertySet getInfoProperties (
381 in TpSessionID folderSessionID,
382 in TpString messageID,
383 in TpInt32 firstProperty,
384 in TpInt32 numberOfProperties
386 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_NUMBER_NOT_POSITIVE,P_GMS_INVALID_MESSAGE_ID);
388 void setInfoProperties (
389 in TpSessionID folderSessionID,
390 in TpString messageID,
391 in TpInt32 firstProperty,
392 in TpMessageInfoPropertySet messageInfoProperties
394 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_INVALID_MESSAGE_ID,P_GMS_PROPERTY_NOT_SET);
396 void remove (
397 in TpSessionID folderSessionID,
398 in TpString messageID
400 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_INSUFFICIENT_PRIVILEGE,P_GMS_MESSAGE_NOT_REMOVED,P_GMS_INVALID_MESSAGE_ID);
402 TpMessage getContent (
403 in TpSessionID folderSessionID,
404 in TpString messageID
406 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_INVALID_MESSAGE_ID);
410 interface IpMailboxFolder : IpService {
412 TpInt32 getInfoAmount (
413 in TpSessionID folderSessionID
415 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
417 TpFolderInfoPropertySet getInfoProperties (
418 in TpSessionID folderSessionID,
419 in TpInt32 firstProperty,
420 in TpInt32 numberOfProperties
422 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_NUMBER_NOT_POSITIVE);
424 void setInfoProperties (
425 in TpSessionID folderSessionID,
426 in TpInt32 firstProperty,
427 in TpFolderInfoPropertySet folderInfoProperties
429 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_PROPERTY_NOT_SET);
431 void putMessage (
432 in TpSessionID folderSessionID,
433 in TpMessage message,
434 in TpMessageInfoPropertySet messageInfoProperties
436 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
438 IpMessage getMessage (
439 in TpSessionID folderSessionID,
440 in TpString messageID
442 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_INVALID_MESSAGE_ID);
444 void close (
445 in TpSessionID mailboxSessionID,
446 in TpSessionID folderSessionID
448 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
450 void remove (
451 in TpSessionID mailboxSessionID,
452 in TpString folderID
454 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_GMS_INSUFFICIENT_PRIVILEGE,P_GMS_INVALID_FOLDER_ID,P_GMS_FOLDER_IS_OPEN);
464 #endif