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_NAMESPACEPROVIDER_HPP_
00036 #define OW_NAMESPACEPROVIDER_HPP_
00037 #include "OW_config.h"
00038 #include "OW_CppInstanceProviderIFC.hpp"
00039 
00040 namespace OW_NAMESPACE
00041 {
00042 
00043 class NameSpaceProvider : public CppInstanceProviderIFC
00044 {
00045 public:
00046    NameSpaceProvider() :
00047       CppInstanceProviderIFC() {}
00048    ~NameSpaceProvider();
00049    virtual void enumInstanceNames(
00050          const ProviderEnvironmentIFCRef& env,
00051          const String& ns,
00052          const String& className,
00053          CIMObjectPathResultHandlerIFC& result,
00054          const CIMClass& cimClass);
00055    virtual void enumInstances(
00056          const ProviderEnvironmentIFCRef& env,
00057          const String& ns,
00058          const String& className,
00059          CIMInstanceResultHandlerIFC& result,
00060          WBEMFlags::ELocalOnlyFlag localOnly, 
00061          WBEMFlags::EDeepFlag deep, 
00062          WBEMFlags::EIncludeQualifiersFlag includeQualifiers, 
00063          WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00064          const StringArray* propertyList,
00065          const CIMClass& requestedClass,
00066          const CIMClass& cimClass);
00067    virtual CIMInstance getInstance(
00068          const ProviderEnvironmentIFCRef& env,
00069          const String& ns,
00070          const CIMObjectPath& instanceName,
00071          WBEMFlags::ELocalOnlyFlag localOnly,
00072          WBEMFlags::EIncludeQualifiersFlag includeQualifiers, 
00073          WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00074          const StringArray* propertyList, 
00075          const CIMClass& cimClass);
00076 #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00077    virtual CIMObjectPath createInstance(
00078          const ProviderEnvironmentIFCRef& env,
00079          const String& ns,
00080          const CIMInstance& cimInstance);
00081    virtual void modifyInstance(
00082          const ProviderEnvironmentIFCRef& env,
00083          const String& ns,
00084          const CIMInstance& modifiedInstance,
00085          const CIMInstance& previousInstance,
00086          WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00087          const StringArray* propertyList,
00088          const CIMClass& theClass);
00089    virtual void deleteInstance(
00090          const ProviderEnvironmentIFCRef& env,
00091          const String& ns,
00092          const CIMObjectPath& cop);
00093 #endif
00094    virtual void initialize(const ProviderEnvironmentIFCRef& env
00095          );
00096    virtual void getInstanceProviderInfo(InstanceProviderInfo& info);
00097 };
00098 
00099 } 
00100 
00101 #endif