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

Diff for /pegasus/src/Pegasus/Common/CIMObjectPath.cpp between version 1.19 and 1.20

version 1.19, 2002/09/18 21:38:06 version 1.20, 2002/09/20 16:48:11
Line 184 
Line 184 
     _rep = new CIMKeyBindingRep(name, value, type);     _rep = new CIMKeyBindingRep(name, value, type);
 } }
  
 #ifdef PEGASUS_FUTURE  
 CIMKeyBinding::CIMKeyBinding(const CIMName& name, const CIMValue& value) CIMKeyBinding::CIMKeyBinding(const CIMName& name, const CIMValue& value)
 { {
       // ATTN-RK-20020920: Verify that real numbers cannot be keys
       if (value.isArray() ||
           (value.getType() == CIMTYPE_REAL32) ||
           (value.getType() == CIMTYPE_REAL64))
       {
           throw TypeMismatchException();
       }
   
     String kbValue = value.toString();     String kbValue = value.toString();
     Type kbType;     Type kbType;
  
Line 210 
Line 217 
  
     _rep = new CIMKeyBindingRep(name, kbValue, kbType);     _rep = new CIMKeyBindingRep(name, kbValue, kbType);
 } }
 #endif  
  
 CIMKeyBinding::~CIMKeyBinding() CIMKeyBinding::~CIMKeyBinding()
 { {
Line 253 
Line 259 
     _rep->_type = type;     _rep->_type = type;
 } }
  
 #ifdef PEGASUS_FUTURE  
 Boolean CIMKeyBinding::equal(CIMValue value) Boolean CIMKeyBinding::equal(CIMValue value)
 { {
       // ATTN-RK-20020920: Verify that real numbers cannot be keys
       if (value.isArray() ||
           (value.getType() == CIMTYPE_REAL32) ||
           (value.getType() == CIMTYPE_REAL64))
       {
           return false;
       }
   
     CIMValue kbValue;     CIMValue kbValue;
  
     try     try
Line 263 
Line 276 
         switch (value.getType())         switch (value.getType())
         {         {
         case CIMTYPE_CHAR16:         case CIMTYPE_CHAR16:
               if (getType() != STRING) return false;
             kbValue.set(getValue()[0]);             kbValue.set(getValue()[0]);
             break;             break;
         case CIMTYPE_DATETIME:         case CIMTYPE_DATETIME:
               if (getType() != STRING) return false;
             kbValue.set(CIMDateTime(getValue()));             kbValue.set(CIMDateTime(getValue()));
             break;             break;
         case CIMTYPE_STRING:         case CIMTYPE_STRING:
               if (getType() != STRING) return false;
             kbValue.set(getValue());             kbValue.set(getValue());
             break;             break;
         case CIMTYPE_REFERENCE:         case CIMTYPE_REFERENCE:
               if (getType() != REFERENCE) return false;
             kbValue.set(CIMObjectPath(getValue()));             kbValue.set(CIMObjectPath(getValue()));
             break;             break;
         default:  // Boolean and numerics          case CIMTYPE_BOOLEAN:
               if (getType() != BOOLEAN) return false;
               kbValue = XmlReader::stringToValue(0, getValue().getCString(),
                                                  value.getType());
               break;
           default:  // Numerics
               if (getType() != NUMERIC) return false;
             kbValue = XmlReader::stringToValue(0, getValue().getCString(),             kbValue = XmlReader::stringToValue(0, getValue().getCString(),
                                                value.getType());                                                value.getType());
             break;             break;
Line 287 
Line 310 
  
     return value.equal(kbValue);     return value.equal(kbValue);
 } }
 #endif  
  
 Boolean operator==(const CIMKeyBinding& x, const CIMKeyBinding& y) Boolean operator==(const CIMKeyBinding& x, const CIMKeyBinding& y)
 { {


Legend:
Removed from v.1.19  
changed lines
  Added in v.1.20

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2