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

Diff for /pegasus/src/Pegasus/Common/CIMQualifierList.cpp between version 1.55 and 1.56

version 1.55, 2006/01/30 16:16:47 version 1.56, 2006/05/02 20:26:58
Line 182 
Line 182 
                 if (!(q.getType() == qd.getType() && q.isArray() == qd.isArray()))                 if (!(q.getType() == qd.getType() && q.isArray() == qd.isArray()))
                         throw BadQualifierType(q.getName().getString ());                         throw BadQualifierType(q.getName().getString ());
  
   #ifdef PEGASUS_EMBEDDED_INSTANCE_SUPPORT
                 //----------------------------------------------------------------------                 //----------------------------------------------------------------------
                 // 3. Check the scope: Must be legal for this qualifier          // 3. If the qualifier is the EmbeddedInstance qualifier, then check
           // that the class specified by the qualifier exists in the namespace.
           //----------------------------------------------------------------------
           if(q.getName().equal(CIMName("EmbeddedInstance")))
           {
               String className;
               q.getValue().get(className);
               CIMClass classDef = declContext->lookupClass(nameSpace,
                       CIMName(className));
               if(classDef.isUninitialized())
               {
                   String embeddedInstType("EmbeddedInstance(\"");
                   embeddedInstType = embeddedInstType + className + "\")";
                   throw BadQualifierType(embeddedInstType);
               }
           }
   #endif // PEGASUS_EMBEDDED_INSTANCE_SUPPORT
   
           //----------------------------------------------------------------------
           // 4. Check the scope: Must be legal for this qualifier
                 //----------------------------------------------------------------------                 //----------------------------------------------------------------------
 //#if 0 //#if 0
                         // ATTN:  These lines throw a bogus exception if the qualifier has                         // ATTN:  These lines throw a bogus exception if the qualifier has
Line 253 
Line 273 
                         }                         }
                         //cout <<  qd.getFlavor() << endl;*/                         //cout <<  qd.getFlavor() << endl;*/
                         // Do not allow change from disable override to enable override.                         // Do not allow change from disable override to enable override.
                         if ((!qd.getFlavor ().hasFlavor              if ((!qd.getFlavor ().hasFlavor(CIMFlavor::OVERRIDABLE))
                                (CIMFlavor::OVERRIDABLE))                    && (q.getFlavor ().hasFlavor(CIMFlavor::OVERRIDABLE)))
                            && (q.getFlavor ().hasFlavor                  throw BadQualifierOverride(q.getName().getString ());
                                (CIMFlavor::OVERRIDABLE)))  
                                 throw BadQualifierOverride  
                                     (q.getName().getString ());  
  
                         Resolver::resolveQualifierFlavor                         Resolver::resolveQualifierFlavor
                             (q, CIMFlavor (qd.getFlavor ()), false);                             (q, CIMFlavor (qd.getFlavor ()), false);
Line 278 
Line 295 
                 {       ////// Make Const again                 {       ////// Make Const again
                         CIMQualifier iq = inheritedQualifiers.getQualifier(index);                         CIMQualifier iq = inheritedQualifiers.getQualifier(index);
                         // don't allow change override to notoverride.                         // don't allow change override to notoverride.
                         if (!(iq.getFlavor ().hasFlavor              if (!(iq.getFlavor ().hasFlavor(CIMFlavor::OVERRIDABLE))
                                (CIMFlavor::OVERRIDABLE))  
                            && q.getFlavor ().hasFlavor (CIMFlavor::OVERRIDABLE))                            && q.getFlavor ().hasFlavor (CIMFlavor::OVERRIDABLE))
                                 throw BadQualifierOverride                  throw BadQualifierOverride(q.getName().getString ());
                                     (q.getName().getString ());  
  
                         if (!(iq.getFlavor ().hasFlavor              if (!(iq.getFlavor ().hasFlavor(CIMFlavor::OVERRIDABLE))
                                (CIMFlavor::OVERRIDABLE))                    && iq.getFlavor ().hasFlavor(CIMFlavor::TOSUBCLASS))
                             && iq.getFlavor ().hasFlavor  
                                (CIMFlavor::TOSUBCLASS))  
                         {                         {
                                 /*if(!(q.getValue() == iq.getvalue()))                                 /*if(!(q.getValue() == iq.getvalue()))
                                         cout << "KSTEST QL err inherit " << q.getName()                                         cout << "KSTEST QL err inherit " << q.getName()
Line 301 
Line 314 
                                 CIMValue qv = q.getValue();                                 CIMValue qv = q.getValue();
                                 CIMValue iqv = iq.getValue();                                 CIMValue iqv = iq.getValue();
                                 if(!(qv == iqv)) {                                 if(!(qv == iqv)) {
                                         throw BadQualifierOverride                      throw BadQualifierOverride(q.getName().getString());
                                             (q.getName().getString ());  
                           }                           }
                         }                         }
                         //cout << iq.getFlavor()  << endl;                         //cout << iq.getFlavor()  << endl;


Legend:
Removed from v.1.55  
changed lines
  Added in v.1.56

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2