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_SECONDARY_INSTANCEPROVIDERIFC_HPP_INCLUDE_GUARD_
00036 #define OW_SECONDARY_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
00047 class OW_PROVIDER_API SecondaryInstanceProviderIFC: public ProviderBaseIFC
00048 {
00049 public:
00050 virtual ~SecondaryInstanceProviderIFC();
00079 virtual void filterInstances(
00080 const ProviderEnvironmentIFCRef& env,
00081 const String& ns,
00082 const String& className,
00083 CIMInstanceArray& instances,
00084 WBEMFlags::ELocalOnlyFlag localOnly,
00085 WBEMFlags::EDeepFlag deep,
00086 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00087 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00088 const StringArray* propertyList,
00089 const CIMClass& requestedClass,
00090 const CIMClass& cimClass ) = 0;
00091 #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00092
00104 virtual void createInstance(
00105 const ProviderEnvironmentIFCRef& env,
00106 const String& ns,
00107 const CIMInstance& cimInstance ) = 0;
00119 virtual void modifyInstance(
00120 const ProviderEnvironmentIFCRef& env,
00121 const String& ns,
00122 const CIMInstance& modifiedInstance,
00123 const CIMInstance& previousInstance,
00124 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00125 const StringArray* propertyList,
00126 const CIMClass& theClass) = 0;
00139 virtual void deleteInstance(
00140 const ProviderEnvironmentIFCRef& env,
00141 const String& ns,
00142 const CIMObjectPath& cop) = 0;
00143 #endif // #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00144 };
00145
00146 }
00147
00148 #endif