OpenClovis Logo

clAmsMgmtCommon.h
1 /*
2  * Copyright (C) 2002-2012 OpenClovis Solutions Inc. All Rights Reserved.
3  *
4  * This file is available under a commercial license from the
5  * copyright holder or the GNU General Public License Version 2.0.
6  *
7  * The source code for this program is not published or otherwise
8  * divested of its trade secrets, irrespective of what has been
9  * deposited with the U.S. Copyright office.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * General Public License for more details.
15  *
16  * For more information, see the file COPYING provided with this
17  * material.
18  */
19 /*******************************************************************************
20  * ModuleName : amf
21  * File : clAmsMgmtCommon.h
22  *******************************************************************************/
23 
24 /*******************************************************************************
25  * Description :
26  * This file contains the function call types used by the client library to
27  * call the server and for the server to call its peer.
28  *
29  * XXX: This file should not be exposed to users of the client API because
30  * it is internal to the API but is currently needed in include/ to satisfy
31  * dependencies. These dependencies need to be separated and this file moved
32  * to common/.
33  *****************************************************************************/
34 
35 #ifndef _CL_AMS_MGMT_COMMON_H_
36 #define _CL_AMS_MGMT_COMMON_H_
37 
38 # ifdef __cplusplus
39 extern "C" {
40 # endif
41 
42 
43 #include <clCommon.h>
44 
45 #include <clAmsTypes.h>
46 #include <clAmsEntities.h>
47 #include <clLogApi.h>
48 
49 /*
50  * Function IDs to identify client callback function that the server needs to
51  * call.
52  */
53 
54 typedef enum
55 {
56  CL_AMS_MGMT_INITIALIZE = 1,
57  CL_AMS_MGMT_FINALIZE = 2,
58  CL_AMS_MGMT_ENTITY_CREATE = 3,
59  CL_AMS_MGMT_ENTITY_DELETE = 4,
60  CL_AMS_MGMT_ENTITY_SET_CONFIG = 5,
61  CL_AMS_MGMT_ENTITY_LOCK_ASSIGNMENT = 6,
62  CL_AMS_MGMT_ENTITY_LOCK_INSTANTIATION = 7,
63  CL_AMS_MGMT_ENTITY_UNLOCK = 8,
64  CL_AMS_MGMT_ENTITY_SHUTDOWN = 9,
65  CL_AMS_MGMT_ENTITY_RESTART = 10,
66  CL_AMS_MGMT_ENTITY_REPAIRED = 11,
67  CL_AMS_MGMT_SG_ADJUST_PREFERENCE = 12,
68  CL_AMS_MGMT_SI_SWAP = 13,
69  CL_AMS_MGMT_ENTITY_LIST_ENTITY_REF_ADD = 14,
70  CL_AMS_MGMT_ENTITY_SET_REF = 15,
71  CL_AMS_MGMT_CSI_SET_NVP = 16,
72  CL_AMS_MGMT_DEBUG_ENABLE = 17,
73  CL_AMS_MGMT_DEBUG_DISABLE = 18,
74  CL_AMS_MGMT_DEBUG_GET = 19,
75  CL_AMS_MGMT_DEBUG_ENABLE_LOG_TO_CONSOLE = 20,
76  CL_AMS_MGMT_DEBUG_DISABLE_LOG_TO_CONSOLE = 21,
77 
78  CL_AMS_MGMT_CCB_INITIALIZE = 22,
79  CL_AMS_MGMT_CCB_FINALIZE = 23,
80  CL_AMS_MGMT_CCB_ENTITY_SET_CONFIG = 24,
81  CL_AMS_MGMT_CCB_CSI_SET_NVP = 25,
82  CL_AMS_MGMT_CCB_SET_NODE_DEPENDENCY = 26,
83  CL_AMS_MGMT_CCB_SET_NODE_SU_LIST = 27,
84  CL_AMS_MGMT_CCB_SET_SG_SU_LIST = 28,
85  CL_AMS_MGMT_CCB_SET_SG_SI_LIST = 29,
86  CL_AMS_MGMT_CCB_SET_SU_COMP_LIST = 30,
87  CL_AMS_MGMT_CCB_SET_SI_SU_RANK_LIST = 31,
88  CL_AMS_MGMT_CCB_SET_SI_SI_DEPENDENCY = 32,
89  CL_AMS_MGMT_CCB_SET_SI_CSI_LIST = 33,
90  CL_AMS_MGMT_CCB_ENABLE_ENTITY = 34,
91  CL_AMS_MGMT_CCB_DISABLE_ENTITY = 35,
92  CL_AMS_MGMT_CCB_ENTITY_CREATE = 36,
93  CL_AMS_MGMT_CCB_ENTITY_DELETE = 37,
94  CL_AMS_MGMT_CCB_COMMIT = 38,
95  CL_AMS_MGMT_ENTITY_GET = 39,
96  CL_AMS_MGMT_ENTITY_GET_CONFIG = 40,
97  CL_AMS_MGMT_ENTITY_GET_STATUS = 41,
98  CL_AMS_MGMT_GET_CSI_NVP_LIST = 42,
99  CL_AMS_MGMT_GET_ENTITY_LIST = 43,
100  CL_AMS_MGMT_GET_OL_ENTITY_LIST = 44,
101  CL_AMS_MGMT_CCB_CSI_DELETE_NVP = 45,
102 
103  CL_AMS_MGMT_CCB_DELETE_NODE_DEPENDENCY = 46,
104  CL_AMS_MGMT_CCB_DELETE_NODE_SU_LIST = 47,
105  CL_AMS_MGMT_CCB_DELETE_SG_SU_LIST = 48,
106  CL_AMS_MGMT_CCB_DELETE_SG_SI_LIST = 49,
107  CL_AMS_MGMT_CCB_DELETE_SU_COMP_LIST = 50,
108  CL_AMS_MGMT_CCB_DELETE_SI_SU_RANK_LIST = 51,
109  CL_AMS_MGMT_CCB_DELETE_SI_SI_DEPENDENCY = 52,
110  CL_AMS_MGMT_CCB_DELETE_SI_CSI_LIST = 53,
111 
112  CL_AMS_MGMT_ENTITY_SET_ALPHA_FACTOR = 54,
113  CL_AMS_MGMT_MIGRATE_SG = 55,
114 
115  CL_AMS_MGMT_ENTITY_USER_DATA_SET = 56,
116  CL_AMS_MGMT_ENTITY_USER_DATA_SETKEY = 57,
117  CL_AMS_MGMT_ENTITY_USER_DATA_GET = 58,
118  CL_AMS_MGMT_ENTITY_USER_DATA_GETKEY = 59,
119  CL_AMS_MGMT_ENTITY_USER_DATA_DELETE = 60,
120  CL_AMS_MGMT_ENTITY_USER_DATA_DELETEKEY = 61,
121 
122  CL_AMS_MGMT_CCB_SET_CSI_CSI_DEPENDENCY = 62,
123  CL_AMS_MGMT_CCB_DELETE_CSI_CSI_DEPENDENCY = 63,
124  CL_AMS_MGMT_SI_ASSIGN_SU_CUSTOM = 65,
125  CL_AMS_MGMT_ENTITY_SET_BETA_FACTOR = 66,
126  CL_AMS_MGMT_ENTITY_FORCE_LOCK = 67,
127  CL_AMS_MGMT_DB_GET = 68,
128  CL_AMS_MGMT_COMPUTED_ADMIN_STATE_GET = 69,
129  CL_AMS_MGMT_ENTITY_FORCE_LOCK_INSTANTIATION = 70,
130  CL_AMS_MGMT_CCB_BATCH_COMMIT = 71,
131 } ClAmsMgmtClientCallbackRmdInterfaceT;
132 
133 /*
134  * Supported TLV types
135  */
136 typedef enum
137 {
138  CL_AMS_TLV_TYPE_ENTITY = CL_AMS_ENTITY_TYPE_ENTITY,
139  CL_AMS_TLV_TYPE_NODE = CL_AMS_ENTITY_TYPE_NODE,
140  CL_AMS_TLV_TYPE_APP = CL_AMS_ENTITY_TYPE_APP,
141  CL_AMS_TLV_TYPE_SG = CL_AMS_ENTITY_TYPE_SG,
142  CL_AMS_TLV_TYPE_SU = CL_AMS_ENTITY_TYPE_SU,
143  CL_AMS_TLV_TYPE_SI = CL_AMS_ENTITY_TYPE_SI,
144  CL_AMS_TLV_TYPE_COMP = CL_AMS_ENTITY_TYPE_COMP,
145  CL_AMS_TLV_TYPE_CSI = CL_AMS_ENTITY_TYPE_CSI,
146  CL_AMS_TLV_TYPE_CLUSTER = CL_AMS_ENTITY_TYPE_CLUSTER,
147  CL_AMS_TLV_TYPE_START_LIST = CL_AMS_ENTITY_TYPE_CLUSTER + 1,
148  CL_AMS_TLV_TYPE_END_LIST = CL_AMS_TLV_TYPE_START_LIST + 1,
149 } ClAmsTLVTypeT;
150 
151 /*
152  * AMS CCB operations type
153  */
154 
155 typedef enum
156 {
157  CL_AMS_MGMT_CCB_OPERATION_CREATE = 1,
158  CL_AMS_MGMT_CCB_OPERATION_DELETE ,
159  CL_AMS_MGMT_CCB_OPERATION_SET_CONFIG,
160  CL_AMS_MGMT_CCB_OPERATION_CSI_SET_NVP ,
161  CL_AMS_MGMT_CCB_OPERATION_SET_NODE_DEPENDENCY,
162  CL_AMS_MGMT_CCB_OPERATION_SET_NODE_SU_LIST ,
163  CL_AMS_MGMT_CCB_OPERATION_SET_SG_SU_LIST ,
164  CL_AMS_MGMT_CCB_OPERATION_SET_SG_SI_LIST ,
165  CL_AMS_MGMT_CCB_OPERATION_SET_SU_COMP_LIST ,
166  CL_AMS_MGMT_CCB_OPERATION_SET_SI_SU_RANK_LIST,
167  CL_AMS_MGMT_CCB_OPERATION_SET_SI_SI_DEPENDENCY_LIST,
168  CL_AMS_MGMT_CCB_OPERATION_SET_SI_CSI_LIST ,
169  CL_AMS_MGMT_CCB_OPERATION_SET_CSI_CSI_DEPENDENCY_LIST,
170  CL_AMS_MGMT_CCB_OPERATION_CSI_DELETE_NVP,
171  CL_AMS_MGMT_CCB_OPERATION_DELETE_NODE_DEPENDENCY,
172  CL_AMS_MGMT_CCB_OPERATION_DELETE_NODE_SU_LIST,
173  CL_AMS_MGMT_CCB_OPERATION_DELETE_SG_SU_LIST,
174  CL_AMS_MGMT_CCB_OPERATION_DELETE_SG_SI_LIST,
175  CL_AMS_MGMT_CCB_OPERATION_DELETE_SU_COMP_LIST,
176  CL_AMS_MGMT_CCB_OPERATION_DELETE_SI_SU_RANK_LIST,
177  CL_AMS_MGMT_CCB_OPERATION_DELETE_SI_SI_DEPENDENCY_LIST,
178  CL_AMS_MGMT_CCB_OPERATION_DELETE_CSI_CSI_DEPENDENCY_LIST,
179  CL_AMS_MGMT_CCB_OPERATION_DELETE_SI_CSI_LIST,
180  CL_AMS_MGMT_CCB_OPERATION_MAX,
181 }ClAmsMgmtCCBOperationsT;
182 
183 #define AMS_FUNC_ID(clnt, fn) CL_EO_GET_FULL_FN_NUM(clnt, fn)
184 
185 /*
186  * Default RMD behavior for AMS
187  */
188 #define CL_AMS_RMD_DEFAULT_TIMEOUT 10000
189 #define CL_AMS_RMD_DEFAULT_RETRIES 3
190 
191 /*
192  * Structure TLV for passing the pointer types to server
193  */
194 
195 typedef struct
196 {
197  ClAmsTLVTypeT type;
198  ClUint32T length ;
199 } ClAmsTLVT;
200 
201 
202 /*-----------------------------------------------------------------------------
203  * Type definitions for RMD client --> server function arguments:
204  *---------------------------------------------------------------------------*/
205 
206 typedef struct
207 {
208  ClHandleT handle;
209 }clAmsMgmtDummyResponseT;
210 
211 typedef struct
212 {
213  ClAmsMgmtHandleT handle;
214 } clAmsMgmtFinalizeRequestT;
215 
216 typedef clAmsMgmtDummyResponseT clAmsMgmtFinalizeResponseT;
217 
218 typedef struct
219 {
220  ClAmsMgmtHandleT handle;
221  ClAmsEntityT entity;
222 } clAmsMgmtEntityInstantiateRequestT;
223 
224 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityInstantiateResponseT;
225 
226 typedef struct
227 {
228  ClAmsMgmtHandleT handle;
229  ClAmsEntityT entity;
230 } clAmsMgmtEntityTerminateRequestT;
231 
232 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityTerminateResponseT;
233 
234 typedef struct
235 {
236  ClAmsMgmtHandleT handle;
237  ClAmsEntityRefT entityRef;
238 } clAmsMgmtEntityFindByNameRequestT;
239 
240 typedef struct
241 {
242  ClAmsEntityRefT entityRef;
243 }clAmsMgmtEntityFindByNameResponseT ;
244 
245 
246 typedef struct
247 {
248  ClAmsMgmtHandleT handle;
249  ClUint32T peInstantiateFlag;
250  ClAmsEntityConfigT *entityConfig;
251 } clAmsMgmtEntitySetConfigRequestT;
252 
253 typedef struct
254 {
255  ClAmsMgmtHandleT handle;
256  ClAmsEntityT entity;
257  ClUint32T alphaFactor;
258 } clAmsMgmtEntitySetAlphaFactorRequestT;
259 
260 typedef struct
261 {
262  ClAmsMgmtHandleT handle;
263  ClAmsEntityT entity;
264  ClUint32T betaFactor;
265 } clAmsMgmtEntitySetBetaFactorRequestT;
266 
267 typedef clAmsMgmtDummyResponseT clAmsMgmtEntitySetAlphaFactorResponseT;
268 typedef clAmsMgmtDummyResponseT clAmsMgmtEntitySetBetaFactorResponseT;
269 typedef clAmsMgmtDummyResponseT clAmsMgmtEntitySetConfigResponseT;
270 
271 typedef struct
272 {
273  ClAmsMgmtHandleT handle;
274  ClAmsEntityT sourceEntity;
275  ClAmsEntityT targetEntity;
276 }clAmsMgmtEntitySetRefRequestT ;
277 
278 typedef clAmsMgmtDummyResponseT clAmsMgmtEntitySetRefResponseT;
279 
280 typedef struct
281 {
282  ClAmsMgmtHandleT handle;
283  ClAmsEntityT sourceEntity;
285 }clAmsMgmtCSISetNVPRequestT;
286 
287 typedef clAmsMgmtDummyResponseT clAmsMgmtCSISetNVPResponseT;
288 
289 typedef struct
290 {
291  ClAmsMgmtHandleT handle;
292  ClAmsEntityT entity;
293 } clAmsMgmtEntityLockAssignmentRequestT;
294 
295 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityLockAssignmentResponseT;
296 
297 typedef struct
298 {
299  ClAmsMgmtHandleT handle;
300  ClAmsEntityT entity;
301  ClBoolT lock;
302 } clAmsMgmtEntityForceLockRequestT;
303 
304 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityForceLockResponseT;
305 
306 typedef struct
307 {
308  ClAmsMgmtHandleT handle;
309  ClAmsEntityT entity;
310 } clAmsMgmtEntityLockInstantiationRequestT;
311 
312 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityLockInstantiationResponseT;
313 
314 typedef struct
315 {
316  ClAmsMgmtHandleT handle;
317  ClAmsEntityT entity;
318 } clAmsMgmtEntityUnlockRequestT;
319 
320 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityUnlockResponseT;
321 
322 typedef struct
323 {
324  ClAmsMgmtHandleT handle;
325  ClAmsEntityT entity;
326 } clAmsMgmtEntityShutdownRequestT;
327 
328 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityShutdownResponseT;
329 
330 typedef struct
331 {
332  ClAmsMgmtHandleT handle;
333  ClAmsEntityT entity;
334 } clAmsMgmtEntityRestartRequestT;
335 
336 
337 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityRestartResponseT;
338 
339 typedef struct
340 {
341  ClAmsMgmtHandleT handle;
342  ClAmsEntityT entity;
343 } clAmsMgmtEntityRepairedRequestT;
344 
345 
346 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityRepairedResponseT;
347 
348 typedef struct
349 {
350  ClAmsMgmtHandleT handle;
351  ClAmsEntityT entity;
352 } clAmsMgmtEntityStartMonitoringEntityRequestT;
353 
354 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityStartMonitoringEntityResponseT;
355 
356 typedef struct
357 {
358  ClAmsMgmtHandleT handle;
359  ClAmsEntityT entity;
360 } clAmsMgmtEntityStopMonitoringEntityRequestT;
361 
362 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityStopMonitoringEntityResponseT;
363 
364 typedef struct
365 {
366  ClAmsMgmtHandleT handle;
367  ClAmsEntityT entity;
368  ClUint32T enable;
369 } clAmsMgmtSGAdjustPreferenceRequestT;
370 
371 typedef clAmsMgmtDummyResponseT clAmsMgmtSGAdjustPreferenceResponseT;
372 
373 typedef struct
374 {
375  ClAmsMgmtHandleT handle;
376  ClAmsEntityT entity;
377 } clAmsMgmtSISwapRequestT;
378 
379 
380 typedef clAmsMgmtDummyResponseT clAmsMgmtSISwapResponseT;
381 
382 typedef struct
383 {
384  ClAmsMgmtHandleT handle;
385  ClAmsEntityT sourceEntity;
386  ClAmsEntityT targetEntity;
387  ClAmsEntityListTypeT entityListName;
388 } clAmsMgmtEntityListEntityRefAddRequestT;
389 
390 typedef clAmsMgmtDummyResponseT clAmsMgmtEntityListEntityRefAddResponseT;
391 
392 typedef struct
393 {
394  ClAmsMgmtHandleT handle;
395  ClAmsEntityT entity;
396  ClAmsEntityListTypeT entityListName;
397 } clAmsMgmtEntityGetEntityListRequestT;
398 
399 typedef struct
400 {
401  ClUint32T numNodes;
402  void *nodeList;
403 }clAmsMgmtEntityGetEntityListResponseT;
404 
405 typedef enum
406 {
407  CL_AMS_MGMT_SUB_AREA_MSG = 1,
408  CL_AMS_MGMT_SUB_AREA_STATE_CHANGE = 1<<1,
409  CL_AMS_MGMT_SUB_AREA_FN_CALL = 1<<2,
410  CL_AMS_MGMT_SUB_AREA_TIMER = 1<<3
411 }ClAmsMgmtSubAreaT;
412 
413 typedef struct
414 {
415  ClAmsMgmtHandleT handle;
416  ClAmsEntityT entity;
417  ClUint8T debugFlags;
418 }clAmsMgmtDebugEnableRequestT;
419 
420 typedef clAmsMgmtDummyResponseT clAmsMgmtDebugEnableResponseT;
421 
422 typedef struct
423 {
424  ClAmsMgmtHandleT handle;
425  ClAmsEntityT entity;
426  ClUint8T debugFlags;
427 }clAmsMgmtDebugDisableRequestT;
428 
429 typedef clAmsMgmtDummyResponseT clAmsMgmtDebugDisableResponseT;
430 
431 typedef struct
432 {
433  ClAmsMgmtHandleT handle;
434  ClAmsEntityT entity;
435 }clAmsMgmtDebugGetRequestT;
436 
437 
438 typedef struct
439 {
440  ClUint8T debugFlags;
441 }clAmsMgmtDebugGetResponseT;
442 
443 typedef struct
444 {
445  ClAmsMgmtHandleT handle;
446 }clAmsMgmtDebugEnableLogToConsoleRequestT;
447 
448 typedef clAmsMgmtDummyResponseT clAmsMgmtDebugEnableLogToConsoleResponseT;
449 
450 typedef struct
451 {
452  ClAmsMgmtHandleT handle;
453 }clAmsMgmtDebugDisableLogToConsoleRequestT;
454 
455 typedef clAmsMgmtDummyResponseT clAmsMgmtDebugDisableLogToConsoleResponseT;
456 
457 typedef struct
458 {
459  ClCntHandleT ccbOpListHandle;
460 
461 }clAmsMgmtCCBT;
462 
463 typedef struct
464 {
465  ClAmsMgmtHandleT handle;
466 } clAmsMgmtCCBInitializeRequestT;
467 
468 typedef struct
469 {
470  ClAmsMgmtCCBHandleT handle;
471 } clAmsMgmtCCBInitializeResponseT;
472 
473 typedef struct
474 {
475  ClAmsMgmtCCBHandleT handle;
476 } clAmsMgmtCCBFinalizeRequestT;
477 
478 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBFinalizeResponseT;
479 
480 typedef struct
481 {
482  ClAmsMgmtCCBHandleT handle;
483 } clAmsMgmtCCBCommitRequestT;
484 
485 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBCommitResponseT;
486 
487 typedef struct
488 {
489  ClAmsMgmtCCBHandleT handle;
490  ClAmsEntityT entity;
491 }clAmsMgmtCCBEntityCreateRequestT;
492 
493 
494 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBEntityCreateResponseT;
495 
496 typedef struct
497 {
498  ClAmsMgmtCCBHandleT handle;
499  ClAmsEntityT entity;
500 }clAmsMgmtCCBEntityDeleteRequestT;
501 
502 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBEntityDeleteResponseT;
503 
504 typedef struct
505 {
506  ClAmsMgmtCCBHandleT handle;
507  ClUint64T bitmask;
508  ClAmsEntityConfigT *entityConfig;
509 }clAmsMgmtCCBEntitySetConfigRequestT;
510 
511 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBEntitySetConfigResponseT;
512 
514 
515 typedef struct
516 {
517  ClAmsMgmtCCBHandleT handle;
518  ClAmsEntityT csiName;
519  ClAmsCSINVPT nvp;
520 }clAmsMgmtCCBCSISetNVPRequestT;
521 
522 
523 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBCSISetNVPResponseT;
524 
525 typedef clAmsMgmtCCBCSISetNVPRequestT clAmsMgmtCCBCSIDeleteNVPRequestT;
526 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBCSIDeleteNVPResponseT;
527 
528 typedef struct
529 {
530  ClAmsMgmtCCBHandleT handle;
531  ClAmsEntityT nodeName;
532  ClAmsEntityT dependencyNodeName;
533 }clAmsMgmtCCBSetNodeDependencyRequestT;
534 
535 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetNodeDependencyResponseT;
536 
537 typedef struct
538 {
539  ClAmsMgmtCCBHandleT handle;
540  ClAmsEntityT nodeName;
541  ClAmsEntityT suName;
542 }clAmsMgmtCCBSetNodeSUListRequestT;
543 
544 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetNodeSUListResponseT;
545 
546 typedef struct
547 {
548  ClAmsMgmtCCBHandleT handle;
549  ClAmsEntityT sgName;
550  ClAmsEntityT suName;
551 }clAmsMgmtCCBSetSGSUListRequestT;
552 
553 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetSGSUListResponseT;
554 
555 typedef struct
556 {
557  ClAmsMgmtCCBHandleT handle;
558  ClAmsEntityT sgName;
559  ClAmsEntityT siName;
560 }clAmsMgmtCCBSetSGSIListRequestT;
561 
562 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetSGSIListResponseT;
563 
564 typedef struct
565 {
566  ClAmsMgmtCCBHandleT handle;
567  ClAmsEntityT suName;
568  ClAmsEntityT compName;
569 }clAmsMgmtCCBSetSUCompListRequestT;
570 
571 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetSUCompListResponseT;
572 
573 typedef struct
574 {
575  ClAmsMgmtCCBHandleT handle;
576  ClAmsEntityT siName;
577  ClAmsEntityT suName;
578  ClUint32T suRank;
579 }clAmsMgmtCCBSetSISURankListRequestT;
580 
581 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetSISURankListResponseT;
582 
583 typedef struct
584 {
585  ClAmsMgmtCCBHandleT handle;
586  ClAmsEntityT siName;
587  ClAmsEntityT dependencySIName;
588 }clAmsMgmtCCBSetSISIDependencyRequestT;
589 
590 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetSISIDependencyResponseT;
591 
592 typedef struct
593 {
594  ClAmsMgmtCCBHandleT handle;
595  ClAmsEntityT csiName;
596  ClAmsEntityT dependencyCSIName;
597 }clAmsMgmtCCBSetCSICSIDependencyRequestT;
598 
599 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetCSICSIDependencyResponseT;
600 
601 typedef struct
602 {
603  ClAmsMgmtCCBHandleT handle;
604  ClAmsEntityT siName;
605  ClAmsEntityT csiName;
606 }clAmsMgmtCCBSetSICSIListRequestT;
607 
608 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBSetSICSIListResponseT;
609 
610 typedef struct
611 {
612  ClAmsMgmtCCBHandleT handle;
613  ClAmsEntityT entityName;
614 }clAmsMgmtCCBEnableEntityRequestT;
615 
616 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBEnableEntityResponseT;
617 
618 typedef struct
619 {
620  ClAmsMgmtCCBHandleT handle;
621  ClAmsEntityT entityName;
622 }clAmsMgmtCCBDisableEntityRequestT;
623 
624 typedef clAmsMgmtDummyResponseT clAmsMgmtCCBDisableEntityResponseT;
625 
626 typedef struct
627 {
628  ClAmsMgmtHandleT handle;
629  ClAmsEntityT entity;
630 }clAmsMgmtEntityGetRequestT;
631 
632 typedef struct
633 {
634  ClAmsEntityT *entity;
635 }clAmsMgmtEntityGetResponseT;
636 
637 typedef struct
638 {
639  ClAmsMgmtHandleT handle;
640  ClAmsEntityT entity;
641 }clAmsMgmtEntityGetConfigRequestT;
642 
643 typedef struct
644 {
645  ClAmsEntityConfigT *entityConfig;
646 }clAmsMgmtEntityGetConfigResponseT;
647 
648 typedef struct
649 {
650  ClAmsMgmtHandleT handle;
651  ClAmsEntityT entity;
652 }clAmsMgmtEntityGetStatusRequestT;
653 
654 typedef struct
655 {
656  ClAmsEntityT entity;
657  ClAmsEntityStatusT *entityStatus;
658 }clAmsMgmtEntityGetStatusResponseT;
659 
660 typedef struct
661 {
662  ClUint32T count;
663  ClAmsCSINVPT *nvp;
664 }ClAmsCSINVPBufferT;
665 
666 typedef struct
667 {
668  ClAmsMgmtHandleT handle;
669  ClAmsEntityT csi;
670 }clAmsMgmtGetCSINVPListRequestT;
671 
672 typedef ClAmsCSINVPBufferT clAmsMgmtGetCSINVPListResponseT;
673 
674 typedef struct
675 {
676  ClUint32T count;
677  ClAmsEntityT *entity;
678 }ClAmsEntityBufferT;
679 
680 typedef struct
681 {
682  ClUint32T count;
683  ClAmsEntityRefT *entityRef;
684 }ClAmsEntityRefBufferT;
685 
686 typedef struct
687 {
688  ClUint32T count;
689  ClAmsSUSIRefT *entityRef;
690 }ClAmsSUSIRefBufferT;
691 
692 typedef struct
693 {
694  ClUint32T count;
695  ClAmsSUSIExtendedRefT *entityRef;
696 }ClAmsSUSIExtendedRefBufferT;
697 
698 typedef struct
699 {
700  ClUint32T count;
701  ClAmsSISURefT *entityRef;
702 }ClAmsSISURefBufferT;
703 
704 typedef struct
705 {
706  ClUint32T count;
707  ClAmsSISUExtendedRefT *entityRef;
708 }ClAmsSISUExtendedRefBufferT;
709 
710 typedef struct
711 {
712  ClUint32T count;
713  ClAmsCompCSIRefT *entityRef;
714 }ClAmsCompCSIRefBufferT;
715 
716 typedef struct
717 {
718  ClAmsMgmtHandleT handle;
719  ClAmsEntityT entity;
720  ClAmsEntityListTypeT entityListName;
721 }clAmsMgmtGetEntityListRequestT;
722 
723 typedef struct ClAmsMgmtMigrateList
724 {
725  ClAmsEntityBufferT si;
726  ClAmsEntityBufferT csi;
727  ClAmsEntityBufferT node;
728  ClAmsEntityBufferT su;
729  ClAmsEntityBufferT comp;
730 }ClAmsMgmtMigrateListT;
731 
732 typedef struct ClAmsMgmtMigrateRequest
733 {
734  ClNameT sg;
735  ClNameT prefix;
736  ClUint32T activeSUs;
737  ClUint32T standbySUs;
738 }ClAmsMgmtMigrateRequestT;
739 
740 typedef struct ClAmsMgmtMigrateResponse
741 {
742  ClAmsMgmtMigrateListT migrateList;
743 }ClAmsMgmtMigrateResponseT;
744 
745 typedef struct ClAmsMgmtUserDataSetRequest
746 {
747  ClAmsEntityT *entity;
748  ClNameT *key;
749  ClCharT *data;
750  ClUint32T len;
751 }ClAmsMgmtUserDataSetRequestT;
752 
753 typedef struct ClAmsMgmtUserDataGetRequest
754 {
755  ClAmsEntityT *entity;
756  ClNameT *key;
757  ClCharT **data;
758  ClUint32T *len;
759 }ClAmsMgmtUserDataGetRequestT;
760 
761 typedef struct ClAmsMgmtUserDataDeleteRequest
762 {
763  ClAmsEntityT *entity;
764  ClNameT *key;
765  ClBoolT clear;
766 }ClAmsMgmtUserDataDeleteRequestT;
767 
768 typedef struct ClAmsMgmtSIAssignSUCustomRequest
769 {
770  ClAmsEntityT si;
771  ClAmsEntityT activeSU;
772  ClAmsEntityT standbySU;
773 }ClAmsMgmtSIAssignSUCustomRequestT;
774 
775 typedef struct ClAmsMgmtDBGetResponse
776 {
777  ClUint32T len;
778  ClUint8T *buffer;
779 }ClAmsMgmtDBGetResponseT;
780 
781 typedef struct ClAmsMgmtCASGetRequest
782 {
783  ClAmsEntityT entity;
784  ClAmsAdminStateT computedAdminState;
785 }ClAmsMgmtCASGetRequestT;
786 
787 typedef ClAmsEntityBufferT clAmsMgmtGetEntityListResponseT;
788 typedef clAmsMgmtGetEntityListRequestT clAmsMgmtGetOLEntityListRequestT;
789 typedef ClAmsEntityRefBufferT clAmsMgmtGetOLEntityListResponseT;
790 /*
791  * Entity configuration attributes
792  */
793 
794 #define CL_AMS_CONFIG_ATTR_ALL 1
795 
796 
797 #define NODE_CONFIG_ADMIN_STATE CL_AMS_CONFIG_ATTR_ALL<<1
798 #define NODE_CONFIG_ID CL_AMS_CONFIG_ATTR_ALL<<2
799 #define NODE_CONFIG_CLASS_TYPE CL_AMS_CONFIG_ATTR_ALL<<3
800 #define NODE_CONFIG_SUB_CLASS_TYPE CL_AMS_CONFIG_ATTR_ALL<<4
801 #define NODE_CONFIG_IS_SWAPPABLE CL_AMS_CONFIG_ATTR_ALL<<5
802 #define NODE_CONFIG_IS_RESTARTABLE CL_AMS_CONFIG_ATTR_ALL<<6
803 #define NODE_CONFIG_AUTO_REPAIR CL_AMS_CONFIG_ATTR_ALL<<7
804 #define NODE_CONFIG_IS_ASP_AWARE CL_AMS_CONFIG_ATTR_ALL<<8
805 #define NODE_CONFIG_SU_FAILOVER_DURATION CL_AMS_CONFIG_ATTR_ALL<<9
806 #define NODE_CONFIG_SU_FAILOVER_COUNT_MAX CL_AMS_CONFIG_ATTR_ALL<<10
807 
808 #define SG_CONFIG_ADMIN_STATE CL_AMS_CONFIG_ATTR_ALL<<1
809 #define SG_CONFIG_REDUNDANCY_MODEL CL_AMS_CONFIG_ATTR_ALL<<2
810 #define SG_CONFIG_LOADING_STRATEGY CL_AMS_CONFIG_ATTR_ALL<<3
811 #define SG_CONFIG_FAILBACK_OPTION CL_AMS_CONFIG_ATTR_ALL<<4
812 #define SG_CONFIG_AUTO_REPAIR CL_AMS_CONFIG_ATTR_ALL<<5
813 #define SG_CONFIG_INSTANTIATE_DURATION CL_AMS_CONFIG_ATTR_ALL<<6
814 #define SG_CONFIG_NUM_PREF_ACTIVE_SUS CL_AMS_CONFIG_ATTR_ALL<<7
815 #define SG_CONFIG_NUM_PREF_STANDBY_SUS CL_AMS_CONFIG_ATTR_ALL<<8
816 #define SG_CONFIG_NUM_PREF_INSERVICE_SUS CL_AMS_CONFIG_ATTR_ALL<<9
817 #define SG_CONFIG_NUM_PREF_ASSIGNED_SUS CL_AMS_CONFIG_ATTR_ALL<<10
818 #define SG_CONFIG_NUM_PREF_ACTIVE_SUS_PER_SI CL_AMS_CONFIG_ATTR_ALL<<11
819 #define SG_CONFIG_MAX_ACTIVE_SIS_PER_SU CL_AMS_CONFIG_ATTR_ALL<<12
820 #define SG_CONFIG_MAX_STANDBY_SIS_PER_SU CL_AMS_CONFIG_ATTR_ALL<<13
821 #define SG_CONFIG_COMP_RESTART_DURATION CL_AMS_CONFIG_ATTR_ALL<<14
822 #define SG_CONFIG_COMP_RESTART_COUNT_MAX CL_AMS_CONFIG_ATTR_ALL<<15
823 #define SG_CONFIG_SU_RESTART_DURATION CL_AMS_CONFIG_ATTR_ALL<<16
824 #define SG_CONFIG_SU_RESTART_COUNT_MAX CL_AMS_CONFIG_ATTR_ALL<<17
825 #define SG_CONFIG_REDUCTION_PROCEDURE CL_AMS_CONFIG_ATTR_ALL<<18
826 #define SG_CONFIG_COLOCATION_ALLOWED CL_AMS_CONFIG_ATTR_ALL<<19
827 #define SG_CONFIG_AUTO_ADJUST CL_AMS_CONFIG_ATTR_ALL<<20
828 #define SG_CONFIG_AUTO_ADJUST_PROBATION CL_AMS_CONFIG_ATTR_ALL<<21
829 #define SG_CONFIG_ALPHA_FACTOR CL_AMS_CONFIG_ATTR_ALL<<22
830 #define SG_CONFIG_MAX_FAILOVERS CL_AMS_CONFIG_ATTR_ALL<<23
831 #define SG_CONFIG_FAILOVER_DURATION CL_AMS_CONFIG_ATTR_ALL<<24
832 #define SG_CONFIG_BETA_FACTOR CL_AMS_CONFIG_ATTR_ALL<<25
833 
834 #define SU_CONFIG_ADMIN_STATE CL_AMS_CONFIG_ATTR_ALL<<1
835 #define SU_CONFIG_RANK CL_AMS_CONFIG_ATTR_ALL<<2
836 #define SU_CONFIG_NUM_COMPONENTS CL_AMS_CONFIG_ATTR_ALL<<3
837 #define SU_CONFIG_IS_PREINSTANTIABLE CL_AMS_CONFIG_ATTR_ALL<<4
838 #define SU_CONFIG_IS_RESTARTABLE CL_AMS_CONFIG_ATTR_ALL<<5
839 #define SU_CONFIG_IS_CONTAINER_SU CL_AMS_CONFIG_ATTR_ALL<<6
840 
841 #define SI_CONFIG_ADMIN_STATE CL_AMS_CONFIG_ATTR_ALL<<1
842 #define SI_CONFIG_RANK CL_AMS_CONFIG_ATTR_ALL<<2
843 #define SI_CONFIG_NUM_CSIS CL_AMS_CONFIG_ATTR_ALL<<3
844 #define SI_CONFIG_NUM_STANDBY_ASSIGNMENTS CL_AMS_CONFIG_ATTR_ALL<<4
845 #define SI_CONFIG_STANDBY_ASSIGNMENT_ORDER CL_AMS_CONFIG_ATTR_ALL<<5
846 
847 #define COMP_CONFIG_SUPPORTED_CSI_TYPE CL_AMS_CONFIG_ATTR_ALL<<1
848 #define COMP_CONFIG_PROXY_CSI_TYPE CL_AMS_CONFIG_ATTR_ALL<<2
849 #define COMP_CONFIG_CAPABILITY_MODEL CL_AMS_CONFIG_ATTR_ALL<<3
850 #define COMP_CONFIG_PROPERTY CL_AMS_CONFIG_ATTR_ALL<<4
851 #define COMP_CONFIG_IS_RESTARTABLE CL_AMS_CONFIG_ATTR_ALL<<5
852 #define COMP_CONFIG_NODE_REBOOT_CLEANUP_FAIL CL_AMS_CONFIG_ATTR_ALL<<6
853 #define COMP_CONFIG_INSTANTIATE_LEVEL CL_AMS_CONFIG_ATTR_ALL<<7
854 #define COMP_CONFIG_NUM_MAX_INSTANTIATE CL_AMS_CONFIG_ATTR_ALL<<8
855 #define COMP_CONFIG_NUM_MAX_INSTANTIATE_WITH_DELAY CL_AMS_CONFIG_ATTR_ALL<<9
856 #define COMP_CONFIG_NUM_MAX_TERMINATE CL_AMS_CONFIG_ATTR_ALL<<10
857 #define COMP_CONFIG_NUM_MAX_AM_START CL_AMS_CONFIG_ATTR_ALL<<11
858 #define COMP_CONFIG_NUM_MAX_AM_STOP CL_AMS_CONFIG_ATTR_ALL<<12
859 #define COMP_CONFIG_NUM_MAX_ACTIVE_CSIS CL_AMS_CONFIG_ATTR_ALL<<13
860 #define COMP_CONFIG_NUM_MAX_STANDBY_CSIS CL_AMS_CONFIG_ATTR_ALL<<14
861 #define COMP_CONFIG_TIMEOUTS CL_AMS_CONFIG_ATTR_ALL<<15
862 #define COMP_CONFIG_RECOVERY_ON_TIMEOUT CL_AMS_CONFIG_ATTR_ALL<<16
863 #define COMP_CONFIG_PARENT_SU CL_AMS_CONFIG_ATTR_ALL<<17
864 #define COMP_CONFIG_INSTANTIATE_COMMAND CL_AMS_CONFIG_ATTR_ALL<<18
865 
866 #define CSI_CONFIG_TYPE CL_AMS_CONFIG_ATTR_ALL<<1
867 #define CSI_CONFIG_IS_PROXY_CSI CL_AMS_CONFIG_ATTR_ALL<<2
868 #define CSI_CONFIG_RANK CL_AMS_CONFIG_ATTR_ALL<<3
869 
870 #ifdef __cplusplus
871 }
872 #endif
873 
874 #endif /* _CL_AMS_MGMT_COMMON_H_ */
875 

Generated on Tue Jan 10 10:29:15 PST 2012 for OpenClovis SDK using Doxygen