From cd3a4d82e8e1dddd6470fc564c7d54580912f739 Mon Sep 17 00:00:00 2001 From: snowdrop Date: Wed, 2 Jun 2004 15:35:04 +0000 Subject: integrate wsdl2c and xsd2c projects --- wsdl2c/wsdl2c.c | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 56 insertions(+), 7 deletions(-) (limited to 'wsdl2c') diff --git a/wsdl2c/wsdl2c.c b/wsdl2c/wsdl2c.c index 85daa23..43d0a3c 100755 --- a/wsdl2c/wsdl2c.c +++ b/wsdl2c/wsdl2c.c @@ -1,8 +1,9 @@ #include #include #include /* parseNS */ - - +#include /* formatter sax serializer */ +#include /* formatter sax serializer */ +#include xmlXPathObjectPtr xpath_eval(xmlDocPtr doc, const char *xpath) { @@ -423,25 +424,58 @@ void wsdlParse(xmlDocPtr doc) } + +static +void usage(const char* execname); + int main(int argc, char *argv[]) { xmlDocPtr doc; xmlNodePtr cur; xmlNodePtr node; + xmlNodePtr xsdRoot; xmlNsPtr default_ns; + int i; + char outDir[1054]; + char fname[255]; if (argc < 2) { - fprintf(stderr, "usage: %s \n", argv[0]); + usage(argv[0]); return 1; } - doc = xmlParseFile(argv[1]); - if (doc == NULL ) { - fprintf(stderr,"Document not parsed successfully. \n"); - return 1; + + strcpy(outDir, "."); + + for (i=1;idoc; + } + node = xmlDocGetRootElement(doc); if (node == NULL) { @@ -458,9 +492,24 @@ int main(int argc, char *argv[]) } + if (xsdEngineRun(xsdRoot, outDir)) { + fprintf(stderr, "xsd2c engine error\n"); + return 1; + } + wsdlParse(doc); + trFreeModule(); + objFreeModule(); + xmlFreeDoc(doc); return 0; } + + +static +void usage(const char* execname) +{ + fprintf(stderr, "usage: %s -d dest \n", execname); +} \ No newline at end of file -- cgit v1.1-32-gdbae