You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by na...@apache.org on 2006/09/01 14:46:04 UTC

svn commit: r439295 [1/15] - in /webservices/axis2/trunk/c: tools/ tools/codegen/ tools/codegen/include/ tools/codegen/samples/ tools/codegen/samples/client/ tools/codegen/samples/client/calculator/ tools/codegen/samples/client/interop_test_svc/ tools/...

Author: nandika
Date: Fri Sep  1 05:45:57 2006
New Revision: 439295

URL: http://svn.apache.org/viewvc?rev=439295&view=rev
Log:
addding initial codegen code. submitted by dimuthu for his google summer of code project

Added:
    webservices/axis2/trunk/c/tools/
    webservices/axis2/trunk/c/tools/codegen/
    webservices/axis2/trunk/c/tools/codegen/AUTHORS
    webservices/axis2/trunk/c/tools/codegen/COPYING   (with props)
    webservices/axis2/trunk/c/tools/codegen/CREDITS
    webservices/axis2/trunk/c/tools/codegen/ChangeLog
    webservices/axis2/trunk/c/tools/codegen/INSTALL
    webservices/axis2/trunk/c/tools/codegen/LICENSE
    webservices/axis2/trunk/c/tools/codegen/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/NEWS
    webservices/axis2/trunk/c/tools/codegen/README
    webservices/axis2/trunk/c/tools/codegen/TODOS
    webservices/axis2/trunk/c/tools/codegen/autogen.sh   (with props)
    webservices/axis2/trunk/c/tools/codegen/build.sh
    webservices/axis2/trunk/c/tools/codegen/configure.ac
    webservices/axis2/trunk/c/tools/codegen/include/
    webservices/axis2/trunk/c/tools/codegen/include/w2c_class_loader.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_consts.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_parser.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_validator.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_config_property_loader.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_emitter.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_engine.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_engine_config_loader.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_engine_configuration.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_extension.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_file_writer.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_messages.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_properties.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_qname2name_maker.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_schema_compiler.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_schema_compiler_options.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_schema_consts.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_schema_property_loader.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_schema_writer_meta_info.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_string.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_typemapper.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_url_processor.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_writer.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_xslt_template_processor.h
    webservices/axis2/trunk/c/tools/codegen/include/w2c_xslt_utils.h
    webservices/axis2/trunk/c/tools/codegen/samples/
    webservices/axis2/trunk/c/tools/codegen/samples/client/
    webservices/axis2/trunk/c/tools/codegen/samples/client/calculator/
    webservices/axis2/trunk/c/tools/codegen/samples/client/calculator/Makefile.am   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/client/calculator/axis2_stub_calculator.c
    webservices/axis2/trunk/c/tools/codegen/samples/client/calculator/axis2_stub_calculator.h
    webservices/axis2/trunk/c/tools/codegen/samples/client/calculator/readme   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/client/calculator/test_calculator.c   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/client/interop_test_svc/
    webservices/axis2/trunk/c/tools/codegen/samples/client/interop_test_svc/Makefile.am   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/client/interop_test_svc/axis2_stub_interop_test_port_type_doc_service.c
    webservices/axis2/trunk/c/tools/codegen/samples/client/interop_test_svc/axis2_stub_interop_test_port_type_doc_service.h
    webservices/axis2/trunk/c/tools/codegen/samples/client/interop_test_svc/readme   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/client/interop_test_svc/test_svc.c   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/server/
    webservices/axis2/trunk/c/tools/codegen/samples/server/calculator/
    webservices/axis2/trunk/c/tools/codegen/samples/server/calculator/Makefile.am   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/server/calculator/axis2_skel_calculator.c
    webservices/axis2/trunk/c/tools/codegen/samples/server/calculator/axis2_skel_calculator.h
    webservices/axis2/trunk/c/tools/codegen/samples/server/calculator/axis2_svc_skel_calculator.c
    webservices/axis2/trunk/c/tools/codegen/samples/server/calculator/readme   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/server/calculator/services.xml
    webservices/axis2/trunk/c/tools/codegen/samples/server/interop_test_svc/
    webservices/axis2/trunk/c/tools/codegen/samples/server/interop_test_svc/Makefile.am   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/server/interop_test_svc/axis2_skel_interop_test_port_type_doc_service.c
    webservices/axis2/trunk/c/tools/codegen/samples/server/interop_test_svc/axis2_skel_interop_test_port_type_doc_service.h
    webservices/axis2/trunk/c/tools/codegen/samples/server/interop_test_svc/axis2_svc_skel_interop_test_port_type_doc_service.c
    webservices/axis2/trunk/c/tools/codegen/samples/server/interop_test_svc/readme   (with props)
    webservices/axis2/trunk/c/tools/codegen/samples/server/interop_test_svc/services.xml
    webservices/axis2/trunk/c/tools/codegen/src/
    webservices/axis2/trunk/c/tools/codegen/src/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/src/schema/
    webservices/axis2/trunk/c/tools/codegen/src/schema/schema-compile.properties
    webservices/axis2/trunk/c/tools/codegen/src/schema/schema_compiler.c
    webservices/axis2/trunk/c/tools/codegen/src/schema/schema_compiler_options.c
    webservices/axis2/trunk/c/tools/codegen/src/schema/schema_property_loader.c
    webservices/axis2/trunk/c/tools/codegen/src/schema/schema_writer_meta_info.c
    webservices/axis2/trunk/c/tools/codegen/src/schema/writer/
    webservices/axis2/trunk/c/tools/codegen/src/schema/writer/schema_writer.c
    webservices/axis2/trunk/c/tools/codegen/src/schema2code.c
    webservices/axis2/trunk/c/tools/codegen/src/templates/
    webservices/axis2/trunk/c/tools/codegen/src/templates/c/
    webservices/axis2/trunk/c/tools/codegen/src/templates/c/ServiceSkeleton.xsl   (with props)
    webservices/axis2/trunk/c/tools/codegen/src/templates/c/ServiceXMLTemplate.xsl   (with props)
    webservices/axis2/trunk/c/tools/codegen/src/templates/c/SkelHeaderTemplate.xsl   (with props)
    webservices/axis2/trunk/c/tools/codegen/src/templates/c/SkelSourceTemplate.xsl   (with props)
    webservices/axis2/trunk/c/tools/codegen/src/templates/c/StubHeaderTemplate.xsl   (with props)
    webservices/axis2/trunk/c/tools/codegen/src/templates/c/StubSourceTemplate.xsl   (with props)
    webservices/axis2/trunk/c/tools/codegen/src/templates/c/package.html   (with props)
    webservices/axis2/trunk/c/tools/codegen/src/typemappers/
    webservices/axis2/trunk/c/tools/codegen/src/typemappers/c.default.typemap.xml
    webservices/axis2/trunk/c/tools/codegen/src/util/
    webservices/axis2/trunk/c/tools/codegen/src/util/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/src/util/class_loader.c
    webservices/axis2/trunk/c/tools/codegen/src/util/cmdline_option.c
    webservices/axis2/trunk/c/tools/codegen/src/util/cmdline_option_parser.c
    webservices/axis2/trunk/c/tools/codegen/src/util/cmdline_option_validator.c
    webservices/axis2/trunk/c/tools/codegen/src/util/codegen-config.properties
    webservices/axis2/trunk/c/tools/codegen/src/util/config_property_loader.c
    webservices/axis2/trunk/c/tools/codegen/src/util/cqname2name_maker.c
    webservices/axis2/trunk/c/tools/codegen/src/util/file_writer.c
    webservices/axis2/trunk/c/tools/codegen/src/util/messages.c
    webservices/axis2/trunk/c/tools/codegen/src/util/properties.c
    webservices/axis2/trunk/c/tools/codegen/src/util/resource.properties
    webservices/axis2/trunk/c/tools/codegen/src/util/string.c
    webservices/axis2/trunk/c/tools/codegen/src/util/typemapper.c
    webservices/axis2/trunk/c/tools/codegen/src/util/url_processor.c
    webservices/axis2/trunk/c/tools/codegen/src/util/xslt_template_processor.c
    webservices/axis2/trunk/c/tools/codegen/src/util/xslt_utils.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/emitter/
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/emitter/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/emitter/c_emitter.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/emitter/emitter.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/emitter/w2c_emitter_protected.h
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/engine.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/engine_config_loader.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/engine_configuration.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/extensions/
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/extensions/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/extensions/c_code_indenter_ext.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/extensions/c_namemaker_ext.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/extensions/c_qname2name_ext.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/extensions/databinding_default_ext.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/extensions/default_qname2name_ext.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/cservice_xml_writer.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/cskel_header_writer.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/cskel_source_writer.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/cstub_header_writer.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/cstub_source_writer.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/csvc_skeleton_writer.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/writer.c
    webservices/axis2/trunk/c/tools/codegen/src/wsdl/writer/writer_protected.h
    webservices/axis2/trunk/c/tools/codegen/src/wsdl2code.c
    webservices/axis2/trunk/c/tools/codegen/test/
    webservices/axis2/trunk/c/tools/codegen/test/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/test/resources/
    webservices/axis2/trunk/c/tools/codegen/test/resources/codegen-config.properties
    webservices/axis2/trunk/c/tools/codegen/test/resources/wsdl/
    webservices/axis2/trunk/c/tools/codegen/test/resources/wsdl/CalculatorDoc.wsdl
    webservices/axis2/trunk/c/tools/codegen/test/resources/wsdl/InteropTestRound1Doc.wsdl
    webservices/axis2/trunk/c/tools/codegen/test/resources/wsdl/primer-hotelReservationService.wsdl
    webservices/axis2/trunk/c/tools/codegen/test/resources/xml/
    webservices/axis2/trunk/c/tools/codegen/test/resources/xml/atoms.xml
    webservices/axis2/trunk/c/tools/codegen/test/resources/xml/result1.xml
    webservices/axis2/trunk/c/tools/codegen/test/resources/xml/result2.xml
    webservices/axis2/trunk/c/tools/codegen/test/resources/xml/style1.xsl
    webservices/axis2/trunk/c/tools/codegen/test/resources/xml/style1_result.xml
    webservices/axis2/trunk/c/tools/codegen/test/resources/xml/style2.xsl
    webservices/axis2/trunk/c/tools/codegen/test/resources/xml/style2_result.xml
    webservices/axis2/trunk/c/tools/codegen/test/unit/
    webservices/axis2/trunk/c/tools/codegen/test/unit/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/main.c
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/ns2p_file
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/src/
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/src/howar/
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/src/howar/services.xml
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/w2c_engine_test.c
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/w2c_engine_test.h
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/w2c_writer_test.c
    webservices/axis2/trunk/c/tools/codegen/test/unit/codegen/w2c_writer_test.h
    webservices/axis2/trunk/c/tools/codegen/test/unit/main.c
    webservices/axis2/trunk/c/tools/codegen/test/unit/util/
    webservices/axis2/trunk/c/tools/codegen/test/unit/util/Makefile.am
    webservices/axis2/trunk/c/tools/codegen/test/unit/util/main.c
    webservices/axis2/trunk/c/tools/codegen/test/unit/util/w2c_conf_test.c
    webservices/axis2/trunk/c/tools/codegen/test/unit/util/w2c_conf_test.h
    webservices/axis2/trunk/c/tools/codegen/test/unit/util/w2c_util_test.c
    webservices/axis2/trunk/c/tools/codegen/test/unit/util/w2c_util_test.h
Modified:
    webservices/axis2/trunk/c/util/test/unit/util/Makefile.am

Added: webservices/axis2/trunk/c/tools/codegen/AUTHORS
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/AUTHORS?rev=439295&view=auto
==============================================================================
    (empty)

Added: webservices/axis2/trunk/c/tools/codegen/COPYING
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/COPYING?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/COPYING (added)
+++ webservices/axis2/trunk/c/tools/codegen/COPYING Fri Sep  1 05:45:57 2006
@@ -0,0 +1 @@
+link /usr/share/automake-1.9/COPYING
\ No newline at end of file

Propchange: webservices/axis2/trunk/c/tools/codegen/COPYING
------------------------------------------------------------------------------
    svn:special = *

Added: webservices/axis2/trunk/c/tools/codegen/CREDITS
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/CREDITS?rev=439295&view=auto
==============================================================================
    (empty)

Added: webservices/axis2/trunk/c/tools/codegen/ChangeLog
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/ChangeLog?rev=439295&view=auto
==============================================================================
    (empty)

Added: webservices/axis2/trunk/c/tools/codegen/INSTALL
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/INSTALL?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/INSTALL (added)
+++ webservices/axis2/trunk/c/tools/codegen/INSTALL Fri Sep  1 05:45:57 2006
@@ -0,0 +1,11 @@
+Getting Axis2/C Codegen source working on Linux
+=============================================
+Build the source
+This can be done using the following command sequence:
+        ./configure --with-axis2_util=<axis2/util include path>  --with-axis2_woden=<woden include path>
+        make
+        make install
+        use './configure --help' for options
+
+NOTE: If you don't provide a --prefix configure option, it will by default
+install into /usr/local/codegen directory.

Added: webservices/axis2/trunk/c/tools/codegen/LICENSE
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/LICENSE?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/LICENSE (added)
+++ webservices/axis2/trunk/c/tools/codegen/LICENSE Fri Sep  1 05:45:57 2006
@@ -0,0 +1,203 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+

Added: webservices/axis2/trunk/c/tools/codegen/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/Makefile.am?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/Makefile.am (added)
+++ webservices/axis2/trunk/c/tools/codegen/Makefile.am Fri Sep  1 05:45:57 2006
@@ -0,0 +1,3 @@
+SUBDIRS = src $(TESTDIR)
+include_HEADERS=$(top_builddir)/include/*.h
+data_DATA= INSTALL README AUTHORS NEWS CREDITS LICENSE COPYING

Added: webservices/axis2/trunk/c/tools/codegen/NEWS
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/NEWS?rev=439295&view=auto
==============================================================================
    (empty)

Added: webservices/axis2/trunk/c/tools/codegen/README
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/README?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/README (added)
+++ webservices/axis2/trunk/c/tools/codegen/README Fri Sep  1 05:45:57 2006
@@ -0,0 +1,51 @@
+
+                          Apache Axis2/C Codegen
+
+  What is it?
+  -----------
+  Apache Axis2/C Codegen is a code generation tool which is primarily developed
+  to generate both Skel and Stub code for Apache Axis2/C.  This can be extended
+  and customized very easily to generate code for any other languages. 
+  This is an effort to implement the architecture of Apache Axis2/Java codegen
+  tool in C.
+
+  This Uses
+    libxslt to handle xslt processing,
+    Apache Axiom/C to handle xml object model and
+    Apache Woden/C to WSDL processing.
+
+  Installation
+  ------------
+
+  Please see the file called INSTALL. 
+  
+  USAGE
+  -----
+  This will be installed in $AXIS2C_HOME/bin directory.
+  Go to this directory and type ./w2c -h to list usage.
+
+  Licensing
+  ---------
+
+  Please see the file called LICENSE.
+
+  Contacts
+  --------
+
+     o If you want freely available support for using Apache Axis2/C Codegen please
+       join the Apache Axis2/C user community by subscribing to users mailing
+       list, axis-c-user@ws.apache.org' as described at
+       http://ws.apache.org/axis2/c/mail-lists.html
+
+     o If you have a bug report for Apache Axis2/C Codegen please go log a Jira issue
+       at http://issues.apache.org/jira/browse/AXIS2C
+
+     o If you want to participate in actively developing Apache Axis2/C Codegen please
+       subscribe to the `axis-c-dev@ws.apache.org' mailing list as described at
+       http://ws.apache.org/axis2/c/mail-lists.html
+
+  Acknowledgments
+  ----------------
+
+  Apache Axis2/C Codegen relies heavily on the use of autoconf, automake and libtool
+  to provide a build environment.

Added: webservices/axis2/trunk/c/tools/codegen/TODOS
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/TODOS?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/TODOS (added)
+++ webservices/axis2/trunk/c/tools/codegen/TODOS Fri Sep  1 05:45:57 2006
@@ -0,0 +1,6 @@
+TODOs for the Axis2/C Code generator
+====================================
+
+* complete the schema code generator.
+* support addressing in generated code. 
+* add test code generation.

Added: webservices/axis2/trunk/c/tools/codegen/autogen.sh
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/autogen.sh?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/autogen.sh (added)
+++ webservices/axis2/trunk/c/tools/codegen/autogen.sh Fri Sep  1 05:45:57 2006
@@ -0,0 +1,43 @@
+#!/bin/bash
+
+echo -n 'Running libtoolize...'
+if libtoolize --force > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running aclocal...'
+if aclocal > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running autoheader...'
+if autoheader > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running autoconf...'
+if autoconf > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running automake...'
+if automake --add-missing > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo 'done'

Propchange: webservices/axis2/trunk/c/tools/codegen/autogen.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: webservices/axis2/trunk/c/tools/codegen/build.sh
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/build.sh?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/build.sh (added)
+++ webservices/axis2/trunk/c/tools/codegen/build.sh Fri Sep  1 05:45:57 2006
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+./autogen.sh
+
+if test -z ${AXIS2C_HOME}
+then
+    AXIS2C_HOME=`pwd`/../deploy
+fi
+
+AXIS2C=`pwd`/..
+export AXIS2C_HOME AXIS2C
+
+./configure --prefix=${AXIS2C_HOME} --enable-tests=yes --with-axis2_util=${AXIS2C_HOME}/include --with-axiom=${AXIS2C_HOME}/include --with-axis2_xml_schema=${AXIS2C_HOME}/include --with-axis2_woden=${AXIS2C_HOME}/include
+
+make
+make install

Added: webservices/axis2/trunk/c/tools/codegen/configure.ac
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/configure.ac?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/configure.ac (added)
+++ webservices/axis2/trunk/c/tools/codegen/configure.ac Fri Sep  1 05:45:57 2006
@@ -0,0 +1,199 @@
+dnl run autogen.sh to generate the configure script.
+
+AC_PREREQ(2.59)
+
+AC_INIT(codegen-src, 0.92)
+AC_CANONICAL_SYSTEM
+AM_CONFIG_HEADER(config.h)
+AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
+AC_PREFIX_DEFAULT(/usr/local/codegen)
+
+dnl Checks for programs.
+AC_PROG_CC
+AC_PROG_CXX
+AC_PROG_CPP
+AM_PROG_LIBTOOL
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+
+
+CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE"
+if test "$GCC" = "yes"; then
+    CFLAGS="$CFLAGS -ansi -Wall -Wno-implicit-function-declaration -Werror"
+fi
+LDFLAGS="-lpthread"
+
+dnl Checks for header files.
+AC_HEADER_STDC
+AC_CHECK_HEADERS([stdio.h stdlib.h string.h])
+
+dnl Checks for typedefs, structures, and compiler characteristics.
+AC_C_CONST
+
+dnl Checks for libraries
+AC_CHECK_LIB(dl, dlopen)
+AC_CHECK_LIB(z, inflate)
+AC_CHECK_LIB(cutest, CuTestInit)
+AC_CHECK_LIB(xslt, xsltApplyStylesheet)
+
+dnl Checks for library functions.
+AC_FUNC_MALLOC
+AC_FUNC_REALLOC
+AC_CHECK_FUNCS([memmove])
+
+dnl Checks for library informations
+PKG_CHECK_MODULES(LIBXML2, libxml-2.0)
+PKG_CHECK_MODULES(LIBXSLT, libxslt)
+
+
+AC_MSG_CHECKING(To Use Axis2/C Util. This is a compulsory module to build Axis2/C)
+AC_ARG_WITH(axis2_util,
+[  --with-axis2_util[=PATH]      use axis2_util.],
+[ case "$withval" in
+  no)
+    AC_MSG_RESULT(no)
+    ;;
+  *)
+    AC_MSG_RESULT(yes)
+    dnl Find axis2_util include dir in the path
+    if test -d $withval; then
+        axis2_utilinc="-I$withval"
+    dnl else find the axis2_util include dir in $(AXIS2C_HOME)/include
+    elif test -d '$(AXIS2C_HOME)/include'; then
+        axis2_utilinc="-I$(AXIS2C_HOME)/include"
+    else
+        AC_MSG_ERROR(could not find axis2_util. stop)
+    fi
+    ;;
+  esac ],
+  AC_MSG_RESULT(no)
+)
+
+AC_MSG_CHECKING(To Use AXIOM. This is a compulsory module to build Axis2/C)
+AC_ARG_WITH(axiom,
+[  --with-axiom[=PATH]      use axiom.],
+[ case "$withval" in
+  no)
+    AC_MSG_RESULT(no)
+    ;;
+  *)
+    AC_MSG_RESULT(yes)
+    dnl Find axiom include dir in the path
+    if test -d $withval; then
+        axiominc="-I$withval"
+    dnl else find the axiom include dir in $(AXIS2C_HOME)/include
+    elif test -d '$(AXIS2C_HOME)/include'; then
+        axiominc="-I$(AXIS2C_HOME)/include"
+    else
+        AC_MSG_ERROR(could not find axiom. stop)
+    fi
+    ;;
+  esac ],
+  AC_MSG_RESULT(no)
+)
+
+AC_MSG_CHECKING(To Use Xml Schema. This is a compulsory module to build Woden C and Codegen)
+AC_ARG_WITH(axis2_xml_schema,
+[  --with-axis2_xml_schema[=PATH]      use axis2_xml_schema.],
+[ case "$withval" in
+  no)
+    AC_MSG_RESULT(no)
+    ;;
+  *)
+    AC_MSG_RESULT(yes)
+    dnl Find axis2_xml_schema include dir in the path
+    if test -d $withval; then
+        axis2_xml_schemainc="-I$withval"
+    dnl else find the axis2_xml_schema include dir in $(AXIS2C_HOME)/include
+    elif test -d '$(AXIS2C_HOME)/include'; then
+        axis2_xml_schemainc="-I$(AXIS2C_HOME)/include"
+    else
+        AC_MSG_ERROR(could not find axis2_xml_schema. stop)
+    fi
+    ;;
+  esac ],
+  AC_MSG_RESULT(no)
+)
+
+AC_MSG_CHECKING(To Use Woden C. This is a compulsory module to build C Codegen)
+AC_ARG_WITH(axis2_woden,
+[  --with-axis2_woden[=PATH]      use axis2_woden.],
+[ case "$withval" in
+  no)
+    AC_MSG_RESULT(no)
+    ;;
+  *)
+    AC_MSG_RESULT(yes)
+    dnl Find axis2_woden include dir in the path
+    if test -d $withval; then
+        axis2_woden="-I$withval"
+    dnl else find the axis2_woden include dir in $(AXIS2C_HOME)/include
+    elif test -d '$(AXIS2C_HOME)/include'; then
+        axis2_woden="-I$(AXIS2C_HOME)/include"
+    else
+        AC_MSG_ERROR(could not find axis2_woden. stop)
+    fi
+    ;;
+  esac ],
+  AC_MSG_RESULT(no)
+)
+
+AC_MSG_CHECKING(whether to build tests)
+AC_ARG_ENABLE(tests,
+[  --enable-tests    build tests. default=no],
+[ case "${enableval}" in
+  no)
+    AC_MSG_RESULT(no)
+    TESTDIR=""
+    ;;
+  *)
+    AC_MSG_RESULT(yes)
+    TESTDIR="test"
+
+    ;;
+  esac ],
+  AC_MSG_RESULT(no)
+  TESTDIR=""
+)
+
+
+AXIOMINC=$axiominc
+UTILINC=$axis2_utilinc
+XMLSCHEMAINC=$axis2_xml_schemainc
+WODENINC=$axis2_wodeninc
+
+AC_SUBST(LIBXML2_CFLAGS)
+AC_SUBST(LIBXML2_LIBS)
+AC_SUBST(LIBXML2_DIR)
+
+AC_SUBST(LIBXSLT_CFLAGS)
+AC_SUBST(LIBXSLT_LIBS)
+AC_SUBST(LIBXSLT_DIR)
+
+AC_SUBST(AXIOMINC)
+AC_SUBST(UTILINC)
+AC_SUBST(XMLSCHEMAINC)
+AC_SUBST(WODENINC)
+AC_SUBST(TESTDIR)
+
+CFLAGS="$CFLAGS $LIBXML2_CFLAGS $LIBXSLT_CFLAGS"
+
+AC_CONFIG_FILES([Makefile \
+    src/Makefile \
+    src/util/Makefile \
+    src/wsdl/Makefile \
+    src/wsdl/writer/Makefile \
+    src/wsdl/emitter/Makefile \
+    src/wsdl/extensions/Makefile \
+    test/Makefile \
+    test/unit/Makefile \
+    test/unit/util/Makefile \
+    test/unit/codegen/Makefile \
+    samples/client/calculator/Makefile \
+    samples/server/calculator/Makefile \
+    samples/client/interop_test_svc/Makefile \
+    samples/server/interop_test_svc/Makefile \
+    ])
+    
+AC_OUTPUT

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_class_loader.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_class_loader.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_class_loader.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_class_loader.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_CLASS_LOADER_H
+#define W2C_CLASS_LOADER_H
+
+/**
+ * @file w2c_class_loader.h
+ * @brief handles reflection in C
+ */
+
+#include <stdio.h>
+#include <axis2_utils.h>
+#include <axis2_dll_desc.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * @defgroup w2c_class_loader handles reflection in C
+ * @ingroup w2c_utils
+ * @{
+ */  
+/* predefined paths for the codegen libraries -relative to $AXIS2C_HOME*/ 
+#define W2C_CLASS_LOADER_WRITER_PATH "/lib/codegen/"
+#define W2C_CLASS_LOADER_EXTENSION_PATH "/lib/codegen/"
+#define W2C_CLASS_LOADER_EMITTER_PATH "/lib/codegen/"
+
+/**
+ * creates/ returns a object from class name.
+ * @param env pointer to environment struct. MUST NOT be NULL
+ * @param class name
+ * @param inter_path path relative to $AXIS2C_HOME
+ * @param pdll_desc double pointer to the dll description
+ * @return the object that was created
+ */
+AXIS2_EXTERN void* AXIS2_CALL
+w2c_class_loader_get_object_from_class_name
+                         (const axis2_env_t *env,
+                          axis2_char_t *class_name,
+                          axis2_char_t *inter_path,
+                          axis2_dll_desc_t **pdll_desc);
+
+/**
+ * free the loaded class.
+ * @param env pointer to environment struct. MUST NOT be NULL
+ * @param dll_desc dll description
+ * @return AXIS2_SUCCESS on success or else AXIS2_FAILURE on failure
+ */
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+w2c_class_loader_free_loaded_class(
+                          const axis2_env_t *env,
+                          axis2_dll_desc_t *dll_desc);
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_CLASS_LOADER_H */

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,108 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_CMDLINE_OPTION_H
+#define W2C_CMDLINE_OPTION_H
+
+/**
+ * @file w2c_cmdline_option.h
+ * @brief represent command line option
+ */
+
+#include <axis2_utils.h>
+#include <axis2_array_list.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * @defgroup w2c_cmdline_option represent command line option
+ * @ingroup w2c_wsdl_utils
+ * @{
+ */
+
+typedef struct w2c_cmdline_option w2c_cmdline_option_t;
+typedef struct w2c_cmdline_option_ops w2c_cmdline_option_ops_t;
+
+AXIS2_DECLARE_DATA  struct w2c_cmdline_option_ops
+{
+   /**
+    * free w2c_cmdline_option.
+    * @param  cmdline_option pointer to cmdline_option struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+
+    axis2_status_t (AXIS2_CALL *
+    free)(w2c_cmdline_option_t *cmdline_option,
+         const axis2_env_t *env);
+
+    axis2_char_t *(AXIS2_CALL *
+    get_type)(w2c_cmdline_option_t *cmdline_option,
+          const axis2_env_t *env);
+    
+    axis2_char_t *(AXIS2_CALL *
+    get_value)(w2c_cmdline_option_t *cmdline_option,
+          const axis2_env_t *env);
+
+    axis2_array_list_t *(AXIS2_CALL *
+    get_values)(w2c_cmdline_option_t *cmdline_option,
+          const axis2_env_t *env);
+    
+};
+
+AXIS2_DECLARE_DATA  struct w2c_cmdline_option
+{
+     struct w2c_cmdline_option_ops *ops;
+};
+
+/**
+ * create a cmdline_option obj
+ * @param env Environment. MUST NOT be NULL
+ * @param type type of the cmdline argument
+ * @param values values of the cmdline argument
+ * @return newly created cmdline_option obj
+ */
+AXIS2_EXTERN w2c_cmdline_option_t* AXIS2_CALL
+w2c_cmdline_option_create_with_values( const axis2_env_t *env,
+                   axis2_char_t *type,
+                   axis2_array_list_t *values_arr );
+
+/*************************** Function macros **********************************/
+
+#define W2C_CMDLINE_OPTION_FREE(cmdline_option, env) \
+      ((cmdline_option)->ops->free (cmdline_option, env)) 
+
+#define W2C_CMDLINE_OPTION_GET_TYPE(cmdline_option, env) \
+      ((cmdline_option)->ops->get_type (cmdline_option, env ))
+
+#define W2C_CMDLINE_OPTION_GET_VALUE(cmdline_option, env) \
+      ((cmdline_option)->ops->get_value (cmdline_option, env ))
+
+#define W2C_CMDLINE_OPTION_GET_VALUES(cmdline_option, env) \
+      ((cmdline_option)->ops->get_values (cmdline_option, env))
+
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_CMDLINE_OPTION_H */

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_consts.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_consts.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_consts.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_consts.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,99 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_CMDLINE_OPTION_CONSTS_H
+#define W2C_CMDLINE_OPTION_CONSTS_H
+
+/**
+ * @file w2c_cmdline_option_consts.h
+ * @brief command line option constants
+ */
+
+#include <stdio.h>
+#include <axis2_utils.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * @defgroup w2c_cmdline_option_consts keep command line optons consts 
+ * @ingroup w2c_wsdl_utils
+ * @{
+ */    
+
+/* short option constants*/
+#define W2C_CMDLINE_OPTION_CONSTS_WSDL_LOCATION_URI "uri"
+#define W2C_CMDLINE_OPTION_CONSTS_OUTPUT_LOCATION "o"
+#define W2C_CMDLINE_OPTION_CONSTS_SERVER_SIDE_CODE "ss"
+#define W2C_CMDLINE_OPTION_CONSTS_SERVICE_DESCRIPTION "sd"
+#define W2C_CMDLINE_OPTION_CONSTS_ASYNC_ONLY "a"
+#define W2C_CMDLINE_OPTION_CONSTS_SYNC_ONLY "s"
+#define W2C_CMDLINE_OPTION_CONSTS_PACKAGE "p"
+#define W2C_CMDLINE_OPTION_CONSTS_STUB_LANGUAGE "l"
+#define W2C_CMDLINE_OPTION_CONSTS_GENERATE_TEST_CASE "t"
+#define W2C_CMDLINE_OPTION_CONSTS_DATA_BINDING_TYPE "d"
+#define W2C_CMDLINE_OPTION_CONSTS_UNPACK_CLASSES "u"
+#define W2C_CMDLINE_OPTION_CONSTS_GENERATE_ALL "g"
+#define W2C_CMDLINE_OPTION_CONSTS_PORT_NAME "pn"
+#define W2C_CMDLINE_OPTION_CONSTS_SERVICE_NAME "sn"
+#define W2C_CMDLINE_OPTION_CONSTS_REPOSITORY_PATH "r"
+#define W2C_CMDLINE_OPTION_CONSTS_NAME_SPACE_TO_PACKAGE "ns2p"
+#define W2C_CMDLINE_OPTION_CONSTS_SERVER_SIDE_INTERFACE "ssi"
+#define W2C_CMDLINE_OPTION_CONSTS_EXTERNAL_MAPPING "em"
+#define W2C_CMDLINE_OPTION_CONSTS_WSDL_VERSION "wv"
+#define W2C_CMDLINE_OPTION_CONSTS_FLATTEN_FILES "f"
+#define W2C_CMDLINE_OPTION_CONSTS_CONVERT_NAMES "cn"
+#define W2C_CMDLINE_OPTION_CONSTS_INDENT_CODE "id"
+
+/* long option constants */
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_OUTPUT_LOCATION "output"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_SERVER_SIDE_CODE "server-side"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_SERVICE_DESCRIPTION "service-description"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_ASYNC_ONLY "async"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_SYNC_ONLY "sync"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_PACKAGE "package"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_STUB_LANGUAGE "language"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_GENERATE_TEST_CASE "test-case"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_DATA_BINDING_TYPE "databinding-method"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_UNPACK_CLASSES "unpack-classes"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_GENERATE_ALL "generate-all"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_PORT_NAME "port-name"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_SERVICE_NAME "service-name"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_REPOSITORY_PATH "repository-path"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_NAME_SPACE_TO_PACKAGE "namespace2package"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_SERVER_SIDE_INTERFACE "serverside-interface"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_EXTERNAL_MAPPING "external-mapping"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_WSDL_VERSION "wsdl-version"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_FLATTEN_FILES "flatten-files"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_CONVERT_NAMES "convert-names"
+#define W2C_CMDLINE_OPTION_CONSTS_LONG_INDENT_CODE "indent-code"
+
+#define W2C_CMDLINE_OPTION_CONSTS_INVALID "INVALID_OPTION"
+#define W2C_CMDLINE_OPTION_CONSTS_EXTRA_OPTIONTYPE_PREFIX  "E"
+
+#define W2C_CMDLINE_OPTION_CONSTS_WSDL_VERSION_2  "2.0"
+#define W2C_CMDLINE_OPTION_CONSTS_WSDL_VERSION_2_OPTIONAL  "2"
+#define W2C_CMDLINE_OPTION_CONSTS_WSDL_VERSION_1  "1.1"
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_CMDLINE_OPTION_CONSTS_H */

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_parser.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_parser.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_parser.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_parser.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,112 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_CMDLINE_OPTION_PARSER_H
+#define W2C_CMDLINE_OPTION_PARSER_H
+
+/**
+ * @file w2c_cmdline_option_parser.h
+ * @brief parse command line options
+ */
+
+#include <axis2_utils.h>
+#include <axis2_hash.h>
+#include <axis2_array_list.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * @defgroup w2c_cmdline_option_parser parse command line options
+ * @ingroup w2c_wsdl_utils
+ * @{
+ */
+
+typedef struct w2c_cmdline_option_parser w2c_cmdline_option_parser_t;
+typedef struct w2c_cmdline_option_parser_ops w2c_cmdline_option_parser_ops_t;
+
+AXIS2_DECLARE_DATA  struct w2c_cmdline_option_parser_ops
+{
+   /**
+    * free w2c_cmdline_option_parser.
+    * @param  cmdline_option_parser pointer to cmdline_option_parser struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+    axis2_status_t (AXIS2_CALL *
+    free)(w2c_cmdline_option_parser_t *cmdline_option_parser,
+         const axis2_env_t *env);
+
+   /**
+    * retrieve all options hash.
+    * @param  cmdline_option_parser pointer to cmdline_option_parser struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return hash of options
+    */
+    axis2_hash_t* (AXIS2_CALL *
+    get_options)(w2c_cmdline_option_parser_t *cmdline_option_parser,
+          const axis2_env_t *env);
+    
+   /**
+    * retrieve list of invalid optoins.
+    * @param  cmdline_option_parser pointer to cmdline_option_parser struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return list of invalid options
+    */
+    axis2_array_list_t* (AXIS2_CALL *
+    get_invalid_options)(w2c_cmdline_option_parser_t *cmdline_option_parser,
+          const axis2_env_t *env);
+
+};
+
+AXIS2_DECLARE_DATA  struct w2c_cmdline_option_parser
+{
+    struct w2c_cmdline_option_parser_ops *ops;
+};
+
+/**
+ * create a cmdline_option_parser obj.
+ * @param env Environment. MUST NOT be NULL
+ * @param argc length of the array
+ * @param argv string arrays of args
+ * @return newly created cmdline_option_parser obj
+ */
+AXIS2_EXTERN w2c_cmdline_option_parser_t* AXIS2_CALL
+w2c_cmdline_option_parser_create(const axis2_env_t *env,
+                   int argc,
+                   axis2_char_t **argv);
+
+/*************************** Function macros **********************************/
+
+#define W2C_CMDLINE_OPTION_PARSER_FREE(cmdline_option_parser, env) \
+      ((cmdline_option_parser)->ops->free (cmdline_option_parser, env))
+
+#define W2C_CMDLINE_OPTION_PARSER_GET_OPTIONS(cmdline_option_parser, env) \
+      ((cmdline_option_parser)->ops->get_options (cmdline_option_parser, env ))
+
+#define W2C_CMDLINE_OPTION_PARSER_GET_INVALID_OPTIONS(cmdline_option_parser, env) \
+      ((cmdline_option_parser)->ops->get_invalid_options(cmdline_option_parser, env ))
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_CMDLINE_OPTION_PARSER_H */

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_validator.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_validator.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_validator.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_cmdline_option_validator.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,59 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_CMDLINE_OPTION_VALIDATOR_H
+#define W2C_CMDLINE_OPTION_VALIDATOR_H
+
+/**
+ * @file w2c_cmdline_option_validator.h
+ * @brief handles Axis2/C w2c command line option validation
+ */
+
+#include <axis2_utils.h>
+#include <w2c_cmdline_option.h>
+
+#ifdef __cplusplus
+
+extern "C"
+{
+#endif
+
+/** 
+ * @defgroup w2c_cmdline_option_validator commnadline option validator IF
+ * @ingroup w2c_wsdl_utils
+ * @{
+ */    
+
+
+/**
+ * validate the command line option.
+ * @param env double pointer to environment struct. MUST NOT be NULL
+ * @param option option to validate
+ * @return validation sucess:AXIS2_FALSE otherwise:AXIS2_TRUE
+ */
+
+AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+w2c_cmdline_option_validator_isinvalid( 
+    const axis2_env_t *env,
+    w2c_cmdline_option_t *option);
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_CMDLINE_OPTION_VALIDATOR_H */

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_config_property_loader.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_config_property_loader.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_config_property_loader.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_config_property_loader.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,270 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_CONFIG_PROPERTY_LOADER_H
+#define W2C_CONFIG_PROPERTY_LOADER_H
+
+/**
+ * @file w2c_config_property_loader.h
+ * @brief represent command line option
+ */
+
+#include <axis2_utils.h>
+#include <axis2_array_list.h>
+#include <axis2_hash.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * @defgroup w2c_config_property_loader represent command line option
+ * @ingroup w2c_wsdl_utils
+ * @{
+ */
+
+typedef struct w2c_config_property_loader w2c_config_property_loader_t;
+typedef struct w2c_config_property_loader_ops w2c_config_property_loader_ops_t;
+
+AXIS2_DECLARE_DATA  struct w2c_config_property_loader_ops
+{
+   /**
+    * free w2c_config_property_loader.
+    * @param  config_property_loader pointer to config_property_loader struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+    axis2_status_t (AXIS2_CALL *
+    free)(w2c_config_property_loader_t *config_property_loader,
+         const axis2_env_t *env);
+
+   /**
+    * change the filename of the loader
+    * just sets the filame should call reload to reload the properties.
+    * @param  config_property_loader pointer to config_property_loader struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+    axis2_status_t (AXIS2_CALL *
+    set_filename)(w2c_config_property_loader_t *config_property_loader,
+         const axis2_env_t *env, axis2_char_t *filename);
+
+    /**
+    * reload the properties.
+    * @param  config_property_loader pointer to config_property_loader struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+    axis2_status_t (AXIS2_CALL *
+    reload )(w2c_config_property_loader_t *config_property_loader,
+         const axis2_env_t *env);
+    
+    /**
+     * Gets the test object support template. This is used in the
+     * generated test class.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_char_t*.
+     */
+    axis2_char_t* (AXIS2_CALL* 
+    get_test_object_template_name )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the databinder template name. This is the template that has the
+     * logic for creating the databind supporters.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_char_t*.
+     */
+    axis2_char_t* (AXIS2_CALL*
+    get_db_supporter_template_name )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    /**
+     * Gets the extension class names.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_array_list_t*.
+     */
+    axis2_array_list_t* (AXIS2_CALL* 
+    get_extension_class_names )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+     /**
+     * Gets the post extension class names.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_array_list_t*.
+     */
+    axis2_array_list_t* (AXIS2_CALL* 
+    get_post_extension_class_names )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the third party schema names list.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_array_list_t*.
+     */
+    axis2_array_list_t* (AXIS2_CALL* 
+    get_third_party_schema_names )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the language type names.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_array_list_t*.
+     */
+    axis2_array_list_t* (AXIS2_CALL* 
+    get_language_types )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the emitter names map keys with the language name.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_hash_t*.
+     */
+    axis2_hash_t* (AXIS2_CALL* 
+    get_language_emitter_map )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the default language name.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_char_t*.
+     */
+    axis2_char_t* (AXIS2_CALL* 
+    get_default_language )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the language specific properties.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_hash_t*.
+     */
+    axis2_hash_t* (AXIS2_CALL* 
+    get_language_specific_properties_map )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the databinding framework names.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_array_list_t*.
+     */
+    axis2_array_list_t* (AXIS2_CALL* 
+    get_databinding_framework_names )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the extensions map for the databinding frameworks.
+     * The entries are keys by the framework name.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_hash_t*.
+     */
+    axis2_hash_t* (AXIS2_CALL* 
+    get_databinding_framework_name_to_extension_map )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+    
+    /**
+     * Gets the default DB framwork name.
+     * @param  env Environment. MUST NOT be NULL
+     * @return Returns axis2_char_t*.
+     */
+    axis2_char_t* (AXIS2_CALL* 
+    get_default_db_framework_name )(
+        w2c_config_property_loader_t *config_property_loader,
+        const axis2_env_t *env);
+};
+
+AXIS2_DECLARE_DATA  struct w2c_config_property_loader
+{
+     struct w2c_config_property_loader_ops *ops;
+};
+
+/**
+ * create a config_property_loader obj
+ * @param env Environment. MUST NOT be NULL
+ * @return newly created config_property_loader obj
+ */
+AXIS2_EXTERN w2c_config_property_loader_t* AXIS2_CALL
+w2c_config_property_loader_create( const axis2_env_t *env);
+
+/*************************** Function macros **********************************/
+
+#define W2C_CONFIG_PROPERTY_LOADER_FREE(config_property_loader, env) \
+      ((config_property_loader)->ops->free (config_property_loader, env)) 
+
+#define W2C_CONFIG_PROPERTY_LOADER_SET_FILENAME(config_property_loader, env, filename) \
+      ((config_property_loader)->ops->set_filename (config_property_loader, env, filename)) 
+
+#define W2C_CONFIG_PROPERTY_LOADER_RELOAD(config_property_loader, env) \
+      ((config_property_loader)->ops->reload (config_property_loader, env)) 
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_TEST_OBJECT_TEMPLATE_NAME (config_property_loader, env) \
+      ((config_property_loader)->ops->get_test_object_template_name  (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_DB_SUPPORTER_TEMPLATE_NAME (config_property_loader, env) \
+      ((config_property_loader)->ops->get_db_supporter_template_name  (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_EXTENSION_CLASS_NAMES(config_property_loader, env) \
+      ((config_property_loader)->ops->get_extension_class_names (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_POST_EXTENSION_CLASS_NAMES(config_property_loader, env) \
+      ((config_property_loader)->ops->get_post_extension_class_names (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_THIRD_PARTY_SCHEMA_NAMES(config_property_loader, env) \
+      ((config_property_loader)->ops->get_third_party_schema_names (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_LANGUAGE_TYPES (config_property_loader, env) \
+      ((config_property_loader)->ops->get_language_types  (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_LANGUAGE_EMITTER_MAP(config_property_loader, env) \
+      ((config_property_loader)->ops->get_language_emitter_map (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_DEFAULT_LANGUAGE(config_property_loader, env) \
+      ((config_property_loader)->ops->get_default_language (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_LANGUAGE_SPECIFIC_PROPERTIES_MAP(config_property_loader, env) \
+      ((config_property_loader)->ops->get_language_specific_properties_map (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_DATABINDING_FARMEWORK_NAMES(config_property_loader, env) \
+      ((config_property_loader)->ops->get_databinding_framework_names (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_DATABIDNING_FRAMEWORK_NAME_TO_EXTENSION_MAP(config_property_loader, env) \
+      ((config_property_loader)->ops->get_databinding_framework_name_to_extension_map (config_property_loader, env))
+
+#define W2C_CONFIG_PROPERTY_LOADER_GET_DEFAULT_DB_FRMAEWORK_NAME(config_property_loader, env) \
+      ((config_property_loader)->ops->get_default_db_framework_name (config_property_loader, env))
+
+
+
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_CONFIG_PROPERTY_LOADER_H */

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_emitter.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_emitter.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_emitter.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_emitter.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,118 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_EMITTER_H
+#define W2C_EMITTER_H
+
+/**
+ * @file w2c_emitter.h
+ * @brief represent command line option
+ */
+
+#include <axis2_utils.h>
+#include <w2c_engine_configuration.h>
+#include <w2c_config_property_loader.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * @defgroup w2c_emitter represent command line option
+ * @ingroup w2c_wsdl_utils
+ * @{
+ */
+
+typedef struct w2c_emitter w2c_emitter_t;
+typedef struct w2c_emitter_ops w2c_emitter_ops_t;
+
+AXIS2_DECLARE_DATA  struct w2c_emitter_ops
+{
+   /**
+    * free w2c_emitter.
+    * @param  emitter pointer to emitter struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+    axis2_status_t (AXIS2_CALL *
+    free)(w2c_emitter_t *emitter,
+         const axis2_env_t *env);
+
+   /**
+    * pass configurations and properties.
+    * @param  emitter pointer to emitter struct
+    * @param  env Environment. MUST NOT be NULL
+    * @config configurations derived from user options
+    * @loader loaded configuration properties
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+    axis2_status_t (AXIS2_CALL *
+    set_config)(w2c_emitter_t *emitter,
+          const axis2_env_t *env,
+          w2c_engine_configuration_t *config,
+          w2c_config_property_loader_t *loader );
+ 
+   /**
+    * emit skeleton code.
+    * @param  emitter pointer to emitter struct
+    * @param  env Environment. MUST NOT be NULL
+    */
+    axis2_status_t (AXIS2_CALL *
+    emit_skel)(w2c_emitter_t *emitter,
+          const axis2_env_t *env);
+  
+   /**
+    * emit stub code.
+    * @param  emitter pointer to emitter struct
+    * @param  env Environment. MUST NOT be NULL
+    */
+    axis2_status_t (AXIS2_CALL *
+    emit_stub)(w2c_emitter_t *emitter,
+          const axis2_env_t *env);
+
+};
+
+AXIS2_DECLARE_DATA  struct w2c_emitter
+{
+     struct w2c_emitter_ops *ops;
+};
+
+/** this is an interface for emitter */
+
+/*************************** Function macros **********************************/
+
+#define W2C_EMITTER_FREE(emitter, env) \
+      ((emitter)->ops->free (emitter, env)) 
+
+#define W2C_EMITTER_SET_CONFIG(emitter, env, config, loader) \
+      ((emitter)->ops->set_config(emitter, env, config, loader))
+
+#define W2C_EMITTER_EMIT_SKEL(emitter, env) \
+      ((emitter)->ops->emit_skel(emitter, env ))
+
+#define W2C_EMITTER_EMIT_STUB(emitter, env) \
+      ((emitter)->ops->emit_stub(emitter, env ))
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_EMITTER_H */

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_engine.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_engine.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_engine.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_engine.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,98 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_ENGINE_H
+#define W2C_ENGINE_H
+
+/**
+ * @file w2c_engine.h
+ * @brief represent command line option
+ */
+
+#include <axis2_utils.h>
+#include <w2c_cmdline_option_parser.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * @defgroup w2c_engine represent command line option
+ * @ingroup w2c_wsdl_utils
+ * @{
+ */
+
+typedef struct w2c_engine w2c_engine_t;
+typedef struct w2c_engine_ops w2c_engine_ops_t;
+
+AXIS2_DECLARE_DATA  struct w2c_engine_ops
+{
+   /**
+    * free w2c_engine.
+    * @param  engine pointer to engine struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+    axis2_status_t (AXIS2_CALL *
+    free)(w2c_engine_t *engine,
+         const axis2_env_t *env);
+
+   /**
+    * signal to generate the code.
+    * @param  engine pointer to engine struct
+    * @param  env Environment. MUST NOT be NULL
+    * @return status of the op. AXIS2_SUCCESS on success
+    *     else AXIS2_FAILURE
+    */
+    axis2_status_t (AXIS2_CALL *
+    generate)(w2c_engine_t *engine,
+          const axis2_env_t *env);
+    
+
+};
+
+AXIS2_DECLARE_DATA  struct w2c_engine
+{
+     struct w2c_engine_ops *ops;
+};
+
+/**
+ * create a engine obj.
+ * @param env Environment. MUST NOT be NULL
+ * @param parser user options parser
+ * @return newly created engine obj
+ */
+AXIS2_EXTERN w2c_engine_t* AXIS2_CALL
+w2c_engine_create_with_parser( const axis2_env_t *env,
+                   w2c_cmdline_option_parser_t *parser );
+
+/*************************** Function macros **********************************/
+
+#define W2C_ENGINE_FREE(engine, env) \
+      ((engine)->ops->free (engine, env)) 
+
+#define W2C_ENGINE_GENERATE(engine, env) \
+      ((engine)->ops->generate(engine, env ))
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_ENGINE_H */

Added: webservices/axis2/trunk/c/tools/codegen/include/w2c_engine_config_loader.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/codegen/include/w2c_engine_config_loader.h?rev=439295&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/codegen/include/w2c_engine_config_loader.h (added)
+++ webservices/axis2/trunk/c/tools/codegen/include/w2c_engine_config_loader.h Fri Sep  1 05:45:57 2006
@@ -0,0 +1,60 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+  
+#ifndef W2C_ENGINE_CONFIG_LOADER_H
+#define W2C_ENGINE_CONFIG_LOADER_H
+
+/**
+ * @file w2c_engine_config_loader.h
+ * @brief handles Axis2/C w2c config loading
+ */
+
+#include <axis2_utils.h>
+#include <axis2_hash.h>
+#include <w2c_engine_configuration.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * @defgroup w2c_engine_config_loader handles loading configurations
+ * @ingroup w2c_utils
+ * @{
+ */    
+
+/**
+ * set configurations according to the user options.
+ * @param env         pointer to environment struct. MUST NOT be NULL
+ * @param conf        engine configurations -> derived from options.
+ * @param options_map user options
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+w2c_engine_config_loader_load_config( 
+    const axis2_env_t *env,
+    w2c_engine_configuration_t *conf,
+    axis2_hash_t *option_map );
+
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* W2C_ENGINE_CONFIG_LOADER_H */



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org