Don't use PCRE if we have GRegex.
[obnox/wireshark/wip.git] / idl / parlay / pam_interfaces.idl
1 //Source file: pam_interfaces.idl
2 //Date:  13 October 2004
3 //Presence and Availability Management Interfaces for ES 203 915-14 V1.1.1, DES/TISPAN-01005-14-OSA, Parlay 5.0
4
5 #ifndef __PAM_INTERFACES_DEFINED
6 #define __PAM_INTERFACES_DEFINED
7
8
9 #include "osa.idl"
10 #include "pam_data.idl"
11
12 module org {
13         
14         module csapi {
15                 
16                 module pam {
17                         
18                         module access {
19                                 interface IpAppPAMPreferenceCheck ;
20                         };
21
22                         
23                         union TpPAMPreferenceData switch(TpPAMPreferenceType) {
24                                 case PAM_EXTERNAL_CONTROL: access::IpAppPAMPreferenceCheck ExternalControlInterface;
25                                 default: short Dummy;
26                         };
27                         
28                         
29                         module provisioning {
30                                 
31                                 
32                                 interface IpPAMIdentityManagement : IpInterface {
33                                         void createIdentity (
34                                                 in TpPAMFQName identity,        
35                                                 in TpStringList identityTypes,  
36                                                 in TpPAMCredential authToken    
37                                                 )                                               
38                                                 raises (TpCommonExceptions,P_PAM_IDENTITY_EXISTS,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
39                                                 
40                                         void deleteIdentity (
41                                                 in TpPAMFQName identity,        
42                                                 in TpPAMCredential authToken    
43                                                 )                                               
44                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
45                                                 
46                                         TpBoolean isIdentity (
47                                                 in TpPAMFQName identity,        
48                                                 in TpPAMCredential authToken    
49                                                 )                                               
50                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
51                                                 
52                                         void createGroupIdentity (
53                                                 in TpPAMFQName identity,        
54                                                 in TpStringList identityTypes,  
55                                                 in TpPAMCredential authToken    
56                                                 )                                               
57                                                 raises (TpCommonExceptions,P_PAM_IDENTITY_EXISTS,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
58                                                 
59                                         void deleteGroupIdentity (
60                                                 in TpPAMFQName identity,        
61                                                 in TpPAMCredential authToken    
62                                                 )                                               
63                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
64                                                 
65                                         void addToGroup (
66                                                 in TpPAMFQName group,   
67                                                 in TpPAMFQName member,  
68                                                 in TpPAMCredential authToken    
69                                                 )                                               
70                                                 raises (TpCommonExceptions,P_PAM_MEMBER_EXISTS,P_PAM_UNKNOWN_GROUP,P_PAM_UNKNOWN_MEMBER,P_PAM_IS_CYCLIC,P_PAM_INVALID_CREDENTIAL);
71                                                 
72                                         void removeFromGroup (
73                                                 in TpPAMFQName group,   
74                                                 in TpPAMFQName identity,        
75                                                 in TpPAMCredential authToken    
76                                                 )                                               
77                                                 raises (TpCommonExceptions,P_PAM_NOT_MEMBER,P_PAM_UNKNOWN_GROUP,P_PAM_UNKNOWN_MEMBER,P_PAM_INVALID_CREDENTIAL);
78                                                 
79                                         TpPAMFQNameList listMembers (
80                                                 in TpPAMFQName identity,        
81                                                 in TpPAMCredential authToken    
82                                                 )                                               
83                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_GROUP,P_PAM_INVALID_CREDENTIAL);
84                                                 
85                                         TpBoolean isGroupIdentity (
86                                                 in TpPAMFQName identity,        
87                                                 in TpPAMCredential authToken    
88                                                 )                                               
89                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
90                                                 
91                                         TpPAMFQNameList listGroupMembership (
92                                                 in TpPAMFQName identity,        
93                                                 in TpPAMCredential authToken    
94                                                 )                                               
95                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
96                                                 
97                                         void addAlias (
98                                                 in TpPAMFQName identity,        
99                                                 in TpPAMFQName alias,   
100                                                 in TpPAMCredential authToken    
101                                                 )                                               
102                                                 raises (TpCommonExceptions,P_PAM_ALIAS_EXISTS,P_PAM_ALIAS_NOT_UNIQUE,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
103                                                 
104                                         void removeAliases (
105                                                 in TpPAMFQName identity,        
106                                                 in TpPAMFQName alias,   
107                                                 in TpPAMCredential authToken    
108                                                 )                                               
109                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNASSIGNED_ALIAS,P_PAM_INVALID_CREDENTIAL);
110                                                 
111                                         TpPAMFQNameList listAliases (
112                                                 in TpPAMFQName identity,        
113                                                 in TpPAMCredential authToken    
114                                                 )                                               
115                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
116                                                 
117                                         TpPAMFQName lookupByAlias (
118                                                 in TpPAMFQName alias,   
119                                                 in TpPAMCredential authToken    
120                                                 )                                               
121                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_ALIAS,P_PAM_INVALID_CREDENTIAL);
122                                                 
123                                         void associateTypes (
124                                                 in TpPAMFQName identity,        
125                                                 in TpStringList identityTypes,  
126                                                 in TpPAMCredential authToken    
127                                                 )                                               
128                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNKNOWN_TYPE,P_PAM_TYPE_ASSOCIATED,P_PAM_INVALID_CREDENTIAL);
129                                                 
130                                         void disassociateTypes (
131                                                 in TpPAMFQName identity,        
132                                                 in TpStringList identityTypes,  
133                                                 in TpPAMCredential authToken    
134                                                 )                                               
135                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_DISASSOCIATED_TYPE,P_PAM_INVALID_CREDENTIAL);
136                                                 
137                                         TpPAMFQNameList listTypesOfIdentity (
138                                                 in TpPAMFQName identity,        
139                                                 in TpPAMCredential authToken    
140                                                 )                                               
141                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
142                                                 
143                                         TpBoolean hasType (
144                                                 in TpPAMFQName identity,        
145                                                 in TpString typeName,   
146                                                 in TpPAMCredential authToken    
147                                                 )                                               
148                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
149                                                 
150                                         TpPAMAttributeList getIdentityAttributes (
151                                                 in TpPAMFQName identity,        
152                                                 in TpString identityType,       
153                                                 in TpStringList attributeNames, 
154                                                 in TpPAMCredential authToken    
155                                                 )                                               
156                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
157                                                 
158                                         void setIdentityAttributes (
159                                                 in TpPAMFQName identity,        
160                                                 in TpString identityType,       
161                                                 in TpPAMAttributeList attributes,       
162                                                 in TpPAMCredential authToken    
163                                                 )                                               
164                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTES,P_PAM_INVALID_CREDENTIAL);
165                                                 
166                                 };
167                                 
168                                 
169                                 interface IpPAMAgentManagement : IpInterface {
170                                         void createAgent (
171                                                 in TpPAMFQName agentName,       
172                                                 in TpStringList agentTypes,     
173                                                 in TpPAMCredential authToken    
174                                                 )                                               
175                                                 raises (TpCommonExceptions,P_PAM_AGENT_EXISTS,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
176                                                 
177                                         void deleteAgent (
178                                                 in TpPAMFQName agentName,       
179                                                 in TpPAMCredential authToken    
180                                                 )                                               
181                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
182                                                 
183                                         TpBoolean isAgent (
184                                                 in TpPAMFQName agentName,       
185                                                 in TpPAMCredential authToken    
186                                                 )                                               
187                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
188                                                 
189                                         void enableCapabilities (
190                                                 in TpPAMFQName agentName,       
191                                                 in TpPAMCapabilityList capabilities,    
192                                                 in TpPAMCredential authToken    
193                                                 )                                               
194                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
195                                                 
196                                         void disableCapabilities (
197                                                 in TpPAMFQName agentName,       
198                                                 in TpPAMCapabilityList capabilities,    
199                                                 in TpPAMCredential authToken    
200                                                 )                                               
201                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_NO_CAPABILITY,P_PAM_INVALID_CREDENTIAL);
202                                                 
203                                         TpPAMCapabilityList listEnabledCapabilities (
204                                                 in TpPAMFQName agentName,       
205                                                 in TpPAMCredential authToken    
206                                                 )                                               
207                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
208                                                 
209                                         TpPAMCapabilityList listAllCapabilities (
210                                                 in TpPAMFQName agentName,       
211                                                 in TpPAMCredential authToken    
212                                                 )                                               
213                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
214                                                 
215                                         TpBoolean isCapableOf (
216                                                 in TpPAMFQName agentName,       
217                                                 in TpPAMCapability capability,  
218                                                 in TpPAMCredential authToken    
219                                                 )                                               
220                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
221                                                 
222                                         void associateTypes (
223                                                 in TpPAMFQName agentName,       
224                                                 in TpStringList agentTypes,     
225                                                 in TpPAMCredential authToken    
226                                                 )                                               
227                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_TYPE,P_PAM_TYPE_ASSOCIATED,P_PAM_INVALID_CREDENTIAL);
228                                                 
229                                         void disassociateTypes (
230                                                 in TpPAMFQName agentName,       
231                                                 in TpStringList agentTypes,     
232                                                 in TpPAMCredential authToken    
233                                                 )                                               
234                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_DISASSOCIATED_TYPE,P_PAM_INVALID_CREDENTIAL);
235                                                 
236                                         TpStringList listTypesOfAgent (
237                                                 in TpPAMFQName agentName,       
238                                                 in TpPAMCredential authToken    
239                                                 )                                               
240                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
241                                                 
242                                         TpBoolean hasType (
243                                                 in TpPAMFQName agentName,       
244                                                 in TpString typeName,   
245                                                 in TpPAMCredential authToken    
246                                                 )                                               
247                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
248                                                 
249                                         TpPAMAttributeList getAgentAttributes (
250                                                 in TpPAMFQName agentName,       
251                                                 in TpString agentType,  
252                                                 in TpStringList attributeNames, 
253                                                 in TpPAMCredential authToken    
254                                                 )                                               
255                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
256                                                 
257                                         void setAgentAttributes (
258                                                 in TpPAMFQName agentName,       
259                                                 in TpString agentType,  
260                                                 in TpPAMAttributeList attributes,       
261                                                 in TpPAMCredential authToken    
262                                                 )                                               
263                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTES,P_PAM_INVALID_CREDENTIAL);
264                                                 
265                                 };
266                                 
267                                 
268                                 interface IpPAMAgentAssignment : IpInterface {
269                                         void assignAgent (
270                                                 in TpPAMFQName identity,        
271                                                 in TpPAMFQName agentName,       
272                                                 in TpPAMCredential authToken    
273                                                 )                                               
274                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
275                                                 
276                                         void unassignAgent (
277                                                 in TpPAMFQName identity,        
278                                                 in TpPAMFQName agentName,       
279                                                 in TpPAMCredential authToken    
280                                                 )                                               
281                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_ASSIGNMENT,P_PAM_INVALID_CREDENTIAL);
282                                                 
283                                         TpPAMFQNameList listAssignedAgents (
284                                                 in TpPAMFQName identity,        
285                                                 in TpPAMCredential authToken    
286                                                 )                                               
287                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
288                                                 
289                                         TpPAMFQNameList listAssociatedIdentitiesOfAgent (
290                                                 in TpPAMFQName agentName,       
291                                                 in TpPAMCredential authToken    
292                                                 )                                               
293                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_INVALID_CREDENTIAL);
294                                                 
295                                         TpPAMFQNameList listAssignedAgentsByCapability (
296                                                 in TpPAMFQName identity,        
297                                                 in TpPAMCapability capability,  
298                                                 in TpPAMCredential authToken    
299                                                 )                                               
300                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
301                                                 
302                                         TpPAMCapabilityList listCapabilitiesOfIdentity (
303                                                 in TpPAMFQName identity,        
304                                                 in TpPAMCredential authToken    
305                                                 )                                               
306                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
307                                                 
308                                         TpBoolean isIdentityCapableOf (
309                                                 in TpPAMFQName identity,        
310                                                 in TpPAMCapability capability,  
311                                                 in TpPAMCredential authToken    
312                                                 )                                               
313                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
314                                                 
315                                 };
316                                 
317                                 
318                                 interface IpPAMIdentityTypeManagement : IpInterface {
319                                         void createIdentityAttribute (
320                                                 in TpPAMAttributeDef pAttribute,        
321                                                 in TpPAMCredential authToken    
322                                                 )                                               
323                                                 raises (TpCommonExceptions,P_PAM_ATTRIBUTE_EXISTS,P_PAM_INVALID_CREDENTIAL);
324                                                 
325                                         void deleteIdentityAttribute (
326                                                 in TpString attributeName,      
327                                                 in TpPAMCredential authToken    
328                                                 )                                               
329                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
330                                                 
331                                         TpPAMAttributeDef getIdentityAttributeDefinition (
332                                                 in TpString attributeName,      
333                                                 in TpPAMCredential authToken    
334                                                 )                                               
335                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
336                                                 
337                                         TpStringList listAllIdentityAttributes (
338                                                 in TpPAMCredential authToken    
339                                                 )                                               
340                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
341                                                 
342                                         void createIdentityType (
343                                                 in TpString typeName,   
344                                                 in TpStringList attributeNames, 
345                                                 in TpPAMCredential authToken    
346                                                 )                                               
347                                                 raises (TpCommonExceptions,P_PAM_TYPE_EXISTS,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
348                                                 
349                                         void deleteIdentityType (
350                                                 in TpString typeName,   
351                                                 in TpPAMCredential authToken    
352                                                 )                                               
353                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
354                                                 
355                                         TpStringList listIdentityTypes (
356                                                 in TpPAMCredential authToken    
357                                                 )                                               
358                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
359                                                 
360                                         void addIdentityTypeAttributes (
361                                                 in TpString typeName,   
362                                                 in TpStringList attributeNames, 
363                                                 in TpPAMCredential authToken    
364                                                 )                                               
365                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_ATTRIBUTE_EXISTS,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
366                                                 
367                                         void removeIdentityTypeAttributes (
368                                                 in TpString typeName,   
369                                                 in TpStringList attributeNames, 
370                                                 in TpPAMCredential authToken    
371                                                 )                                               
372                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
373                                                 
374                                         TpStringList listIdentityTypeAttributes (
375                                                 in TpString typeName,   
376                                                 in TpPAMCredential authToken    
377                                                 )                                               
378                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
379                                                 
380                                 };
381                                 
382                                 
383                                 interface IpPAMAgentTypeManagement : IpInterface {
384                                         void createAgentAttribute (
385                                                 in TpPAMAttributeDef pAttribute,        
386                                                 in TpPAMCredential authToken    
387                                                 )                                               
388                                                 raises (TpCommonExceptions,P_PAM_ATTRIBUTE_EXISTS,P_PAM_INVALID_CREDENTIAL);
389                                                 
390                                         void deleteAgentAttribute (
391                                                 in TpString attributeName,      
392                                                 in TpPAMCredential authToken    
393                                                 )                                               
394                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
395                                                 
396                                         TpPAMAttributeDef getAgentAttributeDefinition (
397                                                 in TpString attributeName,      
398                                                 in TpPAMCredential authToken    
399                                                 )                                               
400                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
401                                                 
402                                         TpStringList listAllAgentAttributes (
403                                                 in TpPAMCredential authToken    
404                                                 )                                               
405                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
406                                                 
407                                         void createAgentType (
408                                                 in TpString typeName,   
409                                                 in TpStringList attributeNames, 
410                                                 in TpPAMCredential authToken    
411                                                 )                                               
412                                                 raises (TpCommonExceptions,P_PAM_TYPE_EXISTS,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
413                                                 
414                                         void deleteAgentType (
415                                                 in TpString typeName,   
416                                                 in TpPAMCredential authToken    
417                                                 )                                               
418                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
419                                                 
420                                         TpStringList listAgentTypes (
421                                                 in TpPAMCredential authToken    
422                                                 )                                               
423                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
424                                                 
425                                         void addAgentTypeAttributes (
426                                                 in TpString typeName,   
427                                                 in TpStringList attributeNames, 
428                                                 in TpPAMCredential authToken    
429                                                 )                                               
430                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_ATTRIBUTE_EXISTS,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
431                                                 
432                                         void removeAgentTypeAttributes (
433                                                 in TpString typeName,   
434                                                 in TpStringList attributeNames, 
435                                                 in TpPAMCredential authToken    
436                                                 )                                               
437                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
438                                                 
439                                         TpStringList listAgentTypeAttributes (
440                                                 in TpString typeName,   
441                                                 in TpPAMCredential authToken    
442                                                 )                                               
443                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
444                                                 
445                                 };
446                                 
447                                 
448                                 interface IpPAMCapabilityManagement : IpInterface {
449                                         void createCapabilityAttribute (
450                                                 in TpPAMAttributeDef pAttribute,        
451                                                 in TpPAMCredential authToken    
452                                                 )                                               
453                                                 raises (TpCommonExceptions,P_PAM_ATTRIBUTE_EXISTS,P_PAM_INVALID_CREDENTIAL);
454                                                 
455                                         void deleteCapabilityAttribute (
456                                                 in TpString attributeName,      
457                                                 in TpPAMCredential authToken    
458                                                 )                                               
459                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
460                                                 
461                                         TpPAMAttributeDef getCapabilityAttributeDefinition (
462                                                 in TpString attributeName,      
463                                                 in TpPAMCredential authToken    
464                                                 )                                               
465                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
466                                                 
467                                         TpStringList listAllCapabilityAttributes (
468                                                 in TpPAMCredential authToken    
469                                                 )                                               
470                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
471                                                 
472                                         void createCapability (
473                                                 in TpPAMCapability capabilityName,      
474                                                 in TpStringList attributeNames, 
475                                                 in TpPAMCredential authToken    
476                                                 )                                               
477                                                 raises (TpCommonExceptions,P_PAM_TYPE_EXISTS,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
478                                                 
479                                         void deleteCapability (
480                                                 in TpPAMCapability capabilityName,      
481                                                 in TpPAMCredential authToken    
482                                                 )                                               
483                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
484                                                 
485                                         TpPAMCapabilityList listCapabilities (
486                                                 in TpPAMCredential authToken    
487                                                 )                                               
488                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
489                                                 
490                                         void addCapabilityAttributes (
491                                                 in TpPAMCapability capabilityName,      
492                                                 in TpStringList attributeNames, 
493                                                 in TpPAMCredential authToken    
494                                                 )                                               
495                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_ATTRIBUTE_EXISTS,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
496                                                 
497                                         void removeCapabilityAttributes (
498                                                 in TpPAMCapability capabilityName,      
499                                                 in TpStringList attributeNames, 
500                                                 in TpPAMCredential authToken    
501                                                 )                                               
502                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
503                                                 
504                                         TpStringList listCapabilityAttributes (
505                                                 in TpPAMCapability capabilityName,      
506                                                 in TpPAMCredential authToken    
507                                                 )                                               
508                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
509                                                 
510                                         void assignCapabilitiesToType (
511                                                 in TpString agentType,  
512                                                 in TpPAMCapabilityList capabilities,    
513                                                 in TpPAMCredential authToken    
514                                                 )                                               
515                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_CAPABILITY,P_PAM_INVALID_CREDENTIAL);
516                                                 
517                                         void unassignCapabilitiesFromType (
518                                                 in TpString agentType,  
519                                                 in TpPAMCapabilityList capabilities,    
520                                                 in TpPAMCredential authToken    
521                                                 )                                               
522                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_CAPABILITY,P_PAM_INVALID_CREDENTIAL);
523                                                 
524                                         TpPAMCapabilityList listCapabilitiesOfType (
525                                                 in TpString agentType,  
526                                                 in TpPAMCredential authToken    
527                                                 )                                               
528                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_TYPE,P_PAM_INVALID_CREDENTIAL);
529                                                 
530                                 };
531                                 
532                                 
533                                 interface IpPAMProvisioningManager : IpService {
534                                         TpPAMCredential getAuthToken (
535                                                 in TpAttributeList askerData    
536                                                 )                                               
537                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
538                                                 
539                                         IpInterface obtainInterface (
540                                                 in TpPAMProvisioningInterfaceName interfaceName 
541                                                 )                                               
542                                                 raises (TpCommonExceptions,P_PAM_UNAVAILABLE_INTERFACE);
543                                                 
544                                         TpPAMAccessControlData getAccessControl (
545                                                 in TpPAMFQName identity,        
546                                                 in TpPAMCredential authToken    
547                                                 )                                               
548                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
549                                                 
550                                         void setAccessControl (
551                                                 in TpPAMFQName identity,        
552                                                 in TpPAMPreferenceOp operation, 
553                                                 in TpPAMAccessControlData newAccessControl,     
554                                                 in TpPAMCredential authToken    
555                                                 )                                               
556                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
557                                                 
558                                 };
559                                 
560                         };
561                         
562                         
563                         module access {
564                                 
565                                 
566                                 interface IpPAMIdentityPresence : IpInterface {
567                                         void setIdentityPresence (
568                                                 in TpPAMFQName identity,        
569                                                 in TpString identityType,       
570                                                 in TpPAMAttributeList attributes,       
571                                                 in TpPAMCredential authToken    
572                                                 )                                               
573                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
574                                                 
575                                         void setIdentityPresenceExpiration (
576                                                 in TpPAMFQName identity,        
577                                                 in TpString identityType,       
578                                                 in TpStringList attributeNames, 
579                                                 in TpPAMTimeInterval expiresIn, 
580                                                 in TpPAMCredential authToken    
581                                                 )                                               
582                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
583                                                 
584                                         TpPAMAttributeList getIdentityPresence (
585                                                 in TpPAMFQName identity,        
586                                                 in TpString identityType,       
587                                                 in TpStringList attributeNames, 
588                                                 in TpPAMCredential authToken    
589                                                 )                                               
590                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
591                                                 
592                                 };
593                                 
594                                 
595                                 interface IpPAMAgentPresence : IpInterface {
596                                         void setAgentPresence (
597                                                 in TpPAMFQName agent,   
598                                                 in TpString agentType,  
599                                                 in TpPAMAttributeList attributes,       
600                                                 in TpPAMCredential authToken    
601                                                 )                                               
602                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
603                                                 
604                                         void setCapabilityPresence (
605                                                 in TpPAMFQName agent,   
606                                                 in TpPAMCapability capability,  
607                                                 in TpPAMAttributeList attributes,       
608                                                 in TpPAMCredential authToken    
609                                                 )                                               
610                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_CAPABILITY,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
611                                                 
612                                         void setAgentPresenceExpiration (
613                                                 in TpPAMFQName agent,   
614                                                 in TpString agentType,  
615                                                 in TpStringList attributeNames, 
616                                                 in TpPAMTimeInterval expiresIn, 
617                                                 in TpPAMCredential authToken    
618                                                 )                                               
619                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
620                                                 
621                                         void setCapabilityPresenceExpiration (
622                                                 in TpPAMFQName agent,   
623                                                 in TpPAMCapability capability,  
624                                                 in TpStringList attributeNames, 
625                                                 in TpPAMTimeInterval expiresIn, 
626                                                 in TpPAMCredential authToken    
627                                                 )                                               
628                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_NO_CAPABILITY,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
629                                                 
630                                         TpPAMAttributeList getAgentPresence (
631                                                 in TpPAMFQName agent,   
632                                                 in TpString agentType,  
633                                                 in TpStringList attributeNames, 
634                                                 in TpPAMCredential authToken    
635                                                 )                                               
636                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_TYPE,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
637                                                 
638                                         TpPAMAttributeList getCapabilityPresence (
639                                                 in TpPAMFQName agent,   
640                                                 in TpPAMCapability capability,  
641                                                 in TpStringList attributeNames, 
642                                                 in TpPAMCredential authToken    
643                                                 )                                               
644                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_AGENT,P_PAM_UNKNOWN_CAPABILITY,P_PAM_UNKNOWN_ATTRIBUTE,P_PAM_INVALID_CREDENTIAL);
645                                                 
646                                 };
647                                 
648                                 
649                                 interface IpAppPAMPreferenceCheck : IpInterface {
650                                         TpPAMAvailabilityProfileList computeAvailability (
651                                                 in TpPAMFQName identity,        
652                                                 in TpPAMContext pamContext,     
653                                                 in TpStringList attributeNames, 
654                                                 in TpPAMCredential authToken    
655                                                 );
656                                                 
657                                 };
658                                 
659                                 
660                                 interface IpPAMAvailability : IpInterface {
661                                         TpPAMAvailabilityProfileList getAvailability (
662                                                 in TpPAMFQName identity,        
663                                                 in TpPAMContext pamContext,     
664                                                 in TpStringList attributeNames, 
665                                                 in TpPAMCredential authToken    
666                                                 )                                               
667                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
668                                                 
669                                         TpPAMPreferenceData getPreference (
670                                                 in TpPAMFQName identity,        
671                                                 in TpPAMContext pamContext,     
672                                                 in TpPAMCredential authToken    
673                                                 )                                               
674                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
675                                                 
676                                         void setPreference (
677                                                 in TpPAMFQName identity,        
678                                                 in TpPAMContext pamContext,     
679                                                 in TpPAMPreferenceOp operation, 
680                                                 in TpPAMPreferenceData newPreference,   
681                                                 in TpPAMCredential authToken    
682                                                 )                                               
683                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
684                                                 
685                                 };
686                                 
687                                 
688                                 interface IpPAMPresenceAvailabilityManager : IpService {
689                                         TpPAMCredential getAuthToken (
690                                                 in TpAttributeList askerData    
691                                                 )                                               
692                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
693                                                 
694                                         IpInterface obtainInterface (
695                                                 in TpPAMPresenceAvailabilityInterfaceName interfaceName 
696                                                 )                                               
697                                                 raises (TpCommonExceptions,P_PAM_UNAVAILABLE_INTERFACE);
698                                                 
699                                         TpPAMAccessControlData getAccessControl (
700                                                 in TpPAMFQName identity,        
701                                                 in TpPAMCredential authToken    
702                                                 )                                               
703                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
704                                                 
705                                         void setAccessControl (
706                                                 in TpPAMFQName identity,        
707                                                 in TpPAMPreferenceOp operation, 
708                                                 in TpPAMAccessControlData newAccessControl,     
709                                                 in TpPAMCredential authToken    
710                                                 )                                               
711                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
712                                                 
713                                         void activateService (
714                                                 in TpPAMFQName identity,        
715                                                 in TpPAMCredential authToken    
716                                                 )                                               
717                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
718                                                 
719                                         void deactivateService (
720                                                 in TpPAMFQName identity,        
721                                                 in TpPAMCredential authToken    
722                                                 )                                               
723                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
724                                                 
725                                         TpBoolean isActiveIdentity (
726                                                 in TpPAMFQName identity,        
727                                                 in TpPAMCredential authToken    
728                                                 )                                               
729                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
730                                                 
731                                 };
732                                 
733                         };
734                         
735                         
736                         module event {
737                                 
738                                 
739                                 interface IpAppPAMEventHandler : IpInterface {
740                                         void eventNotify (
741                                                 in TpPAMEventID eventID,        
742                                                 in TpPAMNotificationInfoList eventInfo  
743                                                 );
744                                                 
745                                         void eventNotifyErr (
746                                                 in TpPAMEventID eventID,        
747                                                 in TpPAMErrorInfo errorInfo     
748                                                 );
749                                                 
750                                 };
751                                 
752                                 
753                                 interface IpPAMEventHandler : IpInterface {
754                                         TpBoolean isRegistered (
755                                                 in TpPAMClientID clientID,      
756                                                 in TpPAMCredential authToken    
757                                                 )                                               
758                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
759                                                 
760                                         TpPAMClientID registerAppInterface (
761                                                 in IpAppPAMEventHandler appInterface,   
762                                                 in TpPAMCredential authToken    
763                                                 )                                               
764                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
765                                                 
766                                         TpPAMEventID registerForEvent (
767                                                 in TpPAMClientID clientID,      
768                                                 in TpPAMEventInfoList eventList,        
769                                                 in TpDuration validFor, 
770                                                 in TpPAMCredential authToken    
771                                                 )                                               
772                                                 raises (TpCommonExceptions,P_PAM_NOT_REGISTERED,P_PAM_INVALID_CREDENTIAL);
773                                                 
774                                         void deregisterAppInterface (
775                                                 in TpPAMClientID clientID,      
776                                                 in TpPAMCredential authToken    
777                                                 )                                               
778                                                 raises (TpCommonExceptions,P_PAM_NOT_REGISTERED,P_PAM_INVALID_CREDENTIAL);
779                                                 
780                                         void deregisterFromEvent (
781                                                 in TpPAMEventID eventID,        
782                                                 in TpPAMCredential authToken    
783                                                 )                                               
784                                                 raises (TpCommonExceptions,P_PAM_NOT_REGISTERED,P_PAM_INVALID_CREDENTIAL);
785                                                 
786                                 };
787                                 
788                                 
789                                 interface IpPAMEventManager : IpService {
790                                         TpPAMCredential getAuthToken (
791                                                 in TpAttributeList askerData    
792                                                 )                                               
793                                                 raises (TpCommonExceptions,P_PAM_INVALID_CREDENTIAL);
794                                                 
795                                         IpInterface obtainInterface (
796                                                 in TpPAMEventInterfaceName interfaceName        
797                                                 )                                               
798                                                 raises (TpCommonExceptions,P_PAM_UNAVAILABLE_INTERFACE);
799                                                 
800                                         TpPAMAccessControlData getAccessControl (
801                                                 in TpPAMFQName identity,        
802                                                 in TpPAMCredential authToken    
803                                                 )                                               
804                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
805                                                 
806                                         void setAccessControl (
807                                                 in TpPAMFQName identity,        
808                                                 in TpPAMPreferenceOp operation, 
809                                                 in TpPAMAccessControlData newAccessControl,     
810                                                 in TpPAMCredential authToken    
811                                                 )                                               
812                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
813                                                 
814                                         void activateService (
815                                                 in TpPAMFQName identity,        
816                                                 in TpPAMCredential authToken    
817                                                 )                                               
818                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
819                                                 
820                                         void deactivateService (
821                                                 in TpPAMFQName identity,        
822                                                 in TpPAMCredential authToken    
823                                                 )                                               
824                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
825                                                 
826                                         TpBoolean isActiveIdentity (
827                                                 in TpPAMFQName identity,        
828                                                 in TpPAMCredential authToken    
829                                                 )                                               
830                                                 raises (TpCommonExceptions,P_PAM_UNKNOWN_IDENTITY,P_PAM_INVALID_CREDENTIAL);
831                                                 
832                                 };
833                                 
834                         };
835                         
836                 };
837                 
838         };
839         
840 };
841
842 #endif