本文整理汇总了C++中XmlParser::next方法的典型用法代码示例。如果您正苦于以下问题:C++ XmlParser::next方法的具体用法?C++ XmlParser::next怎么用?C++ XmlParser::next使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XmlParser
的用法示例。
在下文中一共展示了XmlParser::next方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ProcessCimElement
Boolean ProcessCimElement(CIMRepository& repository, XmlParser& parser)
{
XmlEntry entry;
if (!parser.next(entry) || entry.type != XmlEntry::XML_DECLARATION)
{
throw(parser.getLine(), "expected XML declaration");
}
if (!XmlReader::testStartTag(parser, entry, "CIM"))
return false;
String cimVersion;
if (!entry.getAttributeValue("CIMVERSION", cimVersion))
{
throw XmlValidationError(parser.getLine(),
"missing CIM.CIMVERSION attribute");
}
String dtdVersion;
if (!entry.getAttributeValue("DTDVERSION", dtdVersion))
{
throw XmlValidationError(parser.getLine(),
"missing CIM.DTDVERSION attribute");
}
if (!ProcessDeclarationElement(repository, parser))
{
throw XmlValidationError(parser.getLine(),
"Expected DECLARATION element");
}
XmlReader::expectEndTag(parser, "CIM");
return true;
}
示例2: encapsulate
//.........这里部分代码省略.........
{
//
// No xml declaration
// Request may already be encapsulated in HTTP
// Check for HTTP method
//
char tmp [8];
char* tmpp = & (tmp [0]);
strncpy (tmpp, entry.text, 8);
tmpp[7] = 0;
#if !defined(PEGASUS_COMPILER_MSVC) && !defined(PEGASUS_OS_ZOS)
char *last;
char* p = strtok_r (tmpp, HTTP_SP, &last);
#else
char* p = strtok (tmpp, HTTP_SP);
#endif
if (p != NULL)
{
if ((strcmp (p, HTTP_METHOD_MPOST) == 0) ||
(strcmp (p, HTTP_METHOD_POST) == 0) ||
// This is a special request used for testing.
// It includes the HTTP header.
// Return the message as is.
(strcmp (p, HTTP_METHOD_BOGUS) == 0))
{
return content;
}
}
}
#ifdef PEGASUS_ENABLE_PROTOCOL_WSMAN
// Check if the next tag is a SOAP envelope.
if (parser.next(entry) &&
entry.type == XmlEntry::START_TAG &&
strcmp(entry.localName, "Envelope") == 0)
{
//
// Set WSMAN headers and content.
//
message << HTTP_METHOD_POST << HTTP_SP
<< "/wsman" << HTTP_SP
<< HTTP_PROTOCOL << HTTP_VERSION_11 << HTTP_CRLF;
message << HEADER_NAME_HOST << HEADER_SEPARATOR
<< HTTP_SP << hostName << HTTP_CRLF;
message << HEADER_NAME_CONTENTTYPE << HEADER_SEPARATOR
<< HTTP_SP << WSMAN_HEADER_VALUE_CONTENTTYPE
<< HTTP_CRLF;
message << HEADER_NAME_CONTENTLENGTH << HEADER_SEPARATOR
<< HTTP_SP << (Uint32)content.size () << HTTP_CRLF;
httpHeaders << message;
message << HTTP_CRLF;
message << content;
return message;
}
else
{
parser.putBack(entry);
}
#endif
if (!hasXmlDeclaration)
{
//