summaryrefslogtreecommitdiff
path: root/ext/soap/php_sdl.h
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2004-02-06 11:56:03 +0000
committerDmitry Stogov <dmitry@php.net>2004-02-06 11:56:03 +0000
commit88c1168941e03b7ac0728002bbf0fc39f6c62d20 (patch)
tree2666807e323c5aa58e180dc619899bb7bdfa3b40 /ext/soap/php_sdl.h
parent2cf588a0a9f4f7757e7e8057c1953d78384aefd2 (diff)
downloadphp-git-88c1168941e03b7ac0728002bbf0fc39f6c62d20.tar.gz
Free XML documents after WSDL parsing (they no longer need).
Diffstat (limited to 'ext/soap/php_sdl.h')
-rw-r--r--ext/soap/php_sdl.h23
1 files changed, 19 insertions, 4 deletions
diff --git a/ext/soap/php_sdl.h b/ext/soap/php_sdl.h
index 221c7e03ef..4b53b2b295 100644
--- a/ext/soap/php_sdl.h
+++ b/ext/soap/php_sdl.h
@@ -36,20 +36,31 @@
#define SOAP_LITERAL 2
struct _sdl {
- HashTable docs; /* pointer to the parsed xml file */
HashTable functions; /* array of sdlFunction */
HashTable *types; /* array of sdlTypesPtr */
HashTable *elements; /* array of sdlTypesPtr */
HashTable *encoders; /* array of encodePtr */
HashTable *bindings; /* array of sdlBindings (key'd by name) */
HashTable *requests; /* array of sdlFunction (references) */
- HashTable *attributes; /* array of sdlAttributePtr */
- HashTable *attributeGroups; /* array of sdlTypesPtr */
HashTable *groups; /* array of sdlTypesPtr */
char *target_ns;
char *source;
};
+typedef struct sdlCtx {
+ sdlPtr sdl;
+
+ HashTable docs; /* array of xmlDocPtr */
+
+ HashTable messages; /* array of xmlNodePtr */
+ HashTable bindings; /* array of xmlNodePtr */
+ HashTable portTypes; /* array of xmlNodePtr */
+ HashTable services; /* array of xmlNodePtr */
+
+ HashTable *attributes; /* array of sdlAttributePtr */
+ HashTable *attributeGroups; /* array of sdlTypesPtr */
+} sdlCtx;
+
struct _sdlBinding {
char *name;
char *location;
@@ -192,6 +203,10 @@ typedef enum _sdlForm {
XSD_FORM_UNQUALIFIED
} sdlForm;
+typedef struct _sdlExtraAttribute {
+ char *ns;
+ char *val;
+} sdlExtraAttribute, *sdlExtraAttributePtr;
struct _sdlAttribute {
char *name;
@@ -200,7 +215,7 @@ struct _sdlAttribute {
char *fixed;
sdlForm form;
sdlUse use;
- HashTable *extraAttributes; /* array of xmlNodePtr */
+ HashTable *extraAttributes; /* array of sdlExtraAttribute */
encodePtr encode;
};