OpenClovis Logo

clProvApi.h
Go to the documentation of this file.
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 : prov
21  * File : clProvApi.h
22  *******************************************************************************/
23 
24 /*******************************************************************************
25  * Description :
26  * This header file contains Provision Library related API defination.
27  *
28  *
29  *****************************************************************************/
30 
31 #ifndef _CL_PROV_API_H_
32 #define _CL_PROV_API_H_
33 
34 #ifdef __cplusplus
35 extern "C"
36 {
37 #endif
38 
39 #include <clCommon.h>
40 #include <clCorMetaData.h>
41 #include <clCorNotifyApi.h>
42 
54 /******************************** Provision Library APIs *************************/
55 /*********************************************************************************/
56 /* clProvInitialize */
57 /* clProvFinalize */
58 /* clProvVersionCheck */
59 /* clProvObjectCreate */
60 /* clProvObjectDelete */
61 /* */
62 /*********************************************************************************/
63 
74  typedef struct ClProvTxnData
75  {
76 
84 
93  void* pMoId;
130  void *pProvData;
137  ClUint32T size;
144  ClUint32T index;
145 
146  ClCorTxnJobIdT jobId;
147 
149 
177 typedef void (*ClProvTxnStartCallbackT) (
178  CL_IN ClHandleT txnHandle);
179 
207 typedef void (*ClProvTxnEndCallbackT) (
208  CL_IN ClHandleT txnHandle);
209 
217 typedef struct
218 {
219  /*
220  * This is used to get the start callback from the user which will be called
221  * before beginning a transaction.
222  */
223  ClProvTxnStartCallbackT fpProvTxnStart;
224 
225  /*
226  * This is used to get the end callback from the user which will be called
227  * after completing the transaction.
228  */
229  ClProvTxnEndCallbackT fpProvTxnEnd;
231 
257 
281 
306 
339 
364 
365 ClRcT clProvResourcesGet(ClCorMOIdListT** ppMoIdList);
366 
370 #ifdef __cplusplus
371 }
372 #endif
373 
374 #endif /* _CL_PROV_API_H_ */
Typical defines found in any software project.
Header file of all MetaData data structures.
Header file of COR APIs for subscribing/unsubscribing to the events on a Managed Objects.
ClUint32T ClRcT
Clovis return code type.
Definition: clCommon.h:168
#define CL_INOUT
CL_INOUT macro assists in clearly defining arguments of an API, but has no actual meaning.
Definition: clCommon.h:108
#define CL_OUT
CL_OUT macro assists in clearly defining arguments of an API, but has no actual meaning.
Definition: clCommon.h:110
#define CL_IN
CL_IN macro assists in clearly defining arguments of an API, but has no actual meaning.
Definition: clCommon.h:106
enum ClCorType ClCorTypeT
The ClCorType enumeration contains the basic COR data types.
enum ClCorAttrType ClCorAttrTypeT
The values of this enumeration type refer to the COR attribute types.
ClPtrT ClCorObjectHandleT
The structure ClCorObjectHandle is the handle to MO.
Definition: clCorMetaData.h:608
ClCorOpsT
The values of the ClCorOpsT enumeration type contain the Operation IDs.
Definition: clCorMetaData.h:653
ClInt32T ClCorAttrIdT
The type of an identifier for a COR attribute.
Definition: clCorMetaData.h:206
ClUint32T ClCorTxnJobIdT
The type of COR transaction Job Id, used to identify a job uniquely within a transaction.
Definition: clCorMetaData.h:647
void(* ClProvTxnStartCallbackT)(CL_IN ClHandleT txnHandle)
Transaction start callback function which will be provided by the user.
Definition: clProvApi.h:177
ClRcT clProvInitialize()
Initializes the Provision Manager library.
void(* ClProvTxnEndCallbackT)(CL_IN ClHandleT txnHandle)
Transaction end callback function which will be provided by the user.
Definition: clProvApi.h:207
struct ClProvTxnData ClProvTxnDataT
The structure is used to pass the job information while calling the object implementer's callback fun...
ClRcT clProvObjectCreate(CL_IN ClCorMOIdPtrT pMoId, CL_IN ClCorAttributeValueListPtrT attrList, CL_OUT ClCorObjectHandleT *pHandle)
Create Prov MSO object.
ClRcT clProvVersionCheck(CL_INOUT ClVersionT *pVersion)
Verify the provision library version.
ClRcT clProvFinalize()
Cleans up the Provision Manager library.
ClRcT clProvObjectDelete(CL_IN ClCorObjectHandleT handle)
Delete Prov MSO object.
Version Information for various services.
Definition: clCommon.h:250
The structure ClCorMOId contains MoId of the object, which is the address of the COR object.
Definition: clCorMetaData.h:918
The structure ClCorAttrPath contains the path-list of the attribute.
Definition: clCorMetaData.h:997
Type to provide the list of attribute values for initialized attributes.
Definition: clCorMetaData.h:1350
Type to store the list of MoIds.
Definition: clCorNotifyApi.h:106
The structure is used to pass the job information while calling the object implementer's callback fun...
Definition: clProvApi.h:75
ClCorTypeT attrDataType
This is the actual data type of the attribute.
Definition: clProvApi.h:113
ClUint32T index
This is a non-zero value for a array attribute if an index is supplied while submitting the job.
Definition: clProvApi.h:144
void * pMoId
It is pointer to the MOID of the managed resource on which the operation is done.
Definition: clProvApi.h:93
ClCorAttrPathPtrT attrPath
This is pointer to the attribute path structure.
Definition: clProvApi.h:99
void * pProvData
It is a pointer to the address containing value of the attribute.
Definition: clProvApi.h:130
ClUint32T size
Size of the data.
Definition: clProvApi.h:137
ClCorOpsT provCmd
The argument provides the operation type of the job.
Definition: clProvApi.h:83
ClCorAttrTypeT attrType
It is the type of the attribute that is for an array attribute it is CL_COR_ARRAY_ATTR otherwise it i...
Definition: clProvApi.h:106
ClCorAttrIdT attrId
The identifier for the attribute.
Definition: clProvApi.h:120
This structure is used to get the start and end callbacks for a transaction from the user.
Definition: clProvApi.h:218

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