(file) Return to CIMParamValueRep.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

  1 mike  1.2 //%/////////////////////////////////////////////////////////////////////////////
  2           //
  3           // Copyright (c) 2000, 2001 BMC Software, Hewlett-Packard Company, IBM,
  4           // The Open Group, Tivoli Systems
  5           //
  6           // Permission is hereby granted, free of charge, to any person obtaining a copy
  7           // of this software and associated documentation files (the "Software"), to 
  8           // deal in the Software without restriction, including without limitation the 
  9           // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or 
 10           // sell copies of the Software, and to permit persons to whom the Software is
 11           // furnished to do so, subject to the following conditions:
 12           // 
 13           // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN 
 14           // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 15           // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 16           // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 
 17           // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 
 18           // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 
 19           // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 20           // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 21           //
 22 mike  1.2 //==============================================================================
 23           //
 24           // Author: Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com)
 25           //
 26 kumpf 1.4 // Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
 27 mike  1.2 //
 28           //%/////////////////////////////////////////////////////////////////////////////
 29           
 30 sage  1.3 #include <Pegasus/Common/Config.h>
 31 mike  1.2 #include <cstdio>
 32 kumpf 1.4 #include "XmlWriter.h"
 33 mike  1.2 #include "CIMParamValue.h"
 34           
 35           PEGASUS_NAMESPACE_BEGIN
 36           
 37           CIMParamValueRep::CIMParamValueRep(
 38 kumpf 1.6     String parameterName,
 39               CIMValue value,
 40               Boolean isTyped)
 41               : _parameterName(parameterName), _value(value), _isTyped(isTyped)
 42 mike  1.2 {
 43           }
 44           
 45           CIMParamValueRep::~CIMParamValueRep()
 46           {
 47           
 48           }
 49           
 50 kumpf 1.4 //------------------------------------------------------------------------------
 51           //
 52           //     <!ELEMENT PARAMVALUE (VALUE|VALUE.REFERENCE|VALUE.ARRAY|VALUE.REFARRAY)?>
 53           //     <!ATTLIST PARAMVALUE
 54           //         %CIMName;
 55           //         %ParamType;>
 56           //
 57           //------------------------------------------------------------------------------
 58 mike  1.2 void CIMParamValueRep::toXml(Array<Sint8>& out) const
 59           {
 60 kumpf 1.6     out << "<PARAMVALUE NAME=\"" << _parameterName << "\"";
 61 mike  1.2 
 62 kumpf 1.4     CIMType type = _value.getType();
 63 mike  1.2 
 64 kumpf 1.6     if (_isTyped && (type != CIMType::NONE))
 65 mike  1.2     {
 66 kumpf 1.4         out << " PARAMTYPE=\"" << TypeToString(type) << "\"";
 67 mike  1.2     }
 68           
 69 kumpf 1.4     out << ">\n";
 70 karl  1.7     /*KSTEST*/
 71               _value.toXml(out, false);
 72 mike  1.2 
 73 kumpf 1.4     out << "</PARAMVALUE>\n";
 74 mike  1.2 }
 75           
 76           void CIMParamValueRep::print(PEGASUS_STD(ostream) &os) const 
 77           {
 78               Array<Sint8> tmp;
 79               toXml(tmp);
 80               tmp.append('\0');
 81               os << tmp.getData() << PEGASUS_STD(endl);
 82           }
 83           
 84           Boolean CIMParamValueRep::identical(const CIMParamValueRep* x) const
 85           {
 86 kumpf 1.6     if (_parameterName != x->_parameterName)
 87 mike  1.2 	return false;
 88           
 89               if (_value != x->_value)
 90           	return false;
 91           
 92 kumpf 1.6     if (_isTyped != x->_isTyped)
 93           	return false;
 94           
 95 mike  1.2     return true;
 96           }
 97           
 98           CIMParamValueRep::CIMParamValueRep()
 99           {
100           
101           }
102           
103           CIMParamValueRep::CIMParamValueRep(const CIMParamValueRep& x) :
104               Sharable(),
105 kumpf 1.6     _parameterName(x._parameterName),
106               _value(x._value),
107               _isTyped(x._isTyped)
108 mike  1.2 {
109           }
110           
111 kumpf 1.4 // ATTN-RK-P3-20010219: Is this correct?  (See also CIMMethodRep.cpp,
112           // CIMParameterRep.cpp, CIMPropertyRep.cpp, CIMQualifierDeclRep.cpp,
113           // CIMQualifierRep.cpp)
114 mike  1.2 CIMParamValueRep& CIMParamValueRep::operator=(const CIMParamValueRep& x) 
115           { 
116               return *this; 
117           }
118           
119 kumpf 1.6 void CIMParamValueRep::setParameterName(String& parameterName)
120 mike  1.2 { 
121 kumpf 1.6     _parameterName = parameterName;
122 mike  1.2 }
123           
124 kumpf 1.5 void CIMParamValueRep::setValue(CIMValue& value)
125 mike  1.2 { 
126               _value = value;
127 kumpf 1.6 }
128           
129           void CIMParamValueRep::setIsTyped(Boolean isTyped)
130           { 
131               _isTyped = isTyped;
132 mike  1.2 }
133           
134           PEGASUS_NAMESPACE_END

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2