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_SHAREDLIBRARYREPOSITORY_HPP_INCLUDE_GUARD_
00036 #define OW_SHAREDLIBRARYREPOSITORY_HPP_INCLUDE_GUARD_
00037 #include "OW_config.h"
00038 #include "OW_RepositoryIFC.hpp"
00039
00040 namespace OW_NAMESPACE
00041 {
00042
00043 class OW_CIMOMCOMMON_API SharedLibraryRepository : public RepositoryIFC
00044 {
00045 public:
00046 SharedLibraryRepository(SharedLibraryRepositoryIFCRef ref);
00047 ~SharedLibraryRepository();
00048 virtual void close();
00049 virtual String getName() const;
00050 virtual StringArray getDependencies() const;
00051 virtual void init(const ServiceEnvironmentIFCRef& env);
00052 virtual void initialized();
00053 virtual void start();
00054 virtual void started();
00055 virtual void shutdown();
00056 virtual void shuttingDown();
00057 virtual void open(const String &path);
00058 virtual ServiceEnvironmentIFCRef getEnvironment() const;
00059 #if !defined(OW_DISABLE_INSTANCE_MANIPULATION) && !defined(OW_DISABLE_NAMESPACE_MANIPULATION)
00060 virtual void createNameSpace(const String& ns,
00061 OperationContext& context);
00062 virtual void deleteNameSpace(const String& ns,
00063 OperationContext& context);
00064 #endif // #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00065 virtual void enumNameSpace(StringResultHandlerIFC& result,
00066 OperationContext& context);
00067 virtual CIMQualifierType getQualifierType(
00068 const String& ns,
00069 const String& qualifierName, OperationContext& context);
00070 #ifndef OW_DISABLE_QUALIFIER_DECLARATION
00071 virtual void enumQualifierTypes(
00072 const String& ns,
00073 CIMQualifierTypeResultHandlerIFC& result, OperationContext& context);
00074 virtual void deleteQualifierType(const String& ns, const String& qualName,
00075 OperationContext& context);
00076 virtual void setQualifierType(const String& ns,
00077 const CIMQualifierType &qt, OperationContext& context);
00078 #endif // #ifndef OW_DISABLE_QUALIFIER_DECLARATION
00079 virtual CIMClass getClass(
00080 const String& ns,
00081 const String& className,
00082 WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00083 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList,
00084 OperationContext& context);
00085 #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00086 virtual CIMObjectPath createInstance(const String& ns, const CIMInstance &ci,
00087 OperationContext& context);
00088 virtual CIMInstance modifyInstance(
00089 const String& ns,
00090 const CIMInstance& modifiedInstance,
00091 WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00092 const StringArray* propertyList,
00093 OperationContext& context);
00094 #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00095 virtual void setProperty(
00096 const String& ns,
00097 const CIMObjectPath &name,
00098 const String &propertyName, const CIMValue &cv,
00099 OperationContext& context);
00100 #endif // #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00101 virtual CIMInstance deleteInstance(const String& ns, const CIMObjectPath &cop,
00102 OperationContext& context);
00103 #endif // #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00104 virtual void enumInstances(
00105 const String& ns,
00106 const String& className,
00107 CIMInstanceResultHandlerIFC& result,
00108 WBEMFlags::EDeepFlag deep, WBEMFlags::ELocalOnlyFlag localOnly,
00109 WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00110 const StringArray *propertyList,
00111 WBEMFlags::EEnumSubclassesFlag enumSubclasses,
00112 OperationContext& context);
00113 #ifndef OW_DISABLE_SCHEMA_MANIPULATION
00114 virtual void createClass(const String& ns,
00115 const CIMClass &cimClass, OperationContext& context);
00116 virtual CIMClass modifyClass(const String &ns,
00117 const CIMClass &cc, OperationContext& context);
00118 virtual CIMClass deleteClass(const String& ns, const String& className,
00119 OperationContext& context);
00120 #endif
00121 virtual void enumClasses(const String& ns,
00122 const String& className,
00123 CIMClassResultHandlerIFC& result,
00124 WBEMFlags::EDeepFlag deep, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00125 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, OperationContext& context);
00126 virtual void enumClassNames(
00127 const String& ns,
00128 const String& className,
00129 StringResultHandlerIFC& result,
00130 WBEMFlags::EDeepFlag deep, OperationContext& context);
00131 virtual CIMValue invokeMethod(
00132 const String& ns,
00133 const CIMObjectPath& path,
00134 const String &methodName, const CIMParamValueArray &inParams,
00135 CIMParamValueArray &outParams, OperationContext& context);
00136 virtual void enumInstanceNames(
00137 const String& ns,
00138 const String& className,
00139 CIMObjectPathResultHandlerIFC& result,
00140 WBEMFlags::EDeepFlag deep, OperationContext& context);
00141 virtual CIMInstance getInstance(
00142 const String& ns,
00143 const CIMObjectPath& instanceName,
00144 WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00145 WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList,
00146 OperationContext& context);
00147 #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00148 virtual void references(
00149 const String& ns,
00150 const CIMObjectPath &path,
00151 CIMInstanceResultHandlerIFC& result,
00152 const String &resultClass, const String &role,
00153 WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00154 const StringArray *propertyList, OperationContext& context);
00155 virtual void referencesClasses(
00156 const String& ns,
00157 const CIMObjectPath &path,
00158 CIMClassResultHandlerIFC& result,
00159 const String &resultClass, const String &role,
00160 WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00161 const StringArray *propertyList, OperationContext& context);
00162 #endif
00163 #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00164 virtual CIMValue getProperty(
00165 const String& ns,
00166 const CIMObjectPath &name,
00167 const String &propertyName, OperationContext& context);
00168 #endif // #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00169 #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00170 virtual void associatorNames(
00171 const String& ns,
00172 const CIMObjectPath &path,
00173 CIMObjectPathResultHandlerIFC& result,
00174 const String &assocClass,
00175 const String &resultClass, const String &role,
00176 const String &resultRole, OperationContext& context);
00177 virtual void associators(
00178 const String& ns,
00179 const CIMObjectPath &path,
00180 CIMInstanceResultHandlerIFC& result,
00181 const String &assocClass, const String &resultClass,
00182 const String &role, const String &resultRole,
00183 WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00184 const StringArray *propertyList, OperationContext& context);
00185 virtual void associatorsClasses(
00186 const String& ns,
00187 const CIMObjectPath &path,
00188 CIMClassResultHandlerIFC& result,
00189 const String &assocClass, const String &resultClass,
00190 const String &role, const String &resultRole,
00191 WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00192 const StringArray *propertyList, OperationContext& context);
00193 virtual void referenceNames(
00194 const String& ns,
00195 const CIMObjectPath &path,
00196 CIMObjectPathResultHandlerIFC& result,
00197 const String &resultClass,
00198 const String &role, OperationContext& context);
00199 #endif // #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00200 virtual void execQuery(
00201 const String& ns,
00202 CIMInstanceResultHandlerIFC& result,
00203 const String &query, const String &queryLanguage,
00204 OperationContext& context);
00205
00206 virtual void beginOperation(WBEMFlags::EOperationFlag op, OperationContext& context);
00207 virtual void endOperation(WBEMFlags::EOperationFlag op, OperationContext& context, WBEMFlags::EOperationResultFlag result);
00208 private:
00209 SharedLibraryRepositoryIFCRef m_ref;
00210 };
00211
00212 }
00213
00214 #endif