OW_CIMOMHandleIFC.cpp

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 
00036 #include "OW_config.h"
00037 #include "OW_CIMOMHandleIFC.hpp"
00038 #include "OW_CIMFeatures.hpp"
00039 #include "OW_CIMInstance.hpp"
00040 #include "OW_CIMNameSpace.hpp"
00041 #include "OW_CIMException.hpp"
00042 #include "OW_CIMClassEnumeration.hpp"
00043 #include "OW_CIMObjectPathEnumeration.hpp"
00044 #include "OW_CIMQualifierEnumeration.hpp"
00045 #include "OW_CIMValue.hpp"
00046 #include "OW_Array.hpp"
00047 #include "OW_ResultHandlers.hpp"
00048 
00049 namespace OW_NAMESPACE
00050 {
00051 
00052 using namespace WBEMFlags;
00054 CIMOMHandleIFC::~CIMOMHandleIFC() 
00055 {
00056 }
00058 CIMFeatures
00059 CIMOMHandleIFC::getServerFeatures()
00060 {
00061    return CIMFeatures();
00062 }
00064 void
00065 CIMOMHandleIFC::exportIndication(const CIMInstance& instance,
00066       const String& instNS)
00067 {
00068    OW_THROWCIM(CIMException::FAILED);
00069 }
00071 CIMClassEnumeration
00072 CIMOMHandleIFC::enumClassE(const String& ns,
00073    const String& className, 
00074    EDeepFlag deep,
00075    ELocalOnlyFlag localOnly, EIncludeQualifiersFlag includeQualifiers, EIncludeClassOriginFlag includeClassOrigin)
00076 {
00077    CIMClassEnumeration rval;
00078    CIMClassEnumBuilder handler(rval);
00079    enumClass(ns, className, handler, deep, localOnly, includeQualifiers,
00080       includeClassOrigin);
00081    return rval;
00082 }
00084 CIMClassArray
00085 CIMOMHandleIFC::enumClassA(const String& ns,
00086    const String& className, 
00087    EDeepFlag deep,
00088    ELocalOnlyFlag localOnly, EIncludeQualifiersFlag includeQualifiers, EIncludeClassOriginFlag includeClassOrigin)
00089 {
00090    CIMClassArray rval;
00091    CIMClassArrayBuilder handler(rval);
00092    enumClass(ns, className, handler, deep, localOnly, includeQualifiers,
00093       includeClassOrigin);
00094    return rval;
00095 }
00097 StringEnumeration
00098 CIMOMHandleIFC::enumClassNamesE(
00099    const String& ns,
00100    const String& className,
00101    EDeepFlag deep)
00102 {
00103    StringEnumeration rval;
00104    StringEnumBuilder handler(rval);
00105    enumClassNames(ns, className, handler, deep);
00106    return rval;
00107 }
00109 StringArray
00110 CIMOMHandleIFC::enumClassNamesA(
00111    const String& ns,
00112    const String& className,
00113    EDeepFlag deep)
00114 {
00115    StringArray rval;
00116    StringArrayBuilder handler(rval);
00117    enumClassNames(ns, className, handler, deep);
00118    return rval;
00119 }
00121 CIMInstanceEnumeration
00122 CIMOMHandleIFC::enumInstancesE(
00123       const String& ns,
00124       const String& className,
00125       EDeepFlag deep,
00126       ELocalOnlyFlag localOnly,
00127       EIncludeQualifiersFlag includeQualifiers,
00128       EIncludeClassOriginFlag includeClassOrigin,
00129       const StringArray* propertyList)
00130 {
00131    CIMInstanceEnumeration rval;
00132    CIMInstanceEnumBuilder handler(rval);
00133    enumInstances(ns, className, handler,deep,localOnly,includeQualifiers,
00134       includeClassOrigin,propertyList);
00135    return rval;
00136 }
00138 CIMInstanceArray
00139 CIMOMHandleIFC::enumInstancesA(
00140       const String& ns,
00141       const String& className,
00142       EDeepFlag deep,
00143       ELocalOnlyFlag localOnly,
00144       EIncludeQualifiersFlag includeQualifiers,
00145       EIncludeClassOriginFlag includeClassOrigin,
00146       const StringArray* propertyList)
00147 {
00148    CIMInstanceArray rval;
00149    CIMInstanceArrayBuilder handler(rval);
00150    enumInstances(ns, className, handler,deep,localOnly,includeQualifiers,
00151       includeClassOrigin,propertyList);
00152    return rval;
00153 }
00155 CIMObjectPathEnumeration
00156 CIMOMHandleIFC::enumInstanceNamesE(
00157    const String& ns,
00158    const String& className)
00159 {
00160    CIMObjectPathEnumeration rval;
00161    CIMObjectPathEnumBuilder handler(rval);
00162    enumInstanceNames(ns, className, handler);
00163    return rval;
00164 }
00166 CIMObjectPathArray
00167 CIMOMHandleIFC::enumInstanceNamesA(
00168    const String& ns,
00169    const String& className)
00170 {
00171    CIMObjectPathArray rval;
00172    CIMObjectPathArrayBuilder handler(rval);
00173    enumInstanceNames(ns, className, handler);
00174    return rval;
00175 }
00176 #ifndef OW_DISABLE_QUALIFIER_DECLARATION
00177 
00178 CIMQualifierTypeEnumeration
00179 CIMOMHandleIFC::enumQualifierTypesE(
00180    const String& ns)
00181 {
00182    CIMQualifierTypeEnumeration rval;
00183    CIMQualifierTypeEnumBuilder handler(rval);
00184    enumQualifierTypes(ns, handler);
00185    return rval;
00186 }
00188 CIMQualifierTypeArray
00189 CIMOMHandleIFC::enumQualifierTypesA(
00190    const String& ns)
00191 {
00192    CIMQualifierTypeArray rval;
00193    CIMQualifierTypeArrayBuilder handler(rval);
00194    enumQualifierTypes(ns, handler);
00195    return rval;
00196 }
00197 #endif
00198 #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00199 
00200 CIMObjectPathEnumeration
00201 CIMOMHandleIFC::associatorNamesE(
00202       const String& ns,
00203       const CIMObjectPath& objectName,
00204       const String& assocClass,
00205       const String& resultClass,
00206       const String& role,
00207       const String& resultRole)
00208 {
00209    CIMObjectPathEnumeration rval;
00210    CIMObjectPathEnumBuilder handler(rval);
00211    associatorNames(ns,objectName,handler,assocClass,resultClass,role,resultRole);
00212    return rval;
00213 }
00215 CIMObjectPathArray
00216 CIMOMHandleIFC::associatorNamesA(
00217       const String& ns,
00218       const CIMObjectPath& objectName,
00219       const String& assocClass,
00220       const String& resultClass,
00221       const String& role,
00222       const String& resultRole)
00223 {
00224    CIMObjectPathArray rval;
00225    CIMObjectPathArrayBuilder handler(rval);
00226    associatorNames(ns,objectName,handler,assocClass,resultClass,role,resultRole);
00227    return rval;
00228 }
00230 CIMInstanceEnumeration
00231 CIMOMHandleIFC::associatorsE(
00232       const String& ns,
00233       const CIMObjectPath& path,
00234       const String& assocClass,
00235       const String& resultClass,
00236       const String& role,
00237       const String& resultRole,
00238       EIncludeQualifiersFlag includeQualifiers,
00239       EIncludeClassOriginFlag includeClassOrigin,
00240       const StringArray* propertyList)
00241 {
00242    CIMInstanceEnumeration rval;
00243    CIMInstanceEnumBuilder handler(rval);
00244    associators(ns, path, handler, assocClass, resultClass, role, resultRole,
00245       includeQualifiers, includeClassOrigin, propertyList); 
00246    return rval;
00247 }
00249 CIMInstanceArray
00250 CIMOMHandleIFC::associatorsA(
00251       const String& ns,
00252       const CIMObjectPath& path,
00253       const String& assocClass,
00254       const String& resultClass,
00255       const String& role,
00256       const String& resultRole,
00257       EIncludeQualifiersFlag includeQualifiers,
00258       EIncludeClassOriginFlag includeClassOrigin,
00259       const StringArray* propertyList)
00260 {
00261    CIMInstanceArray rval;
00262    CIMInstanceArrayBuilder handler(rval);
00263    associators(ns, path, handler, assocClass, resultClass, role, resultRole,
00264       includeQualifiers, includeClassOrigin, propertyList); 
00265    return rval;
00266 }
00268 CIMClassEnumeration
00269 CIMOMHandleIFC::associatorsClassesE(
00270       const String& ns,
00271       const CIMObjectPath& path,
00272       const String& assocClass,
00273       const String& resultClass,
00274       const String& role,
00275       const String& resultRole,
00276       EIncludeQualifiersFlag includeQualifiers,
00277       EIncludeClassOriginFlag includeClassOrigin,
00278       const StringArray* propertyList)
00279 {
00280    CIMClassEnumeration rval;
00281    CIMClassEnumBuilder handler(rval);
00282    associatorsClasses(ns, path, handler, assocClass, resultClass, role, resultRole,
00283       includeQualifiers, includeClassOrigin, propertyList); 
00284    return rval;
00285 }
00287 CIMClassArray
00288 CIMOMHandleIFC::associatorsClassesA(
00289       const String& ns,
00290       const CIMObjectPath& path,
00291       const String& assocClass,
00292       const String& resultClass,
00293       const String& role,
00294       const String& resultRole,
00295       EIncludeQualifiersFlag includeQualifiers,
00296       EIncludeClassOriginFlag includeClassOrigin,
00297       const StringArray* propertyList)
00298 {
00299    CIMClassArray rval;
00300    CIMClassArrayBuilder handler(rval);
00301    associatorsClasses(ns, path, handler, assocClass, resultClass, role, resultRole,
00302       includeQualifiers, includeClassOrigin, propertyList); 
00303    return rval;
00304 }
00306 CIMObjectPathEnumeration
00307 CIMOMHandleIFC::referenceNamesE(
00308    const String& ns,
00309       const CIMObjectPath& path,
00310       const String& resultClass,
00311       const String& role)
00312 {
00313    CIMObjectPathEnumeration rval;
00314    CIMObjectPathEnumBuilder handler(rval);
00315    referenceNames(ns,path,handler,resultClass,role);
00316    return rval;
00317 }
00319 CIMObjectPathArray
00320 CIMOMHandleIFC::referenceNamesA(
00321    const String& ns,
00322       const CIMObjectPath& path,
00323       const String& resultClass,
00324       const String& role)
00325 {
00326    CIMObjectPathArray rval;
00327    CIMObjectPathArrayBuilder handler(rval);
00328    referenceNames(ns,path,handler,resultClass,role);
00329    return rval;
00330 }
00332 CIMInstanceEnumeration
00333 CIMOMHandleIFC::referencesE(
00334       const String& ns,
00335       const CIMObjectPath& path,
00336       const String& resultClass,
00337       const String& role,
00338       EIncludeQualifiersFlag includeQualifiers,
00339       EIncludeClassOriginFlag includeClassOrigin,
00340       const StringArray* propertyList)
00341 {
00342    CIMInstanceEnumeration rval;
00343    CIMInstanceEnumBuilder handler(rval);
00344    references(ns, path, handler, resultClass, role,
00345       includeQualifiers, includeClassOrigin, propertyList); 
00346    return rval;
00347 }
00349 CIMInstanceArray
00350 CIMOMHandleIFC::referencesA(
00351       const String& ns,
00352       const CIMObjectPath& path,
00353       const String& resultClass,
00354       const String& role,
00355       EIncludeQualifiersFlag includeQualifiers,
00356       EIncludeClassOriginFlag includeClassOrigin,
00357       const StringArray* propertyList)
00358 {
00359    CIMInstanceArray rval;
00360    CIMInstanceArrayBuilder handler(rval);
00361    references(ns, path, handler, resultClass, role,
00362       includeQualifiers, includeClassOrigin, propertyList); 
00363    return rval;
00364 }
00366 CIMClassEnumeration
00367 CIMOMHandleIFC::referencesClassesE(
00368       const String& ns,
00369       const CIMObjectPath& path,
00370       const String& resultClass,
00371       const String& role,
00372       EIncludeQualifiersFlag includeQualifiers,
00373       EIncludeClassOriginFlag includeClassOrigin,
00374       const StringArray* propertyList)
00375 {
00376    CIMClassEnumeration rval;
00377    CIMClassEnumBuilder handler(rval);
00378    referencesClasses(ns, path, handler, resultClass, role,
00379       includeQualifiers, includeClassOrigin, propertyList); 
00380    return rval;
00381 }
00383 CIMClassArray
00384 CIMOMHandleIFC::referencesClassesA(
00385       const String& ns,
00386       const CIMObjectPath& path,
00387       const String& resultClass,
00388       const String& role,
00389       EIncludeQualifiersFlag includeQualifiers,
00390       EIncludeClassOriginFlag includeClassOrigin,
00391       const StringArray* propertyList)
00392 {
00393    CIMClassArray rval;
00394    CIMClassArrayBuilder handler(rval);
00395    referencesClasses(ns, path, handler, resultClass, role,
00396       includeQualifiers, includeClassOrigin, propertyList); 
00397    return rval;
00398 }
00399 #endif // #ifndef OW_DISABLE_ASSOCIATION_TRAVERSAL
00400 
00401 CIMInstanceEnumeration
00402 CIMOMHandleIFC::execQueryE(
00403    const String& ns,
00404    const String& query,
00405    const String& queryLanguage)
00406 {
00407    CIMInstanceEnumeration rval;
00408    CIMInstanceEnumBuilder handler(rval);
00409    execQuery(ns,handler,query,queryLanguage);
00410    return rval;
00411 }
00413 CIMInstanceArray
00414 CIMOMHandleIFC::execQueryA(
00415    const String& ns,
00416    const String& query,
00417    const String& queryLanguage)
00418 {
00419    CIMInstanceArray rval;
00420    CIMInstanceArrayBuilder handler(rval);
00421    execQuery(ns,handler,query,queryLanguage);
00422    return rval;
00423 }
00424 
00425 } // end namespace OW_NAMESPACE
00426 

Generated on Thu Feb 9 08:47:53 2006 for openwbem by  doxygen 1.4.6