All Classes Files Functions Variables Pages
HighAvailability.idl
Go to the documentation of this file.
1 /**
2  * @file HighAvailability.idl
3  * @brief High Availability configuration
4  * @version 2
5  */
6 
7 #import <kerio/web/idl/SharedStructures.idl>
8 
9 module webadmin {
10 
11  enum HAMode {
12  haDisabled,
13  haActivePassive
14  };
15 
16  enum HAInstanceMode {
17  haMaster,
18  haSlave
19  };
20 
22  string interfaceName;
23  string ipAddressV4;
24  string ipAddressV6;
25  string virtualIpV4;
26  string virtualIpV6;
27  string name;
28  };
29 
30  typedef sequence<VirtualInterface> VirtualInterfaceList;
31  struct HAConfig {
32  HAMode haMode;
33  HAInstanceMode instanceMode;
34  string syncInterfaceName;
35  string deviceName;
36  string sharedSecret;
37  boolean sharedSecretChanged;
38  string emailId;
39  VirtualInterfaceList virtualInterfaceList;
40  };
41 
42  enum HAStatus {
43  HADisabled,
44  HAEnabledGreen,
45  HAEnabledYellow
46  };
47 
48  enum HAHealth {
49  HAHealthDisabled,
50  HAHealthOk,
51  HAHealthHasProblem,
52  HAHealthPeerDown,
53  HAHealthMasterDown
54  };
55 
56 
57  struct HAStatusReport {
58  HAStatus status;
59  HAHealth health;
60  string statusText;
61  string statusDetail;
62  string daemonText;
63 
64  };
65 
66  interface HighAvailability {
67 
68  /**
69  * Stores HAConfig configuration
70  * @param errors - list of errors \n
71  * @param config - A structure containing all the settings of High Availability that sould be stored.
72  * @throws kerio::web::ApiException \n
73  * -32001 Session expired. - "The user is not logged in." \n
74  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
75  */
76  void set(out kerio::web::ErrorList errors, in HAConfig config);
77 
78  /**
79  * Returns High Availability configuration
80  * @throws kerio::web::ApiException \n
81  * -32001 Session expired. - "The user is not logged in." \n
82  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
83  */
84  void get(out HAConfig config);
85  /**
86  * Returns High Availability status(IP is assigned to interface or not)
87  * @throws kerio::web::ApiException \n
88  * -32001 Session expired. - "The user is not logged in." \n
89  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
90  */
91  void getStatus(out HAStatusReport status);
92  };
93 }; //webadmin
Definition: HighAvailability.idl:57
Definition: HighAvailability.idl:66
Definition: HighAvailability.idl:21
Definition: Accounting.idl:11
Definition: HighAvailability.idl:31