00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _CmpiBroker_h_
00023 #define _CmpiBroker_h_
00024 #include "OW_config.h"
00025
00026 #include "cmpidt.h"
00027 #include "cmpift.h"
00028
00029 class CmpiObject;
00030 class CmpiEnumeration;
00031 class CmpiArgs;
00032
00033 #include "CmpiObject.h"
00034 #include "CmpiInstance.h"
00035 #include "CmpiContext.h"
00036 #include "CmpiObjectPath.h"
00037 #include "CmpiEnumeration.h"
00038
00042 class CmpiBroker : public CmpiObject {
00043 friend class CmpiBaseMI;
00044 friend class CmpiInstanceMI;
00045 friend class CmpiInstance;
00046 friend class CmpiObjectPath;
00047 friend class CmpiEnumeration;
00048 protected:
00049
00052
00053
00054
00055
00058 inline CMPIBroker *getEnc() const
00059 { return (CMPIBroker*)enc; }
00060 private:
00061
00064 CmpiBroker() {}
00065 public:
00066
00067 CmpiBroker(CMPIBroker* b)
00068 : CmpiObject((void*)b) {}
00076 CmpiContext prepareAttachThread
00077 (const CmpiContext& ctx);
00078
00083 void attachThread
00084 (const CmpiContext& ctx);
00085
00091 void detachThread
00092 (const CmpiContext& ctx);
00093
00094
00095
00102 void deliverIndication
00103 (const CmpiContext& ctx, const char* ns,const CmpiInstance& ind);
00104
00105
00106
00112 CmpiEnumeration enumInstanceNames
00113 (const CmpiContext& ctx, const CmpiObjectPath& op);
00114
00124 CmpiInstance getInstance
00125 (const CmpiContext& ctx, const CmpiObjectPath& op,
00126 const char** properties);
00127
00128
00129
00136 CmpiObjectPath createInstance
00137 (const CmpiContext& ctx, const CmpiObjectPath& op,
00138 const CmpiInstance& inst);
00139
00145 void setInstance
00146 (const CmpiContext& ctx, const CmpiObjectPath& op,
00147 const CmpiInstance& inst);
00148
00153 void deleteInstance
00154 (const CmpiContext& ctx, const CmpiObjectPath& op);
00155
00164 CmpiEnumeration execQuery
00165 (const CmpiContext& ctx, const CmpiObjectPath& op,
00166 const char* query, const char* lang);
00167
00178 CmpiEnumeration enumInstances
00179 (const CmpiContext& ctx, const CmpiObjectPath& op,
00180 const char** properties);
00181
00210 CmpiEnumeration associators
00211 (const CmpiContext& ctx, const CmpiObjectPath& op,
00212 const char* assocClass, const char* resultClass,
00213 const char* role, const char* resultRole,
00214 const char** properties);
00215
00241 CmpiEnumeration associatorNames
00242 (const CmpiContext& ctx, const CmpiObjectPath& op,
00243 const char* assocClass, const char* resultClass,
00244 const char* role, const char* resultRole);
00245
00265 CmpiEnumeration references
00266 (const CmpiContext& ctx, const CmpiObjectPath& op,
00267 const char* resultClass, const char* role,
00268 const char** properties);
00269
00286 CmpiEnumeration referenceNames
00287 (const CmpiContext& ctx, const CmpiObjectPath& op,
00288 const char* resultClass, const char* role);
00289
00299 CmpiData invokeMethod
00300 (const CmpiContext& ctx, const CmpiObjectPath& op,
00301 const char* method, const CmpiArgs& in, CmpiArgs& out);
00302
00309 void setProperty
00310 (const CmpiContext& ctx, const CmpiObjectPath& op,
00311 const char* name, const CmpiData& data);
00312
00319 CmpiData getProperty
00320 (const CmpiContext& ctx, const CmpiObjectPath& op,
00321 const char* name);
00322 };
00323
00324 #endif
00325
00326
00327