OW_WQLFilterRep.hpp

Go to the documentation of this file.
00001 /*******************************************************************************
00002 * Copyright (C) 2001-2004 Vintela, Inc. All rights reserved.
00003 *
00004 * Redistribution and use in source and binary forms, with or without
00005 * modification, are permitted provided that the following conditions are met:
00006 *
00007 *  - Redistributions of source code must retain the above copyright notice,
00008 *    this list of conditions and the following disclaimer.
00009 *
00010 *  - Redistributions in binary form must reproduce the above copyright notice,
00011 *    this list of conditions and the following disclaimer in the documentation
00012 *    and/or other materials provided with the distribution.
00013 *
00014 *  - Neither the name of Vintela, Inc. nor the names of its
00015 *    contributors may be used to endorse or promote products derived from this
00016 *    software without specific prior written permission.
00017 *
00018 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
00019 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00020 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00021 * ARE DISCLAIMED. IN NO EVENT SHALL Vintela, Inc. OR THE CONTRIBUTORS
00022 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
00023 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
00024 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00025 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
00026 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
00027 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00028 * POSSIBILITY OF SUCH DAMAGE.
00029 *******************************************************************************/
00030 
00035 #ifndef OW_WQLFILTERREP_HPP_INCLUDE_GUARD_
00036 #define OW_WQLFILTERREP_HPP_INCLUDE_GUARD_
00037 #include "OW_config.h"
00038 #include "OW_RepositoryIFC.hpp"
00039 #include "OW_CIMFwd.hpp"
00040 #include "OW_CIMInstance.hpp"
00041 #include "OW_CimomCommonFwd.hpp"
00042 
00043 namespace OW_NAMESPACE
00044 {
00045 
00046 class OW_CIMOMCOMMON_API WQLFilterRep : public RepositoryIFC
00047 {
00048 public:
00049    WQLFilterRep(const CIMInstance& inst, const RepositoryIFCRef& cimServer);
00054    virtual void open(const String &/*path*/) {}
00058    virtual void close() {}
00059    virtual String getName() const;
00060    virtual void init(const ServiceEnvironmentIFCRef& env) {}
00061    virtual void shutdown() {}
00065    virtual ServiceEnvironmentIFCRef getEnvironment() const;
00073    virtual void enumNameSpace(StringResultHandlerIFC& result,
00074       OperationContext& context);
00075 #if !defined(OW_DISABLE_INSTANCE_MANIPULATION) && !defined(OW_DISABLE_NAMESPACE_MANIPULATION)
00076 
00081    virtual void createNameSpace(const String& ns,
00082       OperationContext& context);
00089    virtual void deleteNameSpace(const String& ns,
00090       OperationContext& context);
00091 #endif // #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00092 
00101    virtual CIMQualifierType getQualifierType(
00102       const String& ns,
00103       const String& qualifierName, OperationContext& context);
00104 #ifndef OW_DISABLE_QUALIFIER_DECLARATION
00105 
00114    virtual void setQualifierType(const String& ns,
00115       const CIMQualifierType &qt, OperationContext& context);
00123    virtual void enumQualifierTypes(
00124       const String& ns,
00125       CIMQualifierTypeResultHandlerIFC& result, OperationContext& context);
00132    virtual void deleteQualifierType(const String& ns, const String& qualName,
00133       OperationContext& context);
00134 #endif // #ifndef OW_DISABLE_QUALIFIER_DECLARATION
00135 #ifndef OW_DISABLE_SCHEMA_MANIPULATION
00136 
00147    virtual void createClass(const String& ns, const CIMClass &cimClass,
00148       OperationContext& context);
00160    virtual CIMClass modifyClass(const String &ns,
00161       const CIMClass &cc, OperationContext& context);
00172    virtual CIMClass deleteClass(const String& ns, const String& className,
00173       OperationContext& context);
00174 #endif // #ifndef OW_DISABLE_SCHEMA_MANIPULATION
00175 
00195    virtual CIMClass getClass(
00196       const String& ns,
00197       const String& className,
00198       WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00199       WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray* propertyList,
00200       OperationContext& context);
00220    virtual CIMInstance getInstance(
00221       const String& ns,
00222       const CIMObjectPath& instanceName,
00223       WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00224       WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray* propertyList,
00225       OperationContext& context);
00243    virtual void enumClasses(const String& ns,
00244       const String& className,
00245       CIMClassResultHandlerIFC& result,
00246       WBEMFlags::EDeepFlag deep, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00247       WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, OperationContext& context);
00261    virtual void enumClassNames(
00262       const String& ns,
00263       const String& className,
00264       StringResultHandlerIFC& result,
00265       WBEMFlags::EDeepFlag deep, OperationContext& context);
00291    virtual void enumInstances(
00292       const String& ns,
00293       const String& className,
00294       CIMInstanceResultHandlerIFC& result,
00295       WBEMFlags::EDeepFlag deep, WBEMFlags::ELocalOnlyFlag localOnly,
00296       WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00297       const StringArray* propertyList,
00298       WBEMFlags::EEnumSubclassesFlag enumSubclasses,
00299       OperationContext& context);
00316    virtual void enumInstanceNames(
00317       const String& ns,
00318       const String& className,
00319       CIMObjectPathResultHandlerIFC& result,
00320       WBEMFlags::EDeepFlag deep, OperationContext& context);
00321 #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00322 
00332    virtual CIMObjectPath createInstance(const String& ns,
00333       const CIMInstance &ci,
00334       OperationContext& context);
00348    virtual CIMInstance modifyInstance(
00349       const String& ns,
00350       const CIMInstance& modifiedInstance,
00351       WBEMFlags::EIncludeQualifiersFlag includeQualifiers,
00352       const StringArray* propertyList,
00353       OperationContext& context);
00365    virtual CIMInstance deleteInstance(const String& ns, const CIMObjectPath &cop,
00366       OperationContext& context);
00367 #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00368 
00376    virtual void setProperty(
00377       const String& ns,
00378       const CIMObjectPath &name,
00379       const String &propertyName, const CIMValue &cv,
00380       OperationContext& context);
00381 #endif // #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00382 #endif // #ifndef OW_DISABLE_INSTANCE_MANIPULATION
00383 #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00384 
00393    virtual CIMValue getProperty(
00394       const String& ns,
00395       const CIMObjectPath &name,
00396       const String &propertyName, OperationContext& context);
00397 #endif // #if !defined(OW_DISABLE_PROPERTY_OPERATIONS)
00398 
00411    virtual CIMValue invokeMethod(
00412       const String& ns,
00413       const CIMObjectPath& path,
00414       const String &methodName, const CIMParamValueArray &inParams,
00415       CIMParamValueArray &outParams, OperationContext& context);
00416 #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00417    virtual void associators(
00418       const String& ns,
00419       const CIMObjectPath &path,
00420       CIMInstanceResultHandlerIFC& result,
00421       const String &assocClass, const String &resultClass,
00422       const String &role, const String &resultRole,
00423       WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00424       const StringArray *propertyList, OperationContext& context);
00425    virtual void associatorsClasses(
00426       const String& ns,
00427       const CIMObjectPath &path,
00428       CIMClassResultHandlerIFC& result,
00429       const String &assocClass, const String &resultClass,
00430       const String &role, const String &resultRole,
00431       WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00432       const StringArray *propertyList, OperationContext& context);
00433    virtual void referenceNames(
00434       const String& ns,
00435       const CIMObjectPath &path,
00436       CIMObjectPathResultHandlerIFC& result,
00437       const String &resultClass,
00438       const String &role, OperationContext& context);
00439    virtual void associatorNames(
00440       const String& ns,
00441       const CIMObjectPath &path,
00442       CIMObjectPathResultHandlerIFC& result,
00443       const String &assocClass,
00444       const String &resultClass, const String &role,
00445       const String &resultRole, OperationContext& context);
00446    virtual void references(
00447       const String& ns,
00448       const CIMObjectPath &path,
00449       CIMInstanceResultHandlerIFC& result,
00450       const String &resultClass, const String &role,
00451       WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00452       const StringArray *propertyList, OperationContext& context);
00453    virtual void referencesClasses(
00454       const String& ns,
00455       const CIMObjectPath &path,
00456       CIMClassResultHandlerIFC& result,
00457       const String &resultClass, const String &role,
00458       WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin,
00459       const StringArray *propertyList, OperationContext& context);
00460 #endif // #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00461    virtual void execQuery(
00462       const String& ns,
00463       CIMInstanceResultHandlerIFC& result,
00464       const String &query, const String &queryLanguage,
00465       OperationContext& context);
00466    
00467    virtual void beginOperation(WBEMFlags::EOperationFlag op, OperationContext& context);
00468    virtual void endOperation(WBEMFlags::EOperationFlag op, OperationContext& context, WBEMFlags::EOperationResultFlag result);
00469 private:
00470    CIMInstance m_inst;
00471    RepositoryIFCRef m_pCIMServer;
00472 };
00473 
00474 } // end namespace OW_NAMESPACE
00475 
00476 #endif

Generated on Thu Feb 9 08:48:17 2006 for openwbem by  doxygen 1.4.6