00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00029
00030
00031
00032 #ifndef Pegasus_CIMInstanceProvider_h
00033 #define Pegasus_CIMInstanceProvider_h
00034
00035 #include <Pegasus/Common/Config.h>
00036 #include <Pegasus/Provider/CIMProvider.h>
00037
00038 #include <Pegasus/Common/Array.h>
00039 #include <Pegasus/Common/CIMPropertyList.h>
00040 #include <Pegasus/Common/CIMObjectPath.h>
00041 #include <Pegasus/Common/CIMInstance.h>
00042 #include <Pegasus/Provider/Linkage.h>
00043
00044 PEGASUS_NAMESPACE_BEGIN
00045
00061 class PEGASUS_PROVIDER_LINKAGE CIMInstanceProvider : public virtual CIMProvider
00062 {
00063 public:
00067 CIMInstanceProvider();
00068
00072 virtual ~CIMInstanceProvider();
00073
00112 virtual void getInstance(
00113 const OperationContext& context,
00114 const CIMObjectPath& instanceReference,
00115 const Boolean includeQualifiers,
00116 const Boolean includeClassOrigin,
00117 const CIMPropertyList& propertyList,
00118 InstanceResponseHandler& handler) = 0;
00119
00174 virtual void enumerateInstances(
00175 const OperationContext& context,
00176 const CIMObjectPath& classReference,
00177 const Boolean includeQualifiers,
00178 const Boolean includeClassOrigin,
00179 const CIMPropertyList& propertyList,
00180 InstanceResponseHandler& handler) = 0;
00181
00219 virtual void enumerateInstanceNames(
00220 const OperationContext& context,
00221 const CIMObjectPath& classReference,
00222 ObjectPathResponseHandler& handler) = 0;
00223
00261 virtual void modifyInstance(
00262 const OperationContext& context,
00263 const CIMObjectPath& instanceReference,
00264 const CIMInstance& instanceObject,
00265 const Boolean includeQualifiers,
00266 const CIMPropertyList& propertyList,
00267 ResponseHandler& handler) = 0;
00268
00297 virtual void createInstance(
00298 const OperationContext& context,
00299 const CIMObjectPath& instanceReference,
00300 const CIMInstance& instanceObject,
00301 ObjectPathResponseHandler& handler) = 0;
00302
00321 virtual void deleteInstance(
00322 const OperationContext& context,
00323 const CIMObjectPath& instanceReference,
00324 ResponseHandler& handler) = 0;
00325 };
00326
00327 PEGASUS_NAMESPACE_END
00328
00329 #endif