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
00031 #ifndef OW_NAMESPACEPROVIDER_IFC_HPP_INCLUDE_GUARD_
00032 #define OW_NAMESPACEPROVIDER_IFC_HPP_INCLUDE_GUARD_
00033 #include "OW_config.h"
00034 #include "OW_ProviderBaseIFC.hpp"
00035 #include "OW_ProviderFwd.hpp"
00036 #include "OW_CommonFwd.hpp"
00037 #include "OW_IfcsFwd.hpp"
00038 #include "OW_WBEMFlags.hpp"
00039
00040 namespace OW_NAMESPACE
00041 {
00042
00043 class OW_PROVIDER_API NamespaceProviderIFC: public ProviderBaseIFC
00044 {
00045 public:
00046
00047 virtual ~NamespaceProviderIFC();
00048
00052 void init(const ProviderEnvironmentIFCRef& env);
00053
00057 virtual void shutdown(const ProviderEnvironmentIFCRef& env);
00058
00059 virtual CIMQualifierType getQualifierType(
00060 const ProviderEnvironmentIFCRef& env,
00061 const String& ns,
00062 const String& qualifierName) = 0;
00063
00064 #ifndef OW_DISABLE_QUALIFIER_DECLARATION
00065
00066 virtual void enumQualifierTypes(
00067 const ProviderEnvironmentIFCRef& env,
00068 const String& ns,
00069 CIMQualifierTypeResultHandlerIFC& result) = 0;
00070
00071 virtual void deleteQualifierType(
00072 const ProviderEnvironmentIFCRef& env,
00073 const String& ns,
00074 const String& qualName) = 0;
00075
00076 virtual void setQualifierType(
00077 const ProviderEnvironmentIFCRef& env,
00078 const String& ns,
00079 const CIMQualifierType& qt) = 0;
00080
00081 #endif // #ifndef OW_DISABLE_QUALIFIER_DECLARATION
00082
00083 virtual CIMClass getClass(
00084 const ProviderEnvironmentIFCRef& env,
00085 const String& ns,
00086 const String& className,
00087 WBEMFlags::ELocalOnlyFlag localOnly,
00088 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00089 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00090 const StringArray* propertyList) = 0;
00091
00092 #ifndef OW_DISABLE_SCHEMA_MANIPULATION
00093
00094 virtual CIMClass deleteClass(
00095 const ProviderEnvironmentIFCRef& env,
00096 const String& ns,
00097 const String& className) = 0;
00098
00099 virtual void createClass(
00100 const ProviderEnvironmentIFCRef& env,
00101 const String& ns,
00102 const CIMClass& cimClass) = 0;
00103
00104 virtual CIMClass modifyClass(
00105 const ProviderEnvironmentIFCRef& env,
00106 const String& ns,
00107 const CIMClass& cc) = 0;
00108
00109 #endif // #ifndef OW_DISABLE_SCHEMA_MANIPULATION
00110
00111 virtual void enumClasses(
00112 const ProviderEnvironmentIFCRef& env,
00113 const String& ns,
00114 const String& className,
00115 CIMClassResultHandlerIFC& result,
00116 WBEMFlags::EDeepFlag deep,
00117 WBEMFlags::ELocalOnlyFlag localOnly,
00118 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00119 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin) = 0;
00120
00121 virtual void enumClassNames(
00122 const ProviderEnvironmentIFCRef& env,
00123 const String& ns,
00124 const String& className,
00125 StringResultHandlerIFC& result,
00126 WBEMFlags::EDeepFlag deep) = 0;
00127
00128 virtual void enumInstances(
00129 const ProviderEnvironmentIFCRef& env,
00130 const String& ns,
00131 const String& className,
00132 CIMInstanceResultHandlerIFC& result,
00133 WBEMFlags::EDeepFlag deep,
00134 WBEMFlags::ELocalOnlyFlag localOnly,
00135 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00136 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00137 const StringArray* propertyList,
00138 WBEMFlags::EEnumSubclassesFlag enumSubclasses) = 0;
00139
00140 virtual void enumInstanceNames(
00141 const ProviderEnvironmentIFCRef& env,
00142 const String& ns,
00143 const String& className,
00144 CIMObjectPathResultHandlerIFC& result,
00145 WBEMFlags::EDeepFlag deep) = 0;
00146
00147 virtual CIMInstance getInstance(
00148 const ProviderEnvironmentIFCRef& env,
00149 const String& ns,
00150 const CIMObjectPath& instanceName,
00151 WBEMFlags::ELocalOnlyFlag localOnly,
00152 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00153 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00154 const StringArray* propertyList) = 0;
00155
00156 #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00157
00158 virtual CIMInstance deleteInstance(
00159 const ProviderEnvironmentIFCRef& env,
00160 const String& ns,
00161 const CIMObjectPath& cop) = 0;
00162
00163 virtual CIMObjectPath createInstance(
00164 const ProviderEnvironmentIFCRef& env,
00165 const String& ns,
00166 const CIMInstance& ci) = 0;
00167
00168 virtual CIMInstance modifyInstance(
00169 const ProviderEnvironmentIFCRef& env,
00170 const String& ns,
00171 const CIMInstance& modifiedInstance,
00172 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00173 const StringArray* propertyList) = 0;
00174
00175 #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00176
00177 virtual void setProperty(
00178 const ProviderEnvironmentIFCRef& env,
00179 const String& ns,
00180 const CIMObjectPath& name,
00181 const String& propertyName,
00182 const CIMValue& cv) = 0;
00183
00184 #endif // #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00185
00186 #endif // #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00187
00188 #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00189
00190 virtual CIMValue getProperty(
00191 const ProviderEnvironmentIFCRef& env,
00192 const String& ns,
00193 const CIMObjectPath& name,
00194 const String& propertyName) = 0;
00195
00196 #endif // #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00197
00198 virtual CIMValue invokeMethod(
00199 const ProviderEnvironmentIFCRef& env,
00200 const String& ns,
00201 const CIMObjectPath& path,
00202 const String& methodName,
00203 const CIMParamValueArray& inParams,
00204 CIMParamValueArray& outParams) = 0;
00205
00206 #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00207
00208 virtual void associatorNames(
00209 const ProviderEnvironmentIFCRef& env,
00210 const String& ns,
00211 const CIMObjectPath& path,
00212 CIMObjectPathResultHandlerIFC& result,
00213 const String& assocClass,
00214 const String& resultClass,
00215 const String& role,
00216 const String& resultRole) = 0;
00217
00218 virtual void associators(
00219 const ProviderEnvironmentIFCRef& env,
00220 const String& ns,
00221 const CIMObjectPath& path,
00222 CIMInstanceResultHandlerIFC& result,
00223 const String& assocClass,
00224 const String& resultClass,
00225 const String& role,
00226 const String& resultRole,
00227 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00228 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00229 const StringArray* propertyList) = 0;
00230
00231 virtual void associatorsClasses(
00232 const ProviderEnvironmentIFCRef& env,
00233 const String& ns,
00234 const CIMObjectPath& path,
00235 CIMClassResultHandlerIFC& result,
00236 const String& assocClass,
00237 const String& resultClass,
00238 const String& role,
00239 const String& resultRole,
00240 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00241 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00242 const StringArray* propertyList) = 0;
00243
00244 virtual void referenceNames(
00245 const ProviderEnvironmentIFCRef& env,
00246 const String& ns,
00247 const CIMObjectPath& path,
00248 CIMObjectPathResultHandlerIFC& result,
00249 const String& resultClass,
00250 const String& role) = 0;
00251
00252 virtual void references(
00253 const ProviderEnvironmentIFCRef& env,
00254 const String& ns,
00255 const CIMObjectPath& path,
00256 CIMInstanceResultHandlerIFC& result,
00257 const String& resultClass,
00258 const String& role,
00259 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00260 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00261 const StringArray* propertyList) = 0;
00262
00263 virtual void referencesClasses(
00264 const ProviderEnvironmentIFCRef& env,
00265 const String& ns,
00266 const CIMObjectPath& path,
00267 CIMClassResultHandlerIFC& result,
00268 const String& resultClass,
00269 const String& role,
00270 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00271 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00272 const StringArray* propertyList) = 0;
00273
00274 #endif // #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00275
00276 virtual void execQuery(
00277 const ProviderEnvironmentIFCRef& env,
00278 const String& ns,
00279 CIMInstanceResultHandlerIFC& result,
00280 const String &query,
00281 const String& queryLanguage) = 0;
00282 };
00283
00284 }
00285
00286 #endif // OW_NAMESPACEPROVIDER_IFC_HPP_INCLUDE_GUARD_
00287