Author: ajith
Date: Tue Jul 26 00:04:26 2005
New Revision: 225244

URL: http://svn.apache.org/viewcvs?rev=225244&view=rev
Log:
1. The use of OMXMLBuilderFactory has been removed from the template
2. Some minor refactoring to make the code efficient and introduced a new 
constructor to the code generation engine
3. Slightly modified the XMLBeans extension.

Modified:
    
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/CodeGenerationEngine.java
    
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/PackageFinder.java
    
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/XMLBeansExtension.java
    
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/template/java/XMLBeansSupporterTemplate.xsl

Modified: 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/CodeGenerationEngine.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/CodeGenerationEngine.java?rev=225244&r1=225243&r2=225244&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/CodeGenerationEngine.java
 (original)
+++ 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/CodeGenerationEngine.java
 Tue Jul 26 00:04:26 2005
@@ -45,7 +45,10 @@
 

     private CodeGenConfiguration configuration;

 

-

+    public CodeGenerationEngine(CodeGenConfiguration config) throws 
CodeGenerationException{

+       this.configuration = config;

+        loadExtensions();

+    }

     public CodeGenerationEngine(CommandLineOptionParser parser) throws 
CodeGenerationException {

         WSDLDescription wom;

         try {

@@ -57,6 +60,12 @@
         }

 

         this.configuration = new CodeGenConfiguration(wom, parser);

+        loadExtensions();

+

+

+    }

+

+    private void loadExtensions() {

         AxisBindingBuilder axisBindingBuilder = new AxisBindingBuilder();

         axisBindingBuilder.init(this.configuration);

         axisBindingBuilder.engage();

@@ -78,31 +87,37 @@
 

     public void generate() throws CodeGenerationException {

 

-        for (int i = 0; i < this.moduleEndpoints.size(); i++) {

-            ((CodeGenExtension) this.moduleEndpoints.get(i)).engage();

-        }

-

-        Emitter emitter = null;

-        TypeMapper mapper = configuration.getTypeMapper();

-

-        switch (configuration.getOutputLanguage()) {

-            case XSLTConstants.LanguageTypes.JAVA:

-                emitter = new JavaEmitter(this.configuration, mapper);

-                break;

-            case XSLTConstants.LanguageTypes.C_SHARP:

-                emitter = new CSharpEmitter(this.configuration, mapper);

-                break;

-            case XSLTConstants.LanguageTypes.C_PLUS_PLUS:

-            case XSLTConstants.LanguageTypes.VB_DOT_NET:

-

-            default:

-                throw new UnsupportedOperationException();

-

+        try {

+            for (int i = 0; i < this.moduleEndpoints.size(); i++) {

+                ((CodeGenExtension) this.moduleEndpoints.get(i)).engage();

+            }

+

+            Emitter emitter = null;

+            TypeMapper mapper = configuration.getTypeMapper();

+

+            switch (configuration.getOutputLanguage()) {

+                case XSLTConstants.LanguageTypes.JAVA:

+                    emitter = new JavaEmitter(this.configuration, mapper);

+                    break;

+                case XSLTConstants.LanguageTypes.C_SHARP:

+                    emitter = new CSharpEmitter(this.configuration, mapper);

+                    break;

+                case XSLTConstants.LanguageTypes.C_PLUS_PLUS:

+                case XSLTConstants.LanguageTypes.VB_DOT_NET:

+

+                default:

+                    throw new UnsupportedOperationException();

+

+            }

+            if (this.configuration.isServerSide())

+                emitter.emitSkeleton();

+            else

+                emitter.emitStub();

+        } catch (Exception e) {

+            //System.out.println("Thrown here 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");

+            e.printStackTrace();  //To change body of catch statement use File 
| Settings | File Templates.

+            throw new CodeGenerationException(e);

         }

-        if (this.configuration.isServerSide())

-            emitter.emitSkeleton();

-        else

-            emitter.emitStub();

 

 

     }


Modified: 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/PackageFinder.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/PackageFinder.java?rev=225244&r1=225243&r2=225244&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/PackageFinder.java
 (original)
+++ 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/PackageFinder.java
 Tue Jul 26 00:04:26 2005
@@ -35,12 +35,7 @@
     }

 

     public void engage() {

-        Map allOptions = this.configuration.getParser().getAllOptions();

-        CommandLineOption packageOption = (CommandLineOption) (allOptions.get(

-                CommandLineOptionConstants.PACKAGE_OPTION));

-        String packageName = packageOption == null ?

-                null : packageOption.getOptionValue();

-

+        String packageName = this.configuration.getPackageName();

         if (packageName == null) {

             WSDLBinding binding = configuration.getWom().getBinding(

                     AxisBindingBuilder.AXIS_BINDING_QNAME);


Modified: 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/XMLBeansExtension.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/XMLBeansExtension.java?rev=225244&r1=225243&r2=225244&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/XMLBeansExtension.java
 (original)
+++ 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/codegen/extension/XMLBeansExtension.java
 Tue Jul 26 00:04:26 2005
@@ -43,7 +43,7 @@
 */

 

 public class XMLBeansExtension extends AbstractCodeGenerationExtension {

-    private static final String DEFUALT_STS_NAME = "foo";

+    private static final String DEFAULT_STS_NAME = "foo";

 

 

     public void init(CodeGenConfiguration configuration) {

@@ -51,75 +51,81 @@
     }

 

     public void engage() {

-        WSDLTypes typesList = configuration.getWom().getTypes();

-        if (typesList == null) {

-            //there are no types to be code generated

-            return;

-        }

-        List typesArray = typesList.getExtensibilityElements();

-        WSDLExtensibilityElement extensiblityElt = null;

-        XmlObject[] xmlObjects = new XmlObject[typesArray.size()];

-

-        for (int i = 0; i < typesArray.size(); i++) {

-            extensiblityElt = (WSDLExtensibilityElement) typesArray.get(i);

-            if (ExtensionConstants.SCHEMA.equals(extensiblityElt.getType())) {

-                try {

-                    Element schemaElement = ((Schema) 
extensiblityElt).getElelment();

+        try {

+            WSDLTypes typesList = configuration.getWom().getTypes();

+            if (typesList == null) {

+                //there are no types to be code generated

+                return;

+            }

+            List typesArray = typesList.getExtensibilityElements();

+            WSDLExtensibilityElement extensiblityElt = null;

+            XmlObject[] xmlObjects = new XmlObject[typesArray.size()];

+

+            for (int i = 0; i < typesArray.size(); i++) {

+                extensiblityElt = (WSDLExtensibilityElement) typesArray.get(i);

+

+                if 
(ExtensionConstants.SCHEMA.equals(extensiblityElt.getType())) {

+

+                    try {

+                        Element schemaElement = ((Schema) 
extensiblityElt).getElelment();

+                        System.out.println("schemaElement = " + schemaElement);

 //                    //add the namespaces

-                    XmlOptions options = new XmlOptions();

-                    options.setCompileDownloadUrls();

-                    options.setLoadAdditionalNamespaces(

-                            configuration.getWom().getNamespaces());

-                    //options.

-                    xmlObjects[i] =

-                            XmlObject.Factory.parse(schemaElement, options);

-                } catch (XmlException e) {

-                    throw new RuntimeException(e);

+                        XmlOptions options = new XmlOptions();

+                        options.setCompileDownloadUrls();

+                        options.setLoadAdditionalNamespaces(

+                                configuration.getWom().getNamespaces());

+                        //options.

+                        xmlObjects[i] =

+                                XmlObject.Factory.parse(schemaElement, 
options);

+                    } catch (Exception e) {

+

+                        throw new RuntimeException(e);

+                    }

                 }

             }

-        }

 

-        final File outputFolder = configuration.getOutputLocation();

+            final File outputFolder = configuration.getOutputLocation();

 

-        try {

+            try {

+                SchemaTypeSystem sts = 
XmlBeans.compileXmlBeans(DEFAULT_STS_NAME, null,

+                        xmlObjects,

+                        new BindingConfig(), XmlBeans.getContextTypeLoader(),

+                        new Filer() {

+                            public OutputStream createBinaryFile(String 
typename)

+                                    throws IOException {

+                                File file = new File(outputFolder, typename);

+                                file.getParentFile().mkdirs();

+                                file.createNewFile();

+                                return new FileOutputStream(file);

+                            }

+

+                            public Writer createSourceFile(String typename)

+                                    throws IOException {

+                                typename =

+                                        typename.replace('.', 
File.separatorChar);

+                                File file = new File(outputFolder,

+                                        typename + ".java");

+                                file.getParentFile().mkdirs();

+                                file.createNewFile();

+                                return new FileWriter(file);

+                            }

+                        }, null);

+

+                //create the type mapper

+                JavaTypeMapper mapper = new JavaTypeMapper();

+                SchemaType[] types = sts.documentTypes();

+

+                for (int i = 0; i < types.length; i++) {

+                    mapper.addTypeMapping(types[i].getDocumentElementName(),

+                            types[i].getFullJavaName());

+                }

+                //set the type mapper to the config

+                configuration.setTypeMapper(mapper);

 

-            SchemaTypeSystem sts = XmlBeans.compileXmlBeans(DEFUALT_STS_NAME, 
null,

-                    xmlObjects,

-                    new BindingConfig(), XmlBeans.getContextTypeLoader(),

-                    new Filer() {

-                        public OutputStream createBinaryFile(String typename)

-                                throws IOException {

-                            File file = new File(outputFolder, typename);

-                            file.getParentFile().mkdirs();

-                            file.createNewFile();

-                            return new FileOutputStream(file);

-                        }

-

-                        public Writer createSourceFile(String typename)

-                                throws IOException {

-                            typename =

-                                    typename.replace('.', File.separatorChar);

-                            File file = new File(outputFolder,

-                                    typename + ".java");

-                            file.getParentFile().mkdirs();

-                            file.createNewFile();

-                            return new FileWriter(file);

-                        }

-                    }, null);

-

-            //create the type mapper

-            JavaTypeMapper mapper = new JavaTypeMapper();

-            SchemaType[] types = sts.documentTypes();

-

-            for (int i = 0; i < types.length; i++) {

-                //System.out.println("type name = " + 
types[i].getFullJavaImplName()+" "+types[i].getDocumentElementName());

-                mapper.addTypeMapping(types[i].getDocumentElementName(),

-                        types[i].getFullJavaName());

+            } catch (XmlException e) {

+                throw new RuntimeException(e);

             }

-            //set the type mapper to the config

-            configuration.setTypeMapper(mapper);

-

-        } catch (XmlException e) {

+        } catch (Exception e) {

             throw new RuntimeException(e);

         }

     }


Modified: 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/template/java/XMLBeansSupporterTemplate.xsl
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/template/java/XMLBeansSupporterTemplate.xsl?rev=225244&r1=225243&r2=225244&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/template/java/XMLBeansSupporterTemplate.xsl
 (original)
+++ 
webservices/axis/trunk/java/modules/wsdl/src/org/apache/axis2/wsdl/template/java/XMLBeansSupporterTemplate.xsl
 Tue Jul 26 00:04:26 2005
@@ -53,8 +53,8 @@
     <xsl:template match="param">

         <xsl:if test="@type!=''">

           public  static org.apache.axis2.om.OMElement  toOM(<xsl:value-of 
select="@type"/> param){

-                   org.apache.axis2.om.impl.llom.builder.StAXOMBuilder builder 
= org.apache.axis2.om.impl.llom.factory.OMXMLBuilderFactory.createStAXOMBuilder

-            (org.apache.axis2.om.OMAbstractFactory.getOMFactory(),new 
org.apache.axis2.clientapi.StreamWrapper(param.newXMLStreamReader())) ;

+                   org.apache.axis2.om.impl.llom.builder.StAXOMBuilder builder 
= new org.apache.axis2.om.impl.llom.builder.StAXOMBuilder

+            (org.apache.axis2.om.OMAbstractFactory.getOMFactory(),new 
org.apache.axis2.clientapi.StreamWrapper(param.newXMLStreamReader()) ;

                    org.apache.axis2.om.OMElement documentElement = 
builder.getDocumentElement();

             //Building the element is needed to avoid certain stream errors!

             documentElement.build();



Reply via email to