Error reoprting improved by prefix

New 'HTTP' fault code
Source cleanup
This commit is contained in:
Dmitry Stogov 2004-01-28 16:47:49 +00:00
parent 01c6257c5c
commit 6cf3c8586e
12 changed files with 271 additions and 342 deletions

View file

@ -151,44 +151,6 @@ xmlNodePtr get_node_with_attribute_recursive_ex(xmlNodePtr node, char *name, cha
return NULL;
}
xmlNodePtr check_and_resolve_href(xmlNodePtr data)
{
if (data && data->properties) {
xmlAttrPtr href = get_attribute(data->properties, "href");
if (href) {
/* Internal href try and find node */
if (href->children->content[0] == '#') {
xmlNodePtr ret = get_node_with_attribute_recursive(data->doc->children, NULL, "id", &href->children->content[1]);
if (!ret) {
php_error(E_ERROR,"Unresolved reference '%s'",href->children->content);
}
return ret;
} else {
/* TODO: External href....? */
php_error(E_ERROR,"External reference '%s'",href->children->content);
}
}
/* SOAP 1.2 enc:id enc:ref */
href = get_attribute_ex(data->properties, "ref", SOAP_1_2_ENC_NAMESPACE);
if (href) {
/* Internal href try and find node */
if (href->children->content[0] == '#') {
xmlNodePtr ret = get_node_with_attribute_recursive_ex(data->doc->children, NULL, NULL, "id", &href->children->content[1], SOAP_1_2_ENC_NAMESPACE);
if (!ret) {
php_error(E_ERROR,"Unresolved reference '%s'",href->children->content);
} else if (ret == data) {
php_error(E_ERROR,"Violation of id and ref information items '%s'",href->children->content);
}
return ret;
} else {
/* TODO: External href....? */
php_error(E_ERROR,"External reference '%s'",href->children->content);
}
}
}
return data;
}
int parse_namespace(const char *inval, char **value, char **namespace)
{
char *found = strchr(inval, ':');