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

Diff for /pegasus/src/Pegasus/Common/XmlReader.h between version 1.4 and 1.43.4.1

version 1.4, 2001/02/20 07:25:57 version 1.43.4.1, 2004/03/31 00:23:20
Line 1 
Line 1 
 //BEGIN_LICENSE  //%2003////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000 The Open Group, BMC Software, Tivoli Systems, IBM  // Copyright (c) 2000, 2001, 2002  BMC Software, Hewlett-Packard Development
   // Company, L. P., IBM Corp., The Open Group, Tivoli Systems.
   // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.;
   // IBM Corp.; EMC Corporation, The Open Group.
   //
   // Permission is hereby granted, free of charge, to any person obtaining a copy
   // of this software and associated documentation files (the "Software"), to
   // deal in the Software without restriction, including without limitation the
   // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
   // sell copies of the Software, and to permit persons to whom the Software is
   // furnished to do so, subject to the following conditions:
   //
   // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
   // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
   // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
   // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
   // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
   // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
   // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
   // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
   //
   //==============================================================================
   //
   // Author: Mike Brasher (mbrasher@bmc.com)
   //
   // Modified By: Carol Ann Krug Graves, Hewlett-Packard Company
   //                  (carolann_graves@hp.com)
   //              Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com)
   //              Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
   //              Yi Zhou, Hewlett-Packard Company (yi_zhou@hp.com)
 // //
 // Permission is hereby granted, free of charge, to any person obtaining a  //%/////////////////////////////////////////////////////////////////////////////
 // copy of this software and associated documentation files (the "Software"),  
 // to deal in the Software without restriction, including without limitation  
 // the rights to use, copy, modify, merge, publish, distribute, sublicense,  
 // and/or sell copies of the Software, and to permit persons to whom the  
 // Software is furnished to do so, subject to the following conditions:  
 //  
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,  
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL  
 // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER  
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING  
 // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER  
 // DEALINGS IN THE SOFTWARE.  
 //  
 //END_LICENSE  
 //BEGIN_HISTORY  
 //  
 // Author:  
 //  
 // $Log$  
 // Revision 1.4  2001/02/20 07:25:57  mike  
 // Added basic create-instance in repository and in client.  
 //  
 // Revision 1.3  2001/02/19 01:47:16  mike  
 // Renamed names of the form CIMConst to ConstCIM.  
 //  
 // Revision 1.2  2001/02/16 02:06:07  mike  
 // Renamed many classes and headers.  
 //  
 // Revision 1.1.1.1  2001/01/14 19:53:33  mike  
 // Pegasus import  
 //  
 //  
 //END_HISTORY  
   
 ////////////////////////////////////////////////////////////////////////////////  
 //  
 // XmlReader.h  
 //  
 ////////////////////////////////////////////////////////////////////////////////  
  
 #ifndef Pegasus_XmlReader_h #ifndef Pegasus_XmlReader_h
 #define Pegasus_XmlReader_h #define Pegasus_XmlReader_h
Line 51 
Line 40 
 #include <Pegasus/Common/XmlParser.h> #include <Pegasus/Common/XmlParser.h>
 #include <Pegasus/Common/CIMFlavor.h> #include <Pegasus/Common/CIMFlavor.h>
 #include <Pegasus/Common/CIMScope.h> #include <Pegasus/Common/CIMScope.h>
 #include <Pegasus/Common/CIMReference.h>  #include <Pegasus/Common/CIMType.h>
   #include <Pegasus/Common/CIMObjectPath.h>
   #include <Pegasus/Common/Linkage.h>
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
Line 62 
Line 53 
 class CIMProperty; class CIMProperty;
 class CIMParameter; class CIMParameter;
 class CIMMethod; class CIMMethod;
   class CIMObject;
   class CIMParamValue;
   class CIMValue;
  
 class PEGASUS_COMMON_LINKAGE XmlReader class PEGASUS_COMMON_LINKAGE XmlReader
 { {
 public: public:
  
     static void expectXmlDeclaration(      static void getXmlDeclaration(
           XmlParser& parser,
           const char*& xmlVersion,
           const char*& xmlEncoding);
   
       static Boolean testXmlDeclaration (
         XmlParser& parser,         XmlParser& parser,
         XmlEntry& entry);         XmlEntry& entry);
  
Line 85 
Line 84 
         XmlEntry& entry,         XmlEntry& entry,
         const char* tagName);         const char* tagName);
  
       static void skipElement(
           XmlParser& parser,
           XmlEntry& entry);
   
     static Boolean expectContentOrCData(     static Boolean expectContentOrCData(
         XmlParser& parser,         XmlParser& parser,
         XmlEntry& entry);         XmlEntry& entry);
Line 103 
Line 106 
         XmlEntry& entry,         XmlEntry& entry,
         const char* tagName);         const char* tagName);
  
     static Boolean testContentOrCData(      static Boolean testStartTagOrEmptyTag(
         XmlParser& parser,         XmlParser& parser,
         XmlEntry& entry);         XmlEntry& entry);
  
     static void testCimStartTag(XmlParser& parser);      static Boolean testContentOrCData(
           XmlParser& parser,
           XmlEntry& entry);
  
     static Boolean getIsArrayAttribute(      static void getCimStartTag(
         Uint32 lineNumber,          XmlParser& parser,
         const XmlEntry& entry,          const char*& cimVersion,
         const char* tagName,          const char*& dtdVersion);
         Boolean& value);  
  
     static String getCimNameAttribute(      static CIMName getCimNameAttribute(
         Uint32 lineNumber,         Uint32 lineNumber,
         const XmlEntry& entry,         const XmlEntry& entry,
         const char* elementName,         const char* elementName,
Line 126 
Line 130 
         const XmlEntry& entry,         const XmlEntry& entry,
         const char* elementName);         const char* elementName);
  
     static String getClassOriginAttribute(      static CIMName getClassOriginAttribute(
         Uint32 lineNumber,         Uint32 lineNumber,
         const XmlEntry& entry,         const XmlEntry& entry,
         const char* tagName);         const char* tagName);
  
     static String getReferenceClassAttribute(      static CIMName getReferenceClassAttribute(
         Uint32 lineNumber,         Uint32 lineNumber,
         const XmlEntry& entry,         const XmlEntry& entry,
         const char* elementName);         const char* elementName);
  
     static String getSuperClassAttribute(      static CIMName getSuperClassAttribute(
         Uint32 lineNumber,         Uint32 lineNumber,
         const XmlEntry& entry,         const XmlEntry& entry,
         const char* tagName);         const char* tagName);
  
     static CIMType getCimTypeAttribute(      static Boolean getCimTypeAttribute(
         Uint32 lineNumber,         Uint32 lineNumber,
         const XmlEntry& entry,         const XmlEntry& entry,
         const char* tagName);          CIMType& cimType,  // Output parameter
           const char* tagName,
           const char* attributeName = "TYPE",
           Boolean required = true);
  
     static Boolean getCimBooleanAttribute(     static Boolean getCimBooleanAttribute(
         Uint32 lineNumber,         Uint32 lineNumber,
Line 154 
Line 161 
         Boolean defaultValue,         Boolean defaultValue,
         Boolean required);         Boolean required);
  
       static String decodeURICharacters(String uriString);
   
     static Boolean stringToReal(     static Boolean stringToReal(
         const char* stringValue,         const char* stringValue,
         Real64& x);         Real64& x);
Line 171 
Line 180 
         const char* valueString,         const char* valueString,
         CIMType type);         CIMType type);
  
       /* getValueElement - Gets the CIMType and CIMValue for a single
           XML Value element.  It expects <VALUE> as the start tag.
           @return Returns True if the value element exists
       */
     static Boolean getValueElement(     static Boolean getValueElement(
         XmlParser& parser,         XmlParser& parser,
         CIMType type,         CIMType type,
         CIMValue& value);         CIMValue& value);
  
       static Boolean getStringValueElement(
           XmlParser& parser,
           String& str,
           Boolean required);
   
     static CIMValue stringArrayToValue(     static CIMValue stringArrayToValue(
         Uint32 lineNumber,         Uint32 lineNumber,
         const Array<const char*>& array,         const Array<const char*>& array,
Line 186 
Line 204 
         CIMType type,         CIMType type,
         CIMValue& value);         CIMValue& value);
  
     static Uint32 getFlavor(      static CIMFlavor getFlavor(
         XmlEntry& entry,         XmlEntry& entry,
         Uint32 lineNumber,         Uint32 lineNumber,
         const char* tagName);         const char* tagName);
  
     static Uint32 getOptionalScope(      static CIMScope getOptionalScope(
         XmlParser& parser);         XmlParser& parser);
  
     static Boolean getQualifierElement(     static Boolean getQualifierElement(
Line 218 
Line 236 
  
     static Boolean getNameSpaceElement(     static Boolean getNameSpaceElement(
         XmlParser& parser,         XmlParser& parser,
         String& nameSpaceComponent);          CIMName& nameSpaceComponent);
  
     static Boolean getLocalNameSpacePathElement(     static Boolean getLocalNameSpacePathElement(
         XmlParser& parser,         XmlParser& parser,
Line 231 
Line 249 
  
     static Boolean getClassNameElement(     static Boolean getClassNameElement(
         XmlParser& parser,         XmlParser& parser,
         String& className,          CIMName& className,
         Boolean required = false);         Boolean required = false);
  
     static KeyBinding::CIMType getValueTypeAttribute(      static CIMKeyBinding::Type getValueTypeAttribute(
         Uint32 lineNumber,         Uint32 lineNumber,
         const XmlEntry& entry,         const XmlEntry& entry,
         const char* elementName);         const char* elementName);
  
     static Boolean getKeyValueElement(     static Boolean getKeyValueElement(
         XmlParser& parser,         XmlParser& parser,
         KeyBinding::CIMType& type,          CIMKeyBinding::Type& type,
         String& value);         String& value);
  
     static Boolean getKeyBindingElement(     static Boolean getKeyBindingElement(
         XmlParser& parser,         XmlParser& parser,
         String& name,          CIMName& name,
         String& value,         String& value,
         KeyBinding::CIMType& type);          CIMKeyBinding::Type& type);
  
     static Boolean getInstanceNameElement(     static Boolean getInstanceNameElement(
         XmlParser& parser,         XmlParser& parser,
         String& className,         String& className,
         Array<KeyBinding>& keyBindings);          Array<CIMKeyBinding>& keyBindings);
   
       static Boolean getInstanceNameElement(
           XmlParser& parser,
           CIMObjectPath& instanceName);
  
     static Boolean getInstancePathElement(     static Boolean getInstancePathElement(
         XmlParser& parser,         XmlParser& parser,
         CIMReference& reference);          CIMObjectPath& reference);
  
     static Boolean getLocalInstancePathElement(     static Boolean getLocalInstancePathElement(
         XmlParser& parser,         XmlParser& parser,
         CIMReference& reference);          CIMObjectPath& reference);
  
     static Boolean getClassPathElement(     static Boolean getClassPathElement(
         XmlParser& parser,         XmlParser& parser,
         CIMReference& reference);          CIMObjectPath& reference);
  
     static Boolean getLocalClassPathElement(     static Boolean getLocalClassPathElement(
         XmlParser& parser,         XmlParser& parser,
         CIMReference& reference);          CIMObjectPath& reference);
  
     static Boolean getValueReferenceElement(     static Boolean getValueReferenceElement(
         XmlParser& parser,         XmlParser& parser,
         CIMReference& reference);          CIMObjectPath& reference);
   
       static Boolean getValueReferenceArrayElement(
           XmlParser& parser,
           CIMValue& value);
  
     static Boolean getPropertyReferenceElement(     static Boolean getPropertyReferenceElement(
         XmlParser& parser,         XmlParser& parser,
Line 291 
Line 317 
         XmlParser& parser,         XmlParser& parser,
         CIMParameter& parameter);         CIMParameter& parameter);
  
       static Boolean getParameterReferenceArrayElement(
           XmlParser& parser,
           CIMParameter& parameter);
   
     static Boolean getQualifierDeclElement(     static Boolean getQualifierDeclElement(
         XmlParser& parser,         XmlParser& parser,
         CIMQualifierDecl& qualifierDecl);         CIMQualifierDecl& qualifierDecl);
Line 307 
Line 337 
         XmlParser& parser,         XmlParser& parser,
         CIMInstance& cimInstance);         CIMInstance& cimInstance);
  
     static void getObject(XmlParser& parser, CIMClass& x)      static Boolean getNamedInstanceElement(
     {          XmlParser& parser,
         if (!getClassElement(parser, x))          CIMInstance& namedInstance);
         {  
             throw XmlValidationError(parser.getLine(),  
                 "expected CLASS element");  
         }  
     }  
  
     static void getObject(XmlParser& parser, CIMInstance& x)      static void getObject(XmlParser& parser, CIMClass& x);
     {  
         if (!getInstanceElement(parser, x))  
         {  
             throw XmlValidationError(parser.getLine(),  
                 "expected INSTANCE element");  
         }  
     }  
  
     static void getObject(XmlParser& parser, CIMQualifierDecl& x)      static void getObject(XmlParser& parser, CIMInstance& x);
     {  
         if (!getQualifierDeclElement(parser, x))      static void getObject(XmlParser& parser, CIMQualifierDecl& x);
         {  
             throw XmlValidationError(parser.getLine(),  
                 "expected QUALIFIER.DECLARATION element");  
         }  
     }  
  
     static Boolean getMessageStartTag(     static Boolean getMessageStartTag(
         XmlParser& parser,         XmlParser& parser,
         Uint32& id,          String& id,
         const char*& protocolVersion);          String& protocolVersion);
  
     static Boolean getIMethodCallStartTag(     static Boolean getIMethodCallStartTag(
         XmlParser& parser,         XmlParser& parser,
Line 351 
Line 364 
         XmlParser& parser,         XmlParser& parser,
         const char*& name);         const char*& name);
  
       static Boolean getPropertyValue(
           XmlParser& parser,
           CIMValue& cimValue);
   
     static Boolean getBooleanValueElement(     static Boolean getBooleanValueElement(
         XmlParser& parser,         XmlParser& parser,
         Boolean& result,         Boolean& result,
Line 358 
Line 375 
  
     static Boolean getErrorElement(     static Boolean getErrorElement(
         XmlParser& parser,         XmlParser& parser,
         CimException::Code& code,          CIMException& cimException,
         const char*& description,  
         Boolean required = false);         Boolean required = false);
  
       static Boolean getValueObjectElement(
           XmlParser& parser,
           CIMObject& object);
   
       static Boolean getValueObjectWithPathElement(
           XmlParser& parser,
           CIMObject& objectWithPath);
   
       static Boolean getValueObjectWithLocalPathElement(
           XmlParser& parser,
           CIMObject& objectWithPath);
   
       static void getObjectArray(
           XmlParser& parser,
           Array<CIMObject>& objectArray);
   
       static Boolean getObjectNameElement(
           XmlParser& parser,
           CIMObjectPath& objectName);
   
       static Boolean getObjectPathElement(
           XmlParser& parser,
           CIMObjectPath& objectPath);
   
       static Boolean getEMethodCallStartTag(
           XmlParser& parser,
           const char*& name);
   
       static Boolean getEMethodResponseStartTag(
           XmlParser& parser,
           const char*& name);
   
       static Boolean getEParamValueTag(
           XmlParser& parser,
           const char*& name);
   
       static Boolean getMethodCallStartTag(
           XmlParser& parser,
           const char*& name);
   
       static Boolean getMethodResponseStartTag(
           XmlParser& parser,
           const char*& name);
   
       static Boolean getParamValueElement(
           XmlParser& parser,
           CIMParamValue& paramValue);
   
       static Boolean getReturnValueElement(
           XmlParser& parser,
           CIMValue& returnValue);
   
 private: private:
  
     XmlReader()     XmlReader()


Legend:
Removed from v.1.4  
changed lines
  Added in v.1.43.4.1

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2