OWBI1_CIMQualifierType.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 "OWBI1_config.h"
00037 #include "OWBI1_CIMQualifierType.hpp"
00038 #include "OWBI1_CIMQualifierTypeRep.hpp"
00039 #include "OWBI1_CIMName.hpp"
00040 #include "OWBI1_CIMNameRep.hpp"
00041 #include "OWBI1_CIMScope.hpp"
00042 #include "OWBI1_CIMScopeRep.hpp"
00043 #include "OWBI1_Array.hpp"
00044 #include "OWBI1_CIMDetail.hpp"
00045 #include "OWBI1_CIMDataType.hpp"
00046 #include "OWBI1_CIMDataTypeRep.hpp"
00047 #include "OWBI1_CIMValue.hpp"
00048 #include "OWBI1_CIMValueRep.hpp"
00049 #include "OWBI1_CIMFlavor.hpp"
00050 #include "OWBI1_CIMFlavorRep.hpp"
00051 
00052 
00053 namespace OWBI1
00054 {
00055 using namespace detail;
00056 using std::istream;
00057 using std::ostream;
00058 
00060 bool operator<(const CIMQualifierType& x, const CIMQualifierType& y)
00061 {
00062    return *x.getRep() < *y.getRep();
00063 }
00065 CIMQualifierType::CIMQualifierType() 
00066    : m_rep(new CIMQualifierTypeRep(OpenWBEM::CIMQualifierType()))
00067 {
00068 }
00070 CIMQualifierType::CIMQualifierType(CIMNULL_t) 
00071    : m_rep(new CIMQualifierTypeRep(OpenWBEM::CIMQualifierType(OpenWBEM::CIMNULL)))
00072 {
00073 }
00075 CIMQualifierType::CIMQualifierType(const CIMName& name)
00076    : m_rep(new CIMQualifierTypeRep(OpenWBEM::CIMQualifierType(name.getRep()->name)))
00077 {
00078 }
00080 CIMQualifierType::CIMQualifierType(const char* name)
00081    : m_rep(new CIMQualifierTypeRep(OpenWBEM::CIMQualifierType(name)))
00082 {
00083 }
00084 
00086 CIMQualifierType::CIMQualifierType(const CIMQualifierTypeRepRef& rep)
00087    : m_rep(rep)
00088 {
00089 }
00090 
00092 CIMQualifierType::CIMQualifierType(const CIMQualifierType& x) 
00093    : CIMElement(x)
00094    , m_rep(x.m_rep)
00095 {
00096 }
00098 CIMQualifierType::~CIMQualifierType()
00099 {
00100 }
00102 CIMQualifierType&
00103 CIMQualifierType::operator= (const CIMQualifierType& x)
00104 {
00105    m_rep = x.m_rep;
00106    return *this;
00107 }
00109 void
00110 CIMQualifierType::setNull()
00111 {
00112    m_rep->qualtype.setNull();
00113 }
00115 CIMScopeArray
00116 CIMQualifierType::getScopes() const
00117 {
00118    return wrapArray<CIMScopeArray>(m_rep->qualtype.getScope());
00119 }
00121 CIMDataType
00122 CIMQualifierType::getDataType() const
00123 {
00124    return CIMDataType(new CIMDataTypeRep(m_rep->qualtype.getDataType()));
00125 }
00127 Int32
00128 CIMQualifierType::getDataSize() const
00129 {
00130    return m_rep->qualtype.getDataSize();
00131 }
00133 CIMValue
00134 CIMQualifierType::getDefaultValue() const
00135 {
00136    return CIMValue(CIMValueRepRef(new CIMValueRep(m_rep->qualtype.getDefaultValue())));
00137 }
00139 CIMQualifierType&
00140 CIMQualifierType::setDataType(const CIMDataType& dataType)
00141 {
00142    m_rep->qualtype.setDataType(dataType.getRep()->datatype);
00143    return *this;
00144 }
00146 CIMQualifierType&
00147 CIMQualifierType::setDataType(const CIMDataType::Type& dataType)
00148 {
00149    return setDataType(CIMDataType(dataType));
00150 }
00152 CIMQualifierType&
00153 CIMQualifierType::setDefaultValue(const CIMValue& defValue)
00154 {
00155    m_rep->qualtype.setDefaultValue(defValue.getRep()->value);
00156    return *this;
00157 }
00159 CIMQualifierType&
00160 CIMQualifierType::addScope(const CIMScope& newScope)
00161 {
00162    m_rep->qualtype.addScope(newScope.getRep()->scope);
00163    return *this;
00164 }
00166 bool
00167 CIMQualifierType::hasScope(const CIMScope& scopeArg) const
00168 {
00169    return m_rep->qualtype.hasScope(scopeArg.getRep()->scope);
00170 }
00172 bool
00173 CIMQualifierType::hasFlavor(const CIMFlavor& flavorArg) const
00174 {
00175    return m_rep->qualtype.hasFlavor(flavorArg.getRep()->flavor);
00176 }
00178 CIMQualifierType&
00179 CIMQualifierType::addFlavor(const CIMFlavor& newFlavor)
00180 {
00181    m_rep->qualtype.addFlavor(newFlavor.getRep()->flavor);
00182    return *this;
00183 }
00185 CIMQualifierType&
00186 CIMQualifierType::removeFlavor(const Int32 flavor)
00187 {
00188    m_rep->qualtype.removeFlavor(flavor);
00189    return *this;
00190 }
00192 CIMFlavorArray
00193 CIMQualifierType::getFlavors() const
00194 {
00195    return wrapArray<CIMFlavorArray>(m_rep->qualtype.getFlavors());
00196 }
00198 bool
00199 CIMQualifierType::hasDefaultValue() const
00200 {
00201    return m_rep->qualtype.hasDefaultValue();
00202 }
00204 bool
00205 CIMQualifierType::isDefaultValueArray() const
00206 {
00207    return m_rep->qualtype.isDefaultValueArray();
00208 }
00210 CIMName
00211 CIMQualifierType::getName() const
00212 {
00213    return CIMName(new CIMNameRep(m_rep->qualtype.getName()));
00214 }
00216 void
00217 CIMQualifierType::setName(const CIMName& name)
00218 {
00219    m_rep->qualtype.setName(name.getRep()->name);
00220 }
00222 void
00223 CIMQualifierType::writeObject(ostream &ostrm) const
00224 {
00225    m_rep->qualtype.writeObject(ostrm);
00226 }
00228 void
00229 CIMQualifierType::readObject(istream &istrm)
00230 {
00231    m_rep->qualtype.readObject(istrm);
00232 }
00234 String
00235 CIMQualifierType::toString() const
00236 {
00237    return toMOF();
00238 }
00240 String
00241 CIMQualifierType::toMOF() const
00242 {
00243    return m_rep->qualtype.toMOF().c_str();
00244 }
00245 
00247 CIMQualifierType::operator safe_bool () const
00248 {  
00249    return m_rep->qualtype ? &CIMQualifierType::m_rep : 0; 
00250 }
00251 
00253 bool
00254 CIMQualifierType::operator!() const
00255 {  
00256    return !m_rep->qualtype; 
00257 }
00258 
00260 detail::CIMQualifierTypeRepRef
00261 CIMQualifierType::getRep() const
00262 {
00263    return m_rep;
00264 }
00265 
00266 } // end namespace OWBI1
00267 

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