I m using xmlrpc++ to connect to dbxml and I had to change the library to handle methods which return void.
For example "void setDocument(String docKey, String document)" .
Here are the modified code (any comment would be appreciate if it is not the good way to do it)
All modification are located into XmlRpcValue class.
add
static const char NIL_TAG[] = "<nil/>";
and into
bool XmlRpcValue::fromXml(std::string const& valueXml, int* offset)
{
....
else if (typeTag == VALUE_ETAG)
{
...
}
else if (typeTag == NIL_TAG)
{
*offset = afterValueOffset;
_type = TypeString;
_value.asString = new std::string(NIL_TAG);
result = NIL_TAG;
}
...
}
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I m using xmlrpc++ to connect to dbxml and I had to change the library to handle methods which return void.
For example "void setDocument(String docKey, String document)" .
Here are the modified code (any comment would be appreciate if it is not the good way to do it)
All modification are located into XmlRpcValue class.
add
static const char NIL_TAG[] = "<nil/>";
and into
bool XmlRpcValue::fromXml(std::string const& valueXml, int* offset)
{
....
else if (typeTag == VALUE_ETAG)
{
...
}
else if (typeTag == NIL_TAG)
{
*offset = afterValueOffset;
_type = TypeString;
_value.asString = new std::string(NIL_TAG);
result = NIL_TAG;
}
...
}