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
00028
00029
00030
00035 #ifndef OW_INSTANCEPROVIDERIFC_HPP_INCLUDE_GUARD_
00036 #define OW_INSTANCEPROVIDERIFC_HPP_INCLUDE_GUARD_
00037 #include "OW_config.h"
00038 #include "OW_ProviderBaseIFC.hpp"
00039 #include "OW_ProviderFwd.hpp"
00040 #include "OW_CommonFwd.hpp"
00041 #include "OW_IfcsFwd.hpp"
00042 #include "OW_WBEMFlags.hpp"
00043
00044 namespace OW_NAMESPACE
00045 {
00046
00052 class OW_PROVIDER_API InstanceProviderIFC: public ProviderBaseIFC
00053 {
00054 public:
00055 virtual ~InstanceProviderIFC();
00068 virtual void enumInstanceNames(
00069 const ProviderEnvironmentIFCRef& env,
00070 const String& ns,
00071 const String& className,
00072 CIMObjectPathResultHandlerIFC& result,
00073 const CIMClass& cimClass ) = 0;
00089 virtual void enumInstances(
00090 const ProviderEnvironmentIFCRef& env,
00091 const String& ns,
00092 const String& className,
00093 CIMInstanceResultHandlerIFC& result,
00094 WBEMFlags::ELocalOnlyFlag localOnly,
00095 WBEMFlags::EDeepFlag deep,
00096 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00097 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00098 const StringArray* propertyList,
00099 const CIMClass& requestedClass,
00100 const CIMClass& cimClass ) = 0;
00118 virtual CIMInstance getInstance(
00119 const ProviderEnvironmentIFCRef& env,
00120 const String& ns,
00121 const CIMObjectPath& instanceName,
00122 WBEMFlags::ELocalOnlyFlag localOnly,
00123 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00124 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00125 const StringArray* propertyList,
00126 const CIMClass& cimClass ) = 0;
00127 #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00128
00142 virtual CIMObjectPath createInstance(
00143 const ProviderEnvironmentIFCRef& env,
00144 const String& ns,
00145 const CIMInstance& cimInstance ) = 0;
00158 virtual void modifyInstance(
00159 const ProviderEnvironmentIFCRef& env,
00160 const String& ns,
00161 const CIMInstance& modifiedInstance,
00162 const CIMInstance& previousInstance,
00163 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00164 const StringArray* propertyList,
00165 const CIMClass& theClass) = 0;
00173 virtual void deleteInstance(
00174 const ProviderEnvironmentIFCRef& env,
00175 const String& ns,
00176 const CIMObjectPath& cop) = 0;
00177 #endif // #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00178 };
00179
00180 }
00181
00182 #endif