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

Diff for /pegasus/src/Pegasus/Common/XmlWriter.cpp between version 1.23.2.6 and 1.26

version 1.23.2.6, 2001/11/20 06:11:35 version 1.26, 2002/02/20 23:14:19
Line 24 
Line 24 
 // Author: Mike Brasher (mbrasher@bmc.com) // Author: Mike Brasher (mbrasher@bmc.com)
 // //
 // Modified By: Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com) // Modified By: Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com)
   //              Nag Boranna, Hewlett-Packard Company (nagaraja_boranna@hp.com)
   //              Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
Line 208 
Line 210 
     const char* cimOperation,     const char* cimOperation,
     const char* cimMethod,     const char* cimMethod,
     const String& cimObject,     const String& cimObject,
       const String& authenticationHeader,
     const Array<Sint8>& content)     const Array<Sint8>& content)
 { {
     Array<Sint8> out;     Array<Sint8> out;
Line 222 
Line 225 
     out << nn <<"\r\n";     out << nn <<"\r\n";
     out << nn << "-CIMOperation: " << cimOperation << "\r\n";     out << nn << "-CIMOperation: " << cimOperation << "\r\n";
     out << nn << "-CIMMethod: " << cimMethod << "\r\n";     out << nn << "-CIMMethod: " << cimMethod << "\r\n";
     out << nn << "-CIMObject: " << cimObject << "\r\n\r\n";      out << nn << "-CIMObject: " << cimObject << "\r\n";
       if (authenticationHeader.size())
       {
           out << authenticationHeader << "\r\n";
       }
       out << "\r\n";
     out << content;     out << content;
     return out;     return out;
 } }
Line 534 
Line 542 
     return formatIParamValueElement(out, parameterName, tmp);     return formatIParamValueElement(out, parameterName, tmp);
 } }
  
   //------------------------------------------------------------------------------
   //
   // appendNamedInstanceParameter()
   //
   //------------------------------------------------------------------------------
   
   Array<Sint8>& XmlWriter::appendNamedInstanceParameter(
       Array<Sint8>& out,
       const char* parameterName,
       const CIMNamedInstance& namedInstance)
   {
       Array<Sint8> tmp;
       namedInstance.toXml(tmp);
       return formatIParamValueElement(out, parameterName, tmp);
   }
   
 //---------------------------------------------------------- //----------------------------------------------------------
 // //
 //  appendPropertyNameParameter() //  appendPropertyNameParameter()
Line 575 
Line 599 
  
 Array<Sint8>& XmlWriter::appendPropertyListParameter( Array<Sint8>& XmlWriter::appendPropertyListParameter(
     Array<Sint8>& out,     Array<Sint8>& out,
     const Array<String>& propertyList)      const CIMPropertyList& propertyList)
 { {
     Array<Sint8> tmp;     Array<Sint8> tmp;
  
     tmp << "<VALUE.ARRAY>\n";     tmp << "<VALUE.ARRAY>\n";
       for (Uint32 i = 0; i < propertyList.getNumProperties(); i++)
     for (Uint32 i = 0; i < propertyList.size(); i++)  
     {     {
         tmp << "<VALUE>" << propertyList[i] << "</VALUE>\n";          tmp << "<VALUE>" << propertyList.getPropertyName(i) << "</VALUE>\n";
     }     }
   
     tmp << "</VALUE.ARRAY>\n";     tmp << "</VALUE.ARRAY>\n";
     return formatIParamValueElement(out, "PropertyList", tmp);     return formatIParamValueElement(out, "PropertyList", tmp);
 } }
Line 808 
Line 830 
     const String& nameSpace,     const String& nameSpace,
     const char* iMethodName,     const char* iMethodName,
     const String& messageId,     const String& messageId,
       const String& authenticationHeader,
     const Array<Sint8>& body)     const Array<Sint8>& body)
 { {
     return XmlWriter::formatMPostHeader(     return XmlWriter::formatMPostHeader(
Line 815 
Line 838 
         "MethodCall",         "MethodCall",
         iMethodName,         iMethodName,
         nameSpace,         nameSpace,
           authenticationHeader,
         XmlWriter::formatMessageElement(         XmlWriter::formatMessageElement(
             messageId,             messageId,
             XmlWriter::formatSimpleReqElement(             XmlWriter::formatSimpleReqElement(
Line 914 
Line 938 
     const char* host,     const char* host,
     const char* iMethodName,     const char* iMethodName,
     const String& messageId,     const String& messageId,
       const String& authenticationHeader,
     const Array<Sint8>& body)     const Array<Sint8>& body)
 { {
     return XmlWriter::formatMPostIndicationHeader(     return XmlWriter::formatMPostIndicationHeader(
         host,         host,
         "MethodRequest",         "MethodRequest",
         iMethodName,         iMethodName,
           authenticationHeader,
         XmlWriter::formatMessageElement(         XmlWriter::formatMessageElement(
             messageId,             messageId,
             XmlWriter::formatSimpleExportReqElement(             XmlWriter::formatSimpleExportReqElement(
Line 932 
Line 958 
     const char* host,     const char* host,
     const char* cimOperation,     const char* cimOperation,
     const char* cimMethod,     const char* cimMethod,
       const String& authenticationHeader,
     const Array<Sint8>& content)     const Array<Sint8>& content)
 { {
     Array<Sint8> out;     Array<Sint8> out;
Line 945 
Line 972 
     out << "Man: http://www.hp.com; ns=";     out << "Man: http://www.hp.com; ns=";
     out << nn <<"\r\n";     out << nn <<"\r\n";
     out << nn << "-CIMExport: " << cimOperation << "\r\n";     out << nn << "-CIMExport: " << cimOperation << "\r\n";
     out << nn << "-CIMExportMethod: " << cimMethod << "\r\n\r\n";      out << nn << "-CIMExportMethod: " << cimMethod << "\r\n";
       if (authenticationHeader.size())
       {
           out << authenticationHeader << "\r\n";
       }
       out << "\r\n";
     out << content;     out << content;
     return out;     return out;
 } }
Line 1044 
Line 1076 
     const String& nameSpace,     const String& nameSpace,
     const char* iMethodName,     const char* iMethodName,
     const String& messageId,     const String& messageId,
      const String& authenticationHeader,
     const Array<Sint8>& body)     const Array<Sint8>& body)
 { {
     return XmlWriter::formatMPostHeader(     return XmlWriter::formatMPostHeader(
Line 1051 
Line 1084 
         "MethodCall",         "MethodCall",
         iMethodName,         iMethodName,
         nameSpace,         nameSpace,
           authenticationHeader,
         XmlWriter::formatMessageElement(         XmlWriter::formatMessageElement(
             messageId,             messageId,
             XmlWriter::formatSimpleReqElement(             XmlWriter::formatSimpleReqElement(
Line 1086 
Line 1120 
     const String& messageId,     const String& messageId,
     const Array<Sint8>& body)     const Array<Sint8>& body)
 { {
     /*return XmlWriter::formatMethodResponseHeader(  
         XmlWriter::formatMessageElement(  
             messageId,  
             XmlWriter::formatSimpleRspElement(  
                 XmlWriter::formatMethodResponseElement(  
                     iMethodName,  
                     XmlWriter::formatReturnValueElement(body)))));*/  
     return XmlWriter::formatMethodResponseHeader(     return XmlWriter::formatMethodResponseHeader(
         XmlWriter::formatMessageElement(         XmlWriter::formatMessageElement(
             messageId,             messageId,
Line 1124 
Line 1151 
  
 //------------------------------------------------------------------------------ //------------------------------------------------------------------------------
 // //
 // appendStringParameter()  // appendReturnValueElement()
   //
   // <!ELEMENT RETURNVALUE (VALUE|VALUE.REFERENCE)>
   // <!ATTLIST RETURNVALUE
   //     %ParamType;>
 // //
 //------------------------------------------------------------------------------ //------------------------------------------------------------------------------
  
 Array<Sint8>& XmlWriter::appendStringParameter(  Array<Sint8>& XmlWriter::appendReturnValueElement(
     Array<Sint8>& out,     Array<Sint8>& out,
     const char* name,      const CIMValue& value)
     const String& str)  
 { {
     Array<Sint8> tmp;      out << "<RETURNVALUE";
     tmp << "<VALUE>";  
     appendSpecial(tmp, str);  
     tmp << "</VALUE>\n";  
     return formatParamValueElement(out, name, tmp);  
 }  
   
 //------------------------------------------------------------------------------  
 //  
 // formatParamValueElement()  
 //  
 //     <!ELEMENT PARAMVALUE (VALUE|VALUE.ARRAY|VALUE.REFERENCE  
 //         |INSTANCENAME|CLASSNAME|QUALIFIER.DECLARATION  
 //         |CLASS|INSTANCE|VALUE.NAMEDINSTANCE)?>  
 //     <!ATTLIST PARAMVALUE %CIMName;>  
 //  
 //------------------------------------------------------------------------------  
  
 Array<Sint8>& XmlWriter::formatParamValueElement(      CIMType type = value.getType();
     Array<Sint8>& out,      if (type != CIMType::NONE)
     const char* name,  
     const Array<Sint8>& body)  
 { {
     out << "<PARAMVALUE NAME=\"" << name << "\">\n";          out << " PARAMTYPE=\"" << TypeToString(type) << "\"";
     out << body;      }
     out << "</PARAMVALUE>\n";  
       out << ">\n";
       value.toXml(out);
       out << "</RETURNVALUE>\n";
     return out;     return out;
 } }
  
 //------------------------------------------------------------------------------ //------------------------------------------------------------------------------
 // //
 // formatReturnValueElement()  // formatUnauthorizedResponseHeader()
 // //
 //      <!ELEMENT RETURNVALUE (CLASSNAME*|INSTANCENAME*|VALUE*|  //     Build HTTP authentication response header for unauthorized requests.
 //          VALUE.OBJECTWITHPATH*|VALUE.OBJECTWITHLOCALPATH*|VALUE.OBJECT*|  //
 //          OBJECTPATH*|QUALIFIER.DECLARATION*|VALUE.ARRAY?|VALUE.REFERENCE?|  //     Returns unauthorized message in the following format:
 //          CLASS*|INSTANCE*|VALUE.NAMEDINSTANCE*)>  //
   //        HTTP/1.1 401 Unauthorized
   //        WWW-Authenticate: Basic "hostname:80"
   //        <HTML><HEAD>
   //        <TITLE>401 Unauthorized</TITLE>
   //        </HEAD><BODY BGCOLOR="#99cc99">
   //        <H2>TEST401 Unauthorized</H2>
   //        <HR>
   //        </BODY></HTML>
 // //
 //------------------------------------------------------------------------------ //------------------------------------------------------------------------------
  
 Array<Sint8> XmlWriter::formatReturnValueElement(  Array<Sint8> XmlWriter::formatUnauthorizedResponseHeader(
     const Array<Sint8>& body)      const String& content)
 { {
     Array<Sint8> out;     Array<Sint8> out;
     return out << "<RETURNVALUE>\n" << body << "</RETURNVALUE>\n";      out.reserve(1024);
   
       out << "HTTP/1.1 401 Unauthorized\r\n";
       out << content << "\r\n";
       out << "\r\n";
   
   //ATTN: We may need to include the following line, so that the browsers
   //      can display the error message.
   //    out << "<HTML><HEAD>\r\n";
   //    out << "<TITLE>" << "401 Unauthorized" <<  "</TITLE>\r\n";
   //    out << "</HEAD><BODY BGCOLOR=\"#99cc99\">\r\n";
   //    out << "<H2>TEST" << "401 Unauthorized" << "</H2>\r\n";
   //    out << "<HR>\r\n";
   //    out << "</BODY></HTML>\r\n";
   
       return out;
 } }
  
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END


Legend:
Removed from v.1.23.2.6  
changed lines
  Added in v.1.26

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2