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

Diff for /pegasus/src/Pegasus/Common/CIMObject.h between version 1.12 and 1.18

version 1.12, 2002/01/09 19:09:39 version 1.18, 2002/05/03 05:16:16
Line 30 
Line 30 
 #define Pegasus_Object_h #define Pegasus_Object_h
  
 #include <Pegasus/Common/Config.h> #include <Pegasus/Common/Config.h>
 #include <Pegasus/Common/CIMObjectRep.h>  #include <Pegasus/Common/String.h>
   #include <Pegasus/Common/Array.h>
   #include <Pegasus/Common/CIMProperty.h>
   #include <Pegasus/Common/CIMQualifier.h>
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
   class CIMConstObject;
   class CIMObjectRep;
 class CIMClass; class CIMClass;
 class CIMConstClass; class CIMConstClass;
 class CIMInstance; class CIMInstance;
Line 45 
Line 50 
 // //
 //////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
  
 class CIMConstObject;  
 class CIMObject;  
   
 /** This class either refers to a CIMInstance or a CIMClass. /** This class either refers to a CIMInstance or a CIMClass.
  
     The CIMObjectRep data member points to either a CIMInstanceRep or     The CIMObjectRep data member points to either a CIMInstanceRep or
Line 59 
Line 61 
  
     /** Constructor.     /** Constructor.
     */     */
     CIMObject() : _rep(0)      CIMObject();
     {  
   
     }  
  
     /** Copy constructor.     /** Copy constructor.
     */     */
     CIMObject(const CIMObject& x)      CIMObject(const CIMObject& x);
     {  
         Inc(_rep = x._rep);  
     }  
  
     /** Construction from CIMClass.     /** Construction from CIMClass.
     */     */
Line 81 
Line 77 
  
     /** Assignment operator.     /** Assignment operator.
     */     */
     CIMObject& operator=(const CIMObject& x)      CIMObject& operator=(const CIMObject& x);
     {  
         if (x._rep != _rep)  
         {  
             Dec(_rep);  
             Inc(_rep = x._rep);  
         }  
         return *this;  
     }  
  
     /** Assignment operator.     /** Assignment operator.
     */     */
Line 101 
Line 89 
  
     /** Destructor.     /** Destructor.
     */     */
     ~CIMObject()      ~CIMObject();
     {  
         Dec(_rep);  
     }  
  
     /** Accessor.      /** Accessor for ClassName component of the object.
           @return - Returns the ClassName of the object in
           a String parameter.
           <pre>
               String className;
               CIMClass myclass("myclass", "superclass");
               className = myclass.getClassName;
           </pre>
       */
       const String& getClassName() const;
   
       /** equalClassName Compares ClassName with a String. This test performs
           a comparison of the classname component of the object
           with a String.  Note that this function was included specifically
           because the equality compare is not just a straight comparison
           because classnames are case independent.
           @param classname String containing the name for comparison
           @return True if it is the same class name (equalNoCase compare passes)
           or false if not.
     */     */
     const String& getClassName() const      const Boolean equalClassName(const String& classname) const;
     {  
         _checkRep();  
         return _rep->getClassName();  
     }  
  
     const CIMReference& getPath() const      const CIMReference& getPath() const;
     {  
         _checkRep();  
         return _rep->getPath();  
     }  
  
     /** addQualifier - Adds the CIMQualifier object to the instance.     /** addQualifier - Adds the CIMQualifier object to the instance.
         Thows an exception of the CIMQualifier already exists in the instance         Thows an exception of the CIMQualifier already exists in the instance
Line 126 
Line 121 
         @return ATTN:         @return ATTN:
         @exception Throws AlreadyExists.         @exception Throws AlreadyExists.
     */     */
     CIMObject& addQualifier(const CIMQualifier& qualifier)      CIMObject& addQualifier(const CIMQualifier& qualifier);
     {  
         _checkRep();  
         _rep->addQualifier(qualifier);  
         return *this;  
     }  
  
     /** findQualifier - Searches the instance for the qualifier object     /** findQualifier - Searches the instance for the qualifier object
         defined by the input parameter.         defined by the input parameter.
Line 139 
Line 129 
         @return - Position of the qualifier to be used in subsequent         @return - Position of the qualifier to be used in subsequent
         operations or PEG_NOT_FOUND if the qualifier is not found.         operations or PEG_NOT_FOUND if the qualifier is not found.
     */     */
     Uint32 findQualifier(const String& name)      Uint32 findQualifier(const String& name) const;
     {  
         _checkRep();  
         return _rep->findQualifier(name);  
     }  
   
     Uint32 findQualifier(const String& name) const  
     {  
         _checkRep();  
         return _rep->findQualifier(name);  
     }  
  
     /** existsQualifier - Searches the instance for the qualifier object     /** existsQualifier - Searches the instance for the qualifier object
         defined by the input parameter.         defined by the input parameter.
Line 157 
Line 137 
         @return - Returns True if  the qualifier object exists or false         @return - Returns True if  the qualifier object exists or false
         if the qualifier is not found.         if the qualifier is not found.
     */     */
     Boolean existsQualifier(const String& name)      Boolean existsQualifier(const String& name) const;
     {  
         _checkRep();  
         return _rep->existsQualifier(name);  
     }  
   
     Boolean existsQualifier(const String& name) const  
     {  
         _checkRep();  
         return _rep->existsQualifier(name);  
     }  
  
     /** getQualifier - Retrieves the qualifier object defined by the     /** getQualifier - Retrieves the qualifier object defined by the
         index input parameter.  @ index for the qualifier object.         index input parameter.  @ index for the qualifier object.
Line 178 
Line 148 
         @exception Throws the OutOfBounds exception if the index         @exception Throws the OutOfBounds exception if the index
         is out of bounds         is out of bounds
     */     */
     CIMQualifier getQualifier(Uint32 pos)      CIMQualifier getQualifier(Uint32 pos);
     {  
         _checkRep();  
         return _rep->getQualifier(pos);  
     }  
  
     /** getQualifier - Retrieves the qualifier object defined by the     /** getQualifier - Retrieves the qualifier object defined by the
         index input parameter.  @ index for the qualifier object.         index input parameter.  @ index for the qualifier object.
Line 195 
Line 161 
         ATTN: What is effect of out of range index???         ATTN: What is effect of out of range index???
         ATTN: Is the above statement correct???         ATTN: Is the above statement correct???
     */     */
     CIMConstQualifier getQualifier(Uint32 pos) const      CIMConstQualifier getQualifier(Uint32 pos) const;
     {  
         _checkRep();  
         return _rep->getQualifier(pos);  
     }  
  
     void removeQualifier(Uint32 pos)      void removeQualifier(Uint32 pos);
         {  
         _checkRep();  
         _rep->removeQualifier(pos);  
         }  
  
         /**     getQualifierCount - Gets the numbercount of CIMQualifierobjects      /** getQualifierCount - Gets the number of CIMQualifier objects
         defined for this CIMObject.         defined for this CIMObject.
         @return Count of the number of CIMQalifier objects in the          @return Count of the number of CIMQualifier objects in the
         CIMObject.         CIMObject.
         @exception Throws the OutOfBounds exception if the index         @exception Throws the OutOfBounds exception if the index
         is out of bounds         is out of bounds
     */     */
     Uint32 getQualifierCount() const      Uint32 getQualifierCount() const;
     {  
         _checkRep();  
         return _rep->getQualifierCount();  
     }  
  
     /** addProperty - Adds a property object defined by the input     /** addProperty - Adds a property object defined by the input
         parameter to the CIMObject         parameter to the CIMObject
Line 228 
Line 182 
         @exception Throws the exception AlreadyExists if the property         @exception Throws the exception AlreadyExists if the property
         already exists.         already exists.
     */     */
     CIMObject& addProperty(const CIMProperty& x)      CIMObject& addProperty(const CIMProperty& x);
     {  
         _checkRep();  
         _rep->addProperty(x);  
         return *this;  
     }  
  
     /** findProperty - Searches the CIMProperty objects installed in the     /** findProperty - Searches the CIMProperty objects installed in the
         CIMObject for property objects with the name defined by the         CIMObject for property objects with the name defined by the
Line 243 
Line 192 
         PEG_NOT_FOUND if no property object found with the name defined by the         PEG_NOT_FOUND if no property object found with the name defined by the
         input.         input.
     */     */
     Uint32 findProperty(const String& name)      Uint32 findProperty(const String& name) const;
     {  
         _checkRep();  
         return _rep->findProperty(name);  
     }  
  
     Uint32 findProperty(const String& name) const      /** existsProperty - Determines if a property object with the
     {  
         _checkRep();  
         return _rep->findProperty(name);  
     }  
   
     /** existsPropery - Determines if a property object with the  
         name defined by the input parameter exists in the class.         name defined by the input parameter exists in the class.
         @parm String parameter with the property name.         @parm String parameter with the property name.
         @return True if the property object exists.         @return True if the property object exists.
     */     */
     Boolean existsProperty(const String& name)      Boolean existsProperty(const String& name) const;
     {  
         _checkRep();  
         return _rep->existsProperty(name);  
     }  
   
     Boolean existsProperty(const String& name) const  
     {  
        _checkRep();  
        return _rep->existsProperty(name);  
     }  
  
     /** getProperty - Gets the CIMproperty object in the CIMObject defined      /** getProperty - Gets the CIMProperty object in the CIMObject defined
         by the input index parameter.         by the input index parameter.
         @param Index to the property object in the CIMObject.         @param Index to the property object in the CIMObject.
         The index to qualifier objects is zero-origin and continuous         The index to qualifier objects is zero-origin and continuous
Line 284 
Line 213 
  
         ATTN: What is the effect of out of range?         ATTN: What is the effect of out of range?
     */     */
     CIMProperty getProperty(Uint32 pos)      CIMProperty getProperty(Uint32 pos);
     {  
         _checkRep();  
         return _rep->getProperty(pos);  
     }  
  
     /** getProperty - Gets the CIMproperty object in the CIMObject defined     /** getProperty - Gets the CIMproperty object in the CIMObject defined
         by the input index parameter.         by the input index parameter.
Line 302 
Line 227 
  
         ATTN: What is the effect of out of range?         ATTN: What is the effect of out of range?
     */     */
     CIMConstProperty getProperty(Uint32 pos) const      CIMConstProperty getProperty(Uint32 pos) const;
     {  
         _checkRep();  
         return _rep->getProperty(pos);  
     }  
  
     /** removeProperty - Removes the property represented     /** removeProperty - Removes the property represented
         by the position input parameter from the instance.         by the position input parameter from the instance.
Line 314 
Line 235 
         instance.  Normally this is obtained by getProperty();         instance.  Normally this is obtained by getProperty();
         @exception Throws OutofBounds if index is not a property object         @exception Throws OutofBounds if index is not a property object
     */     */
     void removeProperty(Uint32 pos)      void removeProperty(Uint32 pos);
     {  
         _checkRep();  
         _rep->removeProperty(pos);  
     }  
  
     /** getPropertyCount - Gets the numbercount of CIMProperty      /** getPropertyCount - Gets the number of CIMProperty
         objects defined for this CIMObject.         objects defined for this CIMObject.
         @return Count of the number of CIMProperty objects in the         @return Count of the number of CIMProperty objects in the
         CIMObject. Zero indicates that no CIMProperty objects         CIMObject. Zero indicates that no CIMProperty objects
Line 329 
Line 246 
         is out of bounds         is out of bounds
  
     */     */
     Uint32 getPropertyCount() const      Uint32 getPropertyCount() const;
     {  
         _checkRep();  
         return _rep->getPropertyCount();  
     }  
  
     /** operator int() - ATTN: */      /** Clones the given object.
     operator int() const { return _rep != 0; }      */
       CIMObject clone() const;
  
     /** Returns true if the two classes are structurally identical.     /** Returns true if the two classes are structurally identical.
     */     */
     Boolean identical(const CIMConstObject& x) const;     Boolean identical(const CIMConstObject& x) const;
  
     /** Convert object to XML format.  #ifdef PEGASUS_INTERNALONLY
     */      /** operator int() - ATTN: */
     void toXml(Array<Sint8>& out) const      operator int() const;
     {  
         _checkRep();  
         _rep->toXml(out);  
     }  
  
     /** Clones the given object.      /** Convert object to XML format.
     */     */
     CIMObject clone() const      void toXml(Array<Sint8>& out) const;
     {  #endif
         _checkRep();  
         return CIMObject(_rep->clone());  
     }  
  
 private: private:
  
     CIMObject(CIMObjectRep* rep) : _rep(rep)      CIMObjectRep* _rep;
     {  
  
     }  #ifdef PEGASUS_INTERNALONLY
       CIMObject(CIMObjectRep* rep);
  
     void _checkRep() const      void _checkRep() const;
     {  
         if (!_rep)  
             ThrowUnitializedHandle();  
     }  
   
     CIMObjectRep* _rep;  
  
     friend class CIMConstObject;     friend class CIMConstObject;
     friend class CIMClass;     friend class CIMClass;
     friend class CIMConstClass;     friend class CIMConstClass;
     friend class CIMInstance;     friend class CIMInstance;
     friend class CIMConstInstance;     friend class CIMConstInstance;
   #endif
 }; };
  
 //////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
Line 390 
Line 292 
 { {
 public: public:
  
     CIMConstObject() : _rep(0)      CIMConstObject();
     {  
  
     }      CIMConstObject(const CIMConstObject& x);
  
     CIMConstObject(const CIMConstObject& x)      CIMConstObject(const CIMObject& x);
     {  
         Inc(_rep = x._rep);  
     }  
   
     CIMConstObject(const CIMObject& x)  
     {  
         Inc(_rep = x._rep);  
     }  
  
     /** Construction from CIMClass.     /** Construction from CIMClass.
     */     */
Line 421 
Line 314 
     */     */
     CIMConstObject(const CIMConstInstance& x);     CIMConstObject(const CIMConstInstance& x);
  
     CIMConstObject& operator=(const CIMConstObject& x)      CIMConstObject& operator=(const CIMConstObject& x);
     {  
         if (x._rep != _rep)  
         {  
             Dec(_rep);  
             Inc(_rep = x._rep);  
         }  
         return *this;  
     }  
  
     CIMConstObject& operator=(const CIMObject& x)      CIMConstObject& operator=(const CIMObject& x);
     {  
         if (x._rep != _rep)  
         {  
             Dec(_rep);  
             Inc(_rep = x._rep);  
         }  
         return *this;  
     }  
  
     CIMConstObject& operator=(const CIMClass& x);     CIMConstObject& operator=(const CIMClass& x);
  
Line 449 
Line 326 
  
     CIMConstObject& operator=(const CIMConstInstance& x);     CIMConstObject& operator=(const CIMConstInstance& x);
  
     ~CIMConstObject()      ~CIMConstObject();
     {  
         Dec(_rep);  
     }  
  
     const String& getClassName() const      const String& getClassName() const;
     {  
         _checkRep();  
         return _rep->getClassName();  
     }  
  
     const CIMReference& getPath() const      const CIMReference& getPath() const;
     {  
         _checkRep();  
         return _rep->getPath();  
     }  
  
     Uint32 findQualifier(const String& name) const      Uint32 findQualifier(const String& name) const;
     {  
         _checkRep();  
         return _rep->findQualifier(name);  
     }  
  
     CIMConstQualifier getQualifier(Uint32 pos) const      CIMConstQualifier getQualifier(Uint32 pos) const;
     {  
         _checkRep();  
         return _rep->getQualifier(pos);  
     }  
  
     Uint32 getQualifierCount() const      Uint32 getQualifierCount() const;
     {  
         _checkRep();  
         return _rep->getQualifierCount();  
     }  
  
     Uint32 findProperty(const String& name) const      Uint32 findProperty(const String& name) const;
     {  
         _checkRep();  
         return _rep->findProperty(name);  
     }  
  
     CIMConstProperty getProperty(Uint32 pos) const      CIMConstProperty getProperty(Uint32 pos) const;
     {  
         _checkRep();  
         return _rep->getProperty(pos);  
     }  
  
     Uint32 getPropertyCount() const      Uint32 getPropertyCount() const;
     {  
         _checkRep();  
         return _rep->getPropertyCount();  
     }  
  
     operator int() const { return _rep != 0; }      CIMObject clone() const;
  
     void toXml(Array<Sint8>& out) const      Boolean identical(const CIMConstObject& x) const;
     {  
         _checkRep();  
         _rep->toXml(out);  
     }  
  
     void print(PEGASUS_STD(ostream) &o=PEGASUS_STD(cout)) const  #ifdef PEGASUS_INTERNALONLY
     {      operator int() const;
         _checkRep();  
         _rep->print(o);  
     }  
  
     Boolean identical(const CIMConstObject& x) const      void toXml(Array<Sint8>& out) const;
     {  
         x._checkRep();  
         _checkRep();  
         return _rep->identical(x._rep);  
     }  
  
     CIMObject clone() const      void print(PEGASUS_STD(ostream) &o=PEGASUS_STD(cout)) const;
     {  #endif
         return CIMObject(_rep->clone());  
     }  
  
 private: private:
  
     void _checkRep() const  
     {  
         if (!_rep)  
             ThrowUnitializedHandle();  
     }  
   
     CIMObjectRep* _rep;     CIMObjectRep* _rep;
  
   #ifdef PEGASUS_INTERNALONLY
       void _checkRep() const;
   
     friend class CIMObject;     friend class CIMObject;
     friend class CIMClass;     friend class CIMClass;
     friend class CIMConstClass;     friend class CIMConstClass;
     friend class CIMInstance;     friend class CIMInstance;
     friend class CIMConstInstance;     friend class CIMConstInstance;
   #endif
 }; };
  
 /** The CIMObjectWithPath encapsulates a CIMReference and CIMObject. /** The CIMObjectWithPath encapsulates a CIMReference and CIMObject.
Line 577 
Line 403 
  
     /**     /**
     */     */
     const CIMReference& getReference() const { return _reference; }      const CIMReference& getReference() const;
  
     /**     /**
     */     */
     const CIMObject& getObject() const { return _object; }      const CIMObject& getObject() const;
  
     /**     /**
     */     */
     CIMReference& getReference() { return _reference; }      CIMReference& getReference();
  
     /**     /**
     */     */
     CIMObject& getObject() { return _object; }      CIMObject& getObject();
  
   #ifdef PEGASUS_INTERNALONLY
     /**     /**
     */     */
     void toXml(Array<Sint8>& out) const;     void toXml(Array<Sint8>& out) const;
   #endif
  
 private: private:
  


Legend:
Removed from v.1.12  
changed lines
  Added in v.1.18

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2