All Classes Namespaces Files Functions Variables Groups
Delegation.idl
Go to the documentation of this file.
1 /**
2  * @file Delegation.idl
3  * @brief Manage delegation.
4  *
5  * @author Frantisek Boranek
6  *
7  * @copyright Copyright © 2017 Kerio Technologies s.r.o.
8  */
9 
10 #import <Structures.idl>
11 #import <Principals.idl>
12 #import <Folders.idl> // FolderAccess
13 
14 module kerio {
15 module jsonapi {
16 module webmail {
17 module delegation {
18 
21  kerio::web::KId mailboxId; ///< [READ-ONLY] root folder ID
22  boolean accepted;
23 };
24 
25 typedef sequence<InboundDelegation> InboundDelegationList;
26 
29  boolean isInboxRW;
30 };
31 
32 typedef sequence<OutboundDelagation> OutboundDelagationList;
33 
34 interface Delegation {
35 
36  /**
37  * Get list of accounts which the user set for delegation.
38  *
39  * @param list - delegates
40  */
41  void get(out OutboundDelagationList list);
42 
43  /**
44  * Set list of accounts for delegation.
45  *
46  * @param list - delegates; Only type 'User' is valid.
47  */
48  void set(in OutboundDelagationList list);
49 
50  /**
51  * Get list of accounts whom is the user delegate.
52  *
53  * @param list - delegates
54  */
55  void getInbound(out InboundDelegationList list);
56 
57  /**
58  * Set list of accounts whom is the user delegate.
59  *
60  * @param list - delegates
61  */
62  void setInbound(in InboundDelegationList list);
63 
64 };
65 
66 }; }; }; }; // end of namespace