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 OWBI1_SECONDARY_INSTANCEPROVIDERIFC_HPP_INCLUDE_GUARD_
00036 #define OWBI1_SECONDARY_INSTANCEPROVIDERIFC_HPP_INCLUDE_GUARD_
00037 #include "OWBI1_config.h"
00038 #include "OWBI1_ProviderBaseIFC.hpp"
00039 #include "OWBI1_ProviderFwd.hpp"
00040 #include "OWBI1_WBEMFlags.hpp"
00041 #include "OWBI1_CIMFwd.hpp"
00042
00043 namespace OWBI1
00044 {
00045
00046 class OWBI1_OWBI1PROVIFC_API BI1SecondaryInstanceProviderIFC: public virtual BI1ProviderBaseIFC
00047 {
00048 public:
00049 virtual ~BI1SecondaryInstanceProviderIFC();
00057 virtual void getSecondaryInstanceProviderInfo(SecondaryInstanceProviderInfo& info) = 0;
00058
00087 virtual void filterInstances(
00088 const ProviderEnvironmentIFCRef& env,
00089 const String& ns,
00090 const CIMName& className,
00091 CIMInstanceArray& instances,
00092 const CIMPropertyList& propertyList,
00093 const CIMClass& requestedClass,
00094 const CIMClass& cimClass );
00095
00108 virtual void createInstance(
00109 const ProviderEnvironmentIFCRef& env,
00110 const String& ns,
00111 const CIMInstance& cimInstance );
00123 virtual void modifyInstance(
00124 const ProviderEnvironmentIFCRef& env,
00125 const String& ns,
00126 const CIMInstance& modifiedInstance,
00127 const CIMInstance& previousInstance,
00128 const CIMPropertyList& propertyList,
00129 const CIMClass& theClass);
00142 virtual void deleteInstance(
00143 const ProviderEnvironmentIFCRef& env,
00144 const String& ns,
00145 const CIMObjectPath& cop);
00146
00147 virtual BI1SecondaryInstanceProviderIFC* getSecondaryInstanceProvider();
00148
00149 };
00150
00151 }
00152
00153 #endif