/* soapC.c Generated by gSOAP 2.8.83 for sc.h gSOAP XML Web services tools Copyright (C) 2000-2018, Robert van Engelen, Genivia Inc. All Rights Reserved. The soapcpp2 tool and its generated software are released under the GPL. This program is released under the GPL with the additional exemption that compiling, linking, and/or using OpenSSL is allowed. -------------------------------------------------------------------------------- A commercial use license is available from Genivia Inc., contact@genivia.com -------------------------------------------------------------------------------- */ #if defined(__BORLANDC__) #pragma option push -w-8060 #pragma option push -w-8004 #endif #include "soapH.h" #ifdef __cplusplus extern "C" { #endif SOAP_SOURCE_STAMP("@(#) soapC.c ver 2.8.83 2019-07-04 00:58:17 GMT") #ifndef WITH_NOGLOBAL SOAP_FMAC3 int SOAP_FMAC4 soap_getheader(struct soap *soap) { soap->part = SOAP_IN_HEADER; soap->header = soap_in_SOAP_ENV__Header(soap, "SOAP-ENV:Header", soap->header, NULL); soap->part = SOAP_END_HEADER; return soap->header == NULL; } SOAP_FMAC3 int SOAP_FMAC4 soap_putheader(struct soap *soap) { if (soap->version && soap->header) { soap->part = SOAP_IN_HEADER; if (soap_out_SOAP_ENV__Header(soap, "SOAP-ENV:Header", 0, soap->header, "")) return soap->error; soap->part = SOAP_END_HEADER; } return SOAP_OK; } SOAP_FMAC3 void SOAP_FMAC4 soap_serializeheader(struct soap *soap) { if (soap->version && soap->header) soap_serialize_SOAP_ENV__Header(soap, soap->header); } SOAP_FMAC3 void SOAP_FMAC4 soap_header(struct soap *soap) { if (soap->header == NULL) { if ((soap->header = (struct SOAP_ENV__Header*)soap_malloc(soap, sizeof(struct SOAP_ENV__Header)))) soap_default_SOAP_ENV__Header(soap, soap->header); } } SOAP_FMAC3 void SOAP_FMAC4 soap_fault(struct soap *soap) { if (soap->fault == NULL) { soap->fault = soap_new_SOAP_ENV__Fault(soap, -1); if (soap->fault == NULL) return; } if (soap->version == 2 && soap->fault->SOAP_ENV__Code == NULL) soap->fault->SOAP_ENV__Code = soap_new_SOAP_ENV__Code(soap, -1); if (soap->version == 2 && soap->fault->SOAP_ENV__Reason == NULL) soap->fault->SOAP_ENV__Reason = soap_new_SOAP_ENV__Reason(soap, -1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serializefault(struct soap *soap) { if (soap->fault) soap_serialize_SOAP_ENV__Fault(soap, soap->fault); } SOAP_FMAC3 int SOAP_FMAC4 soap_putfault(struct soap *soap) { if (soap->fault) return soap_put_SOAP_ENV__Fault(soap, soap->fault, "SOAP-ENV:Fault", ""); return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_getfault(struct soap *soap) { return (soap->fault = soap_get_SOAP_ENV__Fault(soap, NULL, "SOAP-ENV:Fault", NULL)) == NULL; } SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultcode(struct soap *soap) { soap_fault(soap); if (soap->fault == NULL) return NULL; if (soap->version == 2 && soap->fault->SOAP_ENV__Code) return (const char**)(void*)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Value; return (const char**)(void*)&soap->fault->faultcode; } SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultsubcode(struct soap *soap) { soap_fault(soap); if (soap->fault == NULL) return NULL; if (soap->version == 2 && soap->fault->SOAP_ENV__Code) { if (soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode == NULL) { soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = soap_new_SOAP_ENV__Code(soap, -1); if (soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode == NULL) return NULL; } return (const char**)(void*)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode->SOAP_ENV__Value; } return (const char**)(void*)&soap->fault->faultcode; } SOAP_FMAC3 const char * SOAP_FMAC4 soap_fault_subcode(struct soap *soap) { const char **s = soap_faultsubcode(soap); return s ? *s : NULL; } SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultstring(struct soap *soap) { soap_fault(soap); if (soap->fault == NULL) return NULL; if (soap->version == 2 && soap->fault->SOAP_ENV__Reason) return (const char**)(void*)&soap->fault->SOAP_ENV__Reason->SOAP_ENV__Text; return (const char**)(void*)&soap->fault->faultstring; } SOAP_FMAC3 const char * SOAP_FMAC4 soap_fault_string(struct soap *soap) { const char **s = soap_faultstring(soap); return s ? *s : NULL; } SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultdetail(struct soap *soap) { soap_fault(soap); if (soap->fault == NULL) return NULL; if (soap->version == 2) { if (soap->fault->SOAP_ENV__Detail == NULL) soap->fault->SOAP_ENV__Detail = soap_new_SOAP_ENV__Detail(soap, -1); return (const char**)(void*)&soap->fault->SOAP_ENV__Detail->__any; } if (soap->fault->detail == NULL) soap->fault->detail = soap_new_SOAP_ENV__Detail(soap, -1); return (const char**)(void*)&soap->fault->detail->__any; } SOAP_FMAC3 const char * SOAP_FMAC4 soap_fault_detail(struct soap *soap) { const char **s = soap_faultdetail(soap); return s ? *s : NULL; } #endif #ifndef WITH_NOIDREF SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap *soap) { int t; if (soap->version == 1) { for (;;) { if (!soap_getelement(soap, NULL, &t)) if ((soap->error && soap->error != SOAP_TAG_MISMATCH) || soap_ignore_element(soap)) break; } } if (soap->error == SOAP_NO_TAG || soap->error == SOAP_EOF) soap->error = SOAP_OK; return soap->error; } #endif SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap *soap, const char *tag, int *type) { (void)type; if (soap_peek_element(soap)) return NULL; #ifndef WITH_NOIDREF if (!*soap->id || !(*type = soap_lookup_type(soap, soap->id))) *type = soap_lookup_type(soap, soap->href); switch (*type) { case SOAP_TYPE_byte: return soap_in_byte(soap, tag, NULL, "xsd:byte"); case SOAP_TYPE_int: return soap_in_int(soap, tag, NULL, "xsd:int"); case SOAP_TYPE_ns1__invoke: return soap_in_ns1__invoke(soap, tag, NULL, "ns1:invoke"); case SOAP_TYPE_ns1__invokeResponse: return soap_in_ns1__invokeResponse(soap, tag, NULL, "ns1:invokeResponse"); case SOAP_TYPE_PointerToSOAP_ENC__string: return soap_in_PointerToSOAP_ENC__string(soap, tag, NULL, "SOAP-ENC:string"); case SOAP_TYPE_SOAP_ENC__string: { char **s; s = soap_in_SOAP_ENC__string(soap, tag, NULL, "SOAP-ENC:string"); return s ? *s : NULL; } case SOAP_TYPE__QName: { char **s; s = soap_in__QName(soap, tag, NULL, "xsd:QName"); return s ? *s : NULL; } case SOAP_TYPE_string: { char **s; s = soap_in_string(soap, tag, NULL, "xsd:string"); return s ? *s : NULL; } default: #else *type = 0; #endif { const char *t = soap->type; if (!*t) t = soap->tag; if (!soap_match_tag(soap, t, "xsd:byte")) { *type = SOAP_TYPE_byte; return soap_in_byte(soap, tag, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:int")) { *type = SOAP_TYPE_int; return soap_in_int(soap, tag, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:invoke")) { *type = SOAP_TYPE_ns1__invoke; return soap_in_ns1__invoke(soap, tag, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:invokeResponse")) { *type = SOAP_TYPE_ns1__invokeResponse; return soap_in_ns1__invokeResponse(soap, tag, NULL, NULL); } if (!soap_match_tag(soap, t, "SOAP-ENC:string")) { char **s; *type = SOAP_TYPE_SOAP_ENC__string; s = soap_in_SOAP_ENC__string(soap, tag, NULL, NULL); return s ? *s : NULL; } if (!soap_match_tag(soap, t, "xsd:QName")) { char **s; *type = SOAP_TYPE__QName; s = soap_in__QName(soap, tag, NULL, NULL); return s ? *s : NULL; } if (!soap_match_tag(soap, t, "xsd:string")) { char **s; *type = SOAP_TYPE_string; s = soap_in_string(soap, tag, NULL, NULL); return s ? *s : NULL; } t = soap->tag; #ifndef WITH_NOIDREF } #endif } soap->error = SOAP_TAG_MISMATCH; return NULL; } SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap *soap) { if (!soap_peek_element(soap)) { int t; DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Unexpected element '%s' in input (level = %u, %d)\n", soap->tag, soap->level, soap->body)); if (soap->mustUnderstand && !soap->other && !soap->fignore) return soap->error = SOAP_MUSTUNDERSTAND; if (((soap->mode & SOAP_XML_STRICT) && !soap->fignore && soap->part != SOAP_IN_HEADER) || !soap_match_tag(soap, soap->tag, "SOAP-ENV:")) { DBGLOG(TEST, SOAP_MESSAGE(fdebug, "REJECTING element '%s'\n", soap->tag)); return soap->error = SOAP_TAG_MISMATCH; } if (!*soap->id || !soap_getelement(soap, NULL, &t)) { soap->peeked = 0; if (soap->fignore) soap->error = soap->fignore(soap, soap->tag); else soap->error = SOAP_OK; DBGLOG(TEST, if (!soap->error) SOAP_MESSAGE(fdebug, "IGNORING element '%s'\n", soap->tag)); if (!soap->error && soap->body && soap_ignore(soap)) return soap->error; } } return soap->error; } #ifndef WITH_NOIDREF SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap *soap) { int i; struct soap_plist *pp; if (soap->version == 1 && soap->encodingStyle && !(soap->mode & (SOAP_XML_TREE | SOAP_XML_GRAPH))) for (i = 0; i < SOAP_PTRHASH; i++) for (pp = soap->pht[i]; pp; pp = pp->next) if (pp->mark1 == 2 || pp->mark2 == 2) if (soap_putelement(soap, pp->ptr, SOAP_MULTIREFTAG, pp->id, pp->type)) return soap->error; return SOAP_OK; } #endif SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap *soap, const void *ptr, const char *tag, int id, int type) { (void)tag; switch (type) { case SOAP_TYPE_byte: return soap_out_byte(soap, tag, id, (const char *)ptr, "xsd:byte"); case SOAP_TYPE_int: return soap_out_int(soap, tag, id, (const int *)ptr, "xsd:int"); case SOAP_TYPE_ns1__invoke: return soap_out_ns1__invoke(soap, tag, id, (const struct ns1__invoke *)ptr, "ns1:invoke"); case SOAP_TYPE_ns1__invokeResponse: return soap_out_ns1__invokeResponse(soap, tag, id, (const struct ns1__invokeResponse *)ptr, "ns1:invokeResponse"); case SOAP_TYPE_PointerToSOAP_ENC__string: return soap_out_PointerToSOAP_ENC__string(soap, tag, id, (char **const*)ptr, "SOAP-ENC:string"); case SOAP_TYPE_SOAP_ENC__string: return soap_out_string(soap, tag, id, (char*const*)(void*)&ptr, "SOAP-ENC:string"); case SOAP_TYPE__QName: return soap_out_string(soap, tag, id, (char*const*)(void*)&ptr, "xsd:QName"); case SOAP_TYPE_string: return soap_out_string(soap, tag, id, (char*const*)(void*)&ptr, "xsd:string"); case 0: return SOAP_OK; } DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_putelement '%s' failed for type %d in soapC.c\n", tag ? tag : "", type)); return soap_element_empty(soap, tag); /* unknown type to serialize */ } #ifndef WITH_NOIDREF SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap *soap, const void *ptr, int type) { (void)soap; (void)ptr; (void)type; /* appease -Wall -Werror */ switch (type) { case SOAP_TYPE_ns1__invoke: soap_serialize_ns1__invoke(soap, (const struct ns1__invoke *)ptr); break; case SOAP_TYPE_ns1__invokeResponse: soap_serialize_ns1__invokeResponse(soap, (const struct ns1__invokeResponse *)ptr); break; case SOAP_TYPE_PointerToSOAP_ENC__string: soap_serialize_PointerToSOAP_ENC__string(soap, (char **const*)ptr); break; case SOAP_TYPE_SOAP_ENC__string: soap_serialize_string(soap, (char*const*)(void*)&ptr); break; case SOAP_TYPE__QName: soap_serialize_string(soap, (char*const*)(void*)&ptr); break; case SOAP_TYPE_string: soap_serialize_string(soap, (char*const*)(void*)&ptr); break; } } #endif SOAP_FMAC3 void * SOAP_FMAC4 soap_dupelement(struct soap *soap, const void *ptr, int type) {(void)soap; (void)ptr; (void)type; /* appease -Wall -Werror */ return NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_delelement(const void *ptr, int type) {(void)ptr; (void)type; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_out_byte(struct soap *soap, const char *tag, int id, const char *a, const char *type) { return soap_outbyte(soap, tag, id, a, type, SOAP_TYPE_byte); } SOAP_FMAC3 char * SOAP_FMAC4 soap_in_byte(struct soap *soap, const char *tag, char *a, const char *type) { a = soap_inbyte(soap, tag, a, type, SOAP_TYPE_byte); return a; } SOAP_FMAC3 char * SOAP_FMAC4 soap_new_byte(struct soap *soap, int n) { char *p; char *a = (char*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(char)); for (p = a; p && n--; p++) soap_default_byte(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_byte(struct soap *soap, const char *a, const char *tag, const char *type) { if (soap_out_byte(soap, tag ? tag : "byte", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 char * SOAP_FMAC4 soap_get_byte(struct soap *soap, char *p, const char *tag, const char *type) { if ((p = soap_in_byte(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 int SOAP_FMAC4 soap_out_int(struct soap *soap, const char *tag, int id, const int *a, const char *type) { return soap_outint(soap, tag, id, a, type, SOAP_TYPE_int); } SOAP_FMAC3 int * SOAP_FMAC4 soap_in_int(struct soap *soap, const char *tag, int *a, const char *type) { a = soap_inint(soap, tag, a, type, SOAP_TYPE_int); return a; } SOAP_FMAC3 int * SOAP_FMAC4 soap_new_int(struct soap *soap, int n) { int *p; int *a = (int*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(int)); for (p = a; p && n--; p++) soap_default_int(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_int(struct soap *soap, const int *a, const char *tag, const char *type) { if (soap_out_int(soap, tag ? tag : "int", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int * SOAP_FMAC4 soap_get_int(struct soap *soap, int *p, const char *tag, const char *type) { if ((p = soap_in_int(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default__QName(soap, &a->faultcode); soap_default_string(soap, &a->faultstring); soap_default_string(soap, &a->faultactor); a->detail = NULL; a->SOAP_ENV__Code = NULL; a->SOAP_ENV__Reason = NULL; soap_default_string(soap, &a->SOAP_ENV__Node); soap_default_string(soap, &a->SOAP_ENV__Role); a->SOAP_ENV__Detail = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF soap_serialize__QName(soap, (char*const*)&a->faultcode); soap_serialize_string(soap, (char*const*)&a->faultstring); soap_serialize_string(soap, (char*const*)&a->faultactor); soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail); soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code); soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason); soap_serialize_string(soap, (char*const*)&a->SOAP_ENV__Node); soap_serialize_string(soap, (char*const*)&a->SOAP_ENV__Role); soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Fault *a, const char *type) { const char *soap_tmp_faultcode; soap_tmp_faultcode = soap_QName2s(soap, a->faultcode); (void)soap; (void)tag; (void)id; (void)a; (void)type; /* appease -Wall -Werror */ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Fault), type)) return soap->error; if (soap_out__QName(soap, "faultcode", -1, (char*const*)(void*)&soap_tmp_faultcode, "")) return soap->error; if (soap_out_string(soap, "faultstring", -1, (char*const*)&a->faultstring, "")) return soap->error; if (soap_out_string(soap, "faultactor", -1, (char*const*)&a->faultactor, "")) return soap->error; if (soap_out_PointerToSOAP_ENV__Detail(soap, "detail", -1, &a->detail, "")) return soap->error; if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", -1, &a->SOAP_ENV__Code, "")) return soap->error; if (soap_out_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", -1, &a->SOAP_ENV__Reason, "")) return soap->error; if (soap_out_string(soap, "SOAP-ENV:Node", -1, (char*const*)&a->SOAP_ENV__Node, "")) return soap->error; if (soap_out_string(soap, "SOAP-ENV:Role", -1, (char*const*)&a->SOAP_ENV__Role, "")) return soap->error; if (soap_out_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", -1, &a->SOAP_ENV__Detail, "")) return soap->error; return soap_element_end_out(soap, tag); } SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_in_SOAP_ENV__Fault(struct soap *soap, const char *tag, struct SOAP_ENV__Fault *a, const char *type) { size_t soap_flag_faultcode = 1; size_t soap_flag_faultstring = 1; size_t soap_flag_faultactor = 1; size_t soap_flag_detail = 1; size_t soap_flag_SOAP_ENV__Code = 1; size_t soap_flag_SOAP_ENV__Reason = 1; size_t soap_flag_SOAP_ENV__Node = 1; size_t soap_flag_SOAP_ENV__Role = 1; size_t soap_flag_SOAP_ENV__Detail = 1; if (soap_element_begin_in(soap, tag, 0, NULL)) return NULL; (void)type; /* appease -Wall -Werror */ a = (struct SOAP_ENV__Fault*)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Fault, sizeof(struct SOAP_ENV__Fault), NULL, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Fault(soap, a); if (soap->body && *soap->href != '#') { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_faultcode && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_in__QName(soap, "faultcode", (char**)&a->faultcode, "xsd:QName")) { soap_flag_faultcode--; continue; } } if (soap_flag_faultstring && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_in_string(soap, "faultstring", (char**)&a->faultstring, "xsd:string")) { soap_flag_faultstring--; continue; } } if (soap_flag_faultactor && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_in_string(soap, "faultactor", (char**)&a->faultactor, "xsd:string")) { soap_flag_faultactor--; continue; } } if (soap_flag_detail && soap->error == SOAP_TAG_MISMATCH) { if (soap_in_PointerToSOAP_ENV__Detail(soap, "detail", &a->detail, "")) { soap_flag_detail--; continue; } } if (soap_flag_SOAP_ENV__Code && soap->error == SOAP_TAG_MISMATCH) { if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", &a->SOAP_ENV__Code, "")) { soap_flag_SOAP_ENV__Code--; continue; } } if (soap_flag_SOAP_ENV__Reason && soap->error == SOAP_TAG_MISMATCH) { if (soap_in_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", &a->SOAP_ENV__Reason, "")) { soap_flag_SOAP_ENV__Reason--; continue; } } if (soap_flag_SOAP_ENV__Node && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_in_string(soap, "SOAP-ENV:Node", (char**)&a->SOAP_ENV__Node, "xsd:string")) { soap_flag_SOAP_ENV__Node--; continue; } } if (soap_flag_SOAP_ENV__Role && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_in_string(soap, "SOAP-ENV:Role", (char**)&a->SOAP_ENV__Role, "xsd:string")) { soap_flag_SOAP_ENV__Role--; continue; } } if (soap_flag_SOAP_ENV__Detail && soap->error == SOAP_TAG_MISMATCH) { if (soap_in_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", &a->SOAP_ENV__Detail, "")) { soap_flag_SOAP_ENV__Detail--; continue; } } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Fault, SOAP_TYPE_SOAP_ENV__Fault, sizeof(struct SOAP_ENV__Fault), 0, NULL, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_new_SOAP_ENV__Fault(struct soap *soap, int n) { struct SOAP_ENV__Fault *p; struct SOAP_ENV__Fault *a = (struct SOAP_ENV__Fault*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(struct SOAP_ENV__Fault)); for (p = a; p && n--; p++) soap_default_SOAP_ENV__Fault(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a, const char *tag, const char *type) { if (soap_out_SOAP_ENV__Fault(soap, tag ? tag : "SOAP-ENV:Fault", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_get_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Fault(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->SOAP_ENV__Text); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF soap_serialize_string(soap, (char*const*)&a->SOAP_ENV__Text); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Reason(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Reason *a, const char *type) { (void)soap; (void)tag; (void)id; (void)a; (void)type; /* appease -Wall -Werror */ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Reason), type)) return soap->error; if (soap->lang) soap_set_attr(soap, "xml:lang", soap->lang, 1); if (soap_out_string(soap, "SOAP-ENV:Text", -1, (char*const*)&a->SOAP_ENV__Text, "")) return soap->error; return soap_element_end_out(soap, tag); } SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_in_SOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason *a, const char *type) { size_t soap_flag_SOAP_ENV__Text = 1; if (soap_element_begin_in(soap, tag, 0, NULL)) return NULL; (void)type; /* appease -Wall -Werror */ a = (struct SOAP_ENV__Reason*)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), NULL, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Reason(soap, a); if (soap->body && *soap->href != '#') { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_SOAP_ENV__Text && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_in_string(soap, "SOAP-ENV:Text", (char**)&a->SOAP_ENV__Text, "xsd:string")) { soap_flag_SOAP_ENV__Text--; continue; } } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Reason, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0, NULL, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_new_SOAP_ENV__Reason(struct soap *soap, int n) { struct SOAP_ENV__Reason *p; struct SOAP_ENV__Reason *a = (struct SOAP_ENV__Reason*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(struct SOAP_ENV__Reason)); for (p = a; p && n--; p++) soap_default_SOAP_ENV__Reason(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a, const char *tag, const char *type) { if (soap_out_SOAP_ENV__Reason(soap, tag ? tag : "SOAP-ENV:Reason", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_get_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Reason(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->__any = NULL; a->__type = 0; a->fault = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF soap_markelement(soap, a->fault, a->__type); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Detail(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Detail *a, const char *type) { (void)soap; (void)tag; (void)id; (void)a; (void)type; /* appease -Wall -Werror */ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Detail), type)) return soap->error; if (soap_outliteral(soap, "-any", (char*const*)&a->__any, NULL)) return soap->error; if (soap_putelement(soap, a->fault, "fault", -1, a->__type)) return soap->error; return soap_element_end_out(soap, tag); } SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_in_SOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail *a, const char *type) { size_t soap_flag___any = 1; size_t soap_flag_fault = 1; if (soap_element_begin_in(soap, tag, 0, NULL)) return NULL; (void)type; /* appease -Wall -Werror */ a = (struct SOAP_ENV__Detail*)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), NULL, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Detail(soap, a); if (soap->body && *soap->href != '#') { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_fault && soap->error == SOAP_TAG_MISMATCH) { if ((a->fault = soap_getelement(soap, "fault", &a->__type))) { soap_flag_fault = 0; continue; } } if (soap_flag___any && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_inliteral(soap, "-any", (char**)&a->__any)) { soap_flag___any--; continue; } } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Detail, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0, NULL, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_new_SOAP_ENV__Detail(struct soap *soap, int n) { struct SOAP_ENV__Detail *p; struct SOAP_ENV__Detail *a = (struct SOAP_ENV__Detail*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(struct SOAP_ENV__Detail)); for (p = a; p && n--; p++) soap_default_SOAP_ENV__Detail(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a, const char *tag, const char *type) { if (soap_out_SOAP_ENV__Detail(soap, tag ? tag : "SOAP-ENV:Detail", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_get_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Detail(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default__QName(soap, &a->SOAP_ENV__Value); a->SOAP_ENV__Subcode = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF soap_serialize__QName(soap, (char*const*)&a->SOAP_ENV__Value); soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Code(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Code *a, const char *type) { const char *soap_tmp_SOAP_ENV__Value; soap_tmp_SOAP_ENV__Value = soap_QName2s(soap, a->SOAP_ENV__Value); (void)soap; (void)tag; (void)id; (void)a; (void)type; /* appease -Wall -Werror */ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Code), type)) return soap->error; if (soap_out__QName(soap, "SOAP-ENV:Value", -1, (char*const*)(void*)&soap_tmp_SOAP_ENV__Value, "")) return soap->error; if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", -1, &a->SOAP_ENV__Subcode, "")) return soap->error; return soap_element_end_out(soap, tag); } SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_in_SOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code *a, const char *type) { size_t soap_flag_SOAP_ENV__Value = 1; size_t soap_flag_SOAP_ENV__Subcode = 1; if (soap_element_begin_in(soap, tag, 0, NULL)) return NULL; (void)type; /* appease -Wall -Werror */ a = (struct SOAP_ENV__Code*)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), NULL, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Code(soap, a); if (soap->body && *soap->href != '#') { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_SOAP_ENV__Value && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_in__QName(soap, "SOAP-ENV:Value", (char**)&a->SOAP_ENV__Value, "xsd:QName")) { soap_flag_SOAP_ENV__Value--; continue; } } if (soap_flag_SOAP_ENV__Subcode && soap->error == SOAP_TAG_MISMATCH) { if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", &a->SOAP_ENV__Subcode, "")) { soap_flag_SOAP_ENV__Subcode--; continue; } } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Code, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0, NULL, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_new_SOAP_ENV__Code(struct soap *soap, int n) { struct SOAP_ENV__Code *p; struct SOAP_ENV__Code *a = (struct SOAP_ENV__Code*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(struct SOAP_ENV__Code)); for (p = a; p && n--; p++) soap_default_SOAP_ENV__Code(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a, const char *tag, const char *type) { if (soap_out_SOAP_ENV__Code(soap, tag ? tag : "SOAP-ENV:Code", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_get_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Code(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Header(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Header *a, const char *type) { (void)soap; (void)tag; (void)id; (void)a; (void)type; /* appease -Wall -Werror */ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Header), type)) return soap->error; return soap_element_end_out(soap, tag); } SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_in_SOAP_ENV__Header(struct soap *soap, const char *tag, struct SOAP_ENV__Header *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, NULL)) return NULL; (void)type; /* appease -Wall -Werror */ a = (struct SOAP_ENV__Header*)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Header, sizeof(struct SOAP_ENV__Header), NULL, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Header(soap, a); if (soap->body && *soap->href != '#') { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Header, SOAP_TYPE_SOAP_ENV__Header, sizeof(struct SOAP_ENV__Header), 0, NULL, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_new_SOAP_ENV__Header(struct soap *soap, int n) { struct SOAP_ENV__Header *p; struct SOAP_ENV__Header *a = (struct SOAP_ENV__Header*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(struct SOAP_ENV__Header)); for (p = a; p && n--; p++) soap_default_SOAP_ENV__Header(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a, const char *tag, const char *type) { if (soap_out_SOAP_ENV__Header(soap, tag ? tag : "SOAP-ENV:Header", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_get_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Header(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #endif SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__invoke(struct soap *soap, struct ns1__invoke *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_SOAP_ENC__string(soap, &a->_xmlData); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__invoke(struct soap *soap, const struct ns1__invoke *a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF soap_serialize_SOAP_ENC__string(soap, (char*const*)&a->_xmlData); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__invoke(struct soap *soap, const char *tag, int id, const struct ns1__invoke *a, const char *type) { (void)soap; (void)tag; (void)id; (void)a; (void)type; /* appease -Wall -Werror */ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__invoke), type)) return soap->error; if (soap_out_SOAP_ENC__string(soap, "xmlData", -1, (char*const*)&a->_xmlData, "")) return soap->error; return soap_element_end_out(soap, tag); } SOAP_FMAC3 struct ns1__invoke * SOAP_FMAC4 soap_in_ns1__invoke(struct soap *soap, const char *tag, struct ns1__invoke *a, const char *type) { size_t soap_flag__xmlData = 1; if (soap_element_begin_in(soap, tag, 0, NULL)) return NULL; (void)type; /* appease -Wall -Werror */ a = (struct ns1__invoke*)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__invoke, sizeof(struct ns1__invoke), NULL, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns1__invoke(soap, a); if (soap->body && *soap->href != '#') { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag__xmlData && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) { if (soap_in_SOAP_ENC__string(soap, NULL, (char**)&a->_xmlData, "SOAP-ENC:string")) { soap_flag__xmlData--; continue; } } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns1__invoke *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__invoke, SOAP_TYPE_ns1__invoke, sizeof(struct ns1__invoke), 0, NULL, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 struct ns1__invoke * SOAP_FMAC4 soap_new_ns1__invoke(struct soap *soap, int n) { struct ns1__invoke *p; struct ns1__invoke *a = (struct ns1__invoke*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(struct ns1__invoke)); for (p = a; p && n--; p++) soap_default_ns1__invoke(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__invoke(struct soap *soap, const struct ns1__invoke *a, const char *tag, const char *type) { if (soap_out_ns1__invoke(soap, tag ? tag : "ns1:invoke", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct ns1__invoke * SOAP_FMAC4 soap_get_ns1__invoke(struct soap *soap, struct ns1__invoke *p, const char *tag, const char *type) { if ((p = soap_in_ns1__invoke(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__invokeResponse(struct soap *soap, struct ns1__invokeResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->_invokeReturn = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__invokeResponse(struct soap *soap, const struct ns1__invokeResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF soap_serialize_PointerToSOAP_ENC__string(soap, &a->_invokeReturn); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__invokeResponse(struct soap *soap, const char *tag, int id, const struct ns1__invokeResponse *a, const char *type) { (void)soap; (void)tag; (void)id; (void)a; (void)type; /* appease -Wall -Werror */ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__invokeResponse), type)) return soap->error; if (soap_out_PointerToSOAP_ENC__string(soap, "invokeReturn", -1, &a->_invokeReturn, "")) return soap->error; return soap_element_end_out(soap, tag); } SOAP_FMAC3 struct ns1__invokeResponse * SOAP_FMAC4 soap_in_ns1__invokeResponse(struct soap *soap, const char *tag, struct ns1__invokeResponse *a, const char *type) { size_t soap_flag__invokeReturn = 1; if (soap_element_begin_in(soap, tag, 0, NULL)) return NULL; (void)type; /* appease -Wall -Werror */ a = (struct ns1__invokeResponse*)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__invokeResponse, sizeof(struct ns1__invokeResponse), NULL, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns1__invokeResponse(soap, a); if (soap->body && *soap->href != '#') { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag__invokeReturn && soap->error == SOAP_TAG_MISMATCH) { if (soap_in_PointerToSOAP_ENC__string(soap, NULL, &a->_invokeReturn, "SOAP-ENC:string")) { soap_flag__invokeReturn--; continue; } } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns1__invokeResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__invokeResponse, SOAP_TYPE_ns1__invokeResponse, sizeof(struct ns1__invokeResponse), 0, NULL, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 struct ns1__invokeResponse * SOAP_FMAC4 soap_new_ns1__invokeResponse(struct soap *soap, int n) { struct ns1__invokeResponse *p; struct ns1__invokeResponse *a = (struct ns1__invokeResponse*)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(struct ns1__invokeResponse)); for (p = a; p && n--; p++) soap_default_ns1__invokeResponse(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__invokeResponse(struct soap *soap, const struct ns1__invokeResponse *a, const char *tag, const char *type) { if (soap_out_ns1__invokeResponse(soap, tag ? tag : "ns1:invokeResponse", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct ns1__invokeResponse * SOAP_FMAC4 soap_get_ns1__invokeResponse(struct soap *soap, struct ns1__invokeResponse *p, const char *tag, const char *type) { if ((p = soap_in_ns1__invokeResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Reason)) soap_serialize_SOAP_ENV__Reason(soap, *a); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Reason *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Reason, NULL); if (id < 0) return soap->error; return soap_out_SOAP_ENV__Reason(soap, tag, id, *a, type); } SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason **a, const char *type) { (void)type; /* appease -Wall -Werror */ if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct SOAP_ENV__Reason **)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_SOAP_ENV__Reason(soap, tag, *a, type))) return NULL; } else { a = (struct SOAP_ENV__Reason **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a, const char *tag, const char *type) { if (soap_out_PointerToSOAP_ENV__Reason(soap, tag ? tag : "SOAP-ENV:Reason", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason **p, const char *tag, const char *type) { if ((p = soap_in_PointerToSOAP_ENV__Reason(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Detail)) soap_serialize_SOAP_ENV__Detail(soap, *a); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Detail *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Detail, NULL); if (id < 0) return soap->error; return soap_out_SOAP_ENV__Detail(soap, tag, id, *a, type); } SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail **a, const char *type) { (void)type; /* appease -Wall -Werror */ if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct SOAP_ENV__Detail **)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_SOAP_ENV__Detail(soap, tag, *a, type))) return NULL; } else { a = (struct SOAP_ENV__Detail **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a, const char *tag, const char *type) { if (soap_out_PointerToSOAP_ENV__Detail(soap, tag ? tag : "SOAP-ENV:Detail", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail **p, const char *tag, const char *type) { if ((p = soap_in_PointerToSOAP_ENV__Detail(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Code)) soap_serialize_SOAP_ENV__Code(soap, *a); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Code *const*a, const char *type) { char *mark; id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Code, &mark); if (id < 0) return soap->error; (void)soap_out_SOAP_ENV__Code(soap, tag, id, *a, type); soap_unmark(soap, mark); return soap->error; } SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code **a, const char *type) { (void)type; /* appease -Wall -Werror */ if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct SOAP_ENV__Code **)soap_malloc(soap, sizeof(struct SOAP_ENV__Code *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_SOAP_ENV__Code(soap, tag, *a, type))) return NULL; } else { a = (struct SOAP_ENV__Code **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a, const char *tag, const char *type) { if (soap_out_PointerToSOAP_ENV__Code(soap, tag ? tag : "SOAP-ENV:Code", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code **p, const char *tag, const char *type) { if ((p = soap_in_PointerToSOAP_ENV__Code(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #endif SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENC__string(struct soap *soap, char **const*a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENC__string)) soap_serialize_SOAP_ENC__string(soap, *a); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENC__string(struct soap *soap, const char *tag, int id, char **const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENC__string, NULL); if (id < 0) return soap->error; return soap_out_SOAP_ENC__string(soap, tag, id, *a, type); } SOAP_FMAC3 char *** SOAP_FMAC4 soap_in_PointerToSOAP_ENC__string(struct soap *soap, const char *tag, char ***a, const char *type) { (void)type; /* appease -Wall -Werror */ if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (char ***)soap_malloc(soap, sizeof(char **)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_SOAP_ENC__string(soap, tag, *a, type))) return NULL; } else { a = (char ***)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENC__string, sizeof(char *), 1, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENC__string(struct soap *soap, char **const*a, const char *tag, const char *type) { if (soap_out_PointerToSOAP_ENC__string(soap, tag ? tag : "SOAP-ENC:string", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 char *** SOAP_FMAC4 soap_get_PointerToSOAP_ENC__string(struct soap *soap, char ***p, const char *tag, const char *type) { if ((p = soap_in_PointerToSOAP_ENC__string(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENC__string(struct soap *soap, char *const*a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF (void)soap_reference(soap, *a, SOAP_TYPE_SOAP_ENC__string); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENC__string(struct soap *soap, const char *tag, int id, char *const*a, const char *type) { return soap_outstring(soap, tag, id, a, type, SOAP_TYPE_SOAP_ENC__string); } SOAP_FMAC3 char * * SOAP_FMAC4 soap_in_SOAP_ENC__string(struct soap *soap, const char *tag, char **a, const char *type) { a = soap_instring(soap, tag, a, type, SOAP_TYPE_SOAP_ENC__string, 1, 0, -1, NULL); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENC__string(struct soap *soap, char *const*a, const char *tag, const char *type) { if (soap_out_SOAP_ENC__string(soap, tag ? tag : "SOAP-ENC:string", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 char ** SOAP_FMAC4 soap_get_SOAP_ENC__string(struct soap *soap, char **p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENC__string(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__QName(struct soap *soap, char *const*a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF (void)soap_reference(soap, *a, SOAP_TYPE__QName); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out__QName(struct soap *soap, const char *tag, int id, char *const*a, const char *type) { return soap_outstring(soap, tag, id, a, type, SOAP_TYPE__QName); } SOAP_FMAC3 char * * SOAP_FMAC4 soap_in__QName(struct soap *soap, const char *tag, char **a, const char *type) { a = soap_instring(soap, tag, a, type, SOAP_TYPE__QName, 2, 0, -1, NULL); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put__QName(struct soap *soap, char *const*a, const char *tag, const char *type) { if (soap_out__QName(soap, tag ? tag : "QName", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 char ** SOAP_FMAC4 soap_get__QName(struct soap *soap, char **p, const char *tag, const char *type) { if ((p = soap_in__QName(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_string(struct soap *soap, char *const*a) { (void)soap; (void)a; /* appease -Wall -Werror */ #ifndef WITH_NOIDREF (void)soap_reference(soap, *a, SOAP_TYPE_string); #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_out_string(struct soap *soap, const char *tag, int id, char *const*a, const char *type) { return soap_outstring(soap, tag, id, a, type, SOAP_TYPE_string); } SOAP_FMAC3 char * * SOAP_FMAC4 soap_in_string(struct soap *soap, const char *tag, char **a, const char *type) { a = soap_instring(soap, tag, a, type, SOAP_TYPE_string, 1, 0, -1, NULL); return a; } SOAP_FMAC3 char * * SOAP_FMAC4 soap_new_string(struct soap *soap, int n) { char * *p; char * *a = (char **)soap_malloc((soap), (n = (n < 0 ? 1 : n)) * sizeof(char *)); for (p = a; p && n--; p++) soap_default_string(soap, p); return a; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_string(struct soap *soap, char *const*a, const char *tag, const char *type) { if (soap_out_string(soap, tag ? tag : "string", -2, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 char ** SOAP_FMAC4 soap_get_string(struct soap *soap, char **p, const char *tag, const char *type) { if ((p = soap_in_string(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } #ifdef __cplusplus } #endif #if defined(__BORLANDC__) #pragma option pop #pragma option pop #endif /* End of soapC.c */