Author: veithen Date: Fri Sep 21 18:55:27 2012 New Revision: 1388616 URL: http://svn.apache.org/viewvc?rev=1388616&view=rev Log: Reverted the change introduced in the Emitter in r1226504 and instead integrate it into our Maven specific customization.
Added: axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaBindingWriterEx.java (with props) Modified: axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/Emitter.java axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/JavaBindingWriter.java axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/AbstractWsdl2JavaMojo.java axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/EmitterEx.java axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateSourcesMojo.java axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateTestSourcesMojo.java axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaGeneratorFactoryEx.java Modified: axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/Emitter.java URL: http://svn.apache.org/viewvc/axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/Emitter.java?rev=1388616&r1=1388615&r2=1388616&view=diff ============================================================================== --- axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/Emitter.java (original) +++ axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/Emitter.java Fri Sep 21 18:55:27 2012 @@ -76,8 +76,6 @@ public class Emitter extends Parser { /** Field bDeploySkeleton */ private boolean bDeploySkeleton = false; - private boolean bImplementationWanted = true; - /** Field bEmitTestCase */ private boolean bEmitTestCase = false; @@ -198,24 +196,6 @@ public class Emitter extends Parser { } // isSkeletonWanted /** - * Turn on/off generation of (empty) implementation classes. Defaults to <code>true</code>. - * - * @param value - */ - public void setImplementationWanted(boolean value) { - bImplementationWanted = value; - } - - /** - * Indicate if we should be generating implementation classes. - * - * @return - */ - public boolean isImplementationWanted() { - return bImplementationWanted; - } - - /** * Turn on/off Helper class generation * * @param value Modified: axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/JavaBindingWriter.java URL: http://svn.apache.org/viewvc/axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/JavaBindingWriter.java?rev=1388616&r1=1388615&r2=1388616&view=diff ============================================================================== --- axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/JavaBindingWriter.java (original) +++ axis/axis1/java/trunk/axis/src/main/java/org/apache/axis/wsdl/toJava/JavaBindingWriter.java Fri Sep 21 18:55:27 2012 @@ -188,32 +188,30 @@ public class JavaBindingWriter implement symbolTable); } - if (emitter.isImplementationWanted()) { - // Use custom implementation classname if available - String fileName = emitter.getImplementationClassName(); - if ( fileName == null) - fileName = Utils.getJavaLocalName(bEntry.getName()) - + "Impl.java"; - else - fileName = Utils.getJavaLocalName(fileName) + ".java"; - - try { - if (Utils.fileExists(fileName, - binding.getQName().getNamespaceURI(), - emitter.getNamespaces())) { - if (!emitter.isQuiet()) { - System.out.println( - Messages.getMessage("wontOverwrite", - fileName)); - } - } else { - implWriter = getJavaImplWriter(emitter, bEntry, - symbolTable); + // Use custom implementation classname if available + String fileName = emitter.getImplementationClassName(); + if ( fileName == null) + fileName = Utils.getJavaLocalName(bEntry.getName()) + + "Impl.java"; + else + fileName = Utils.getJavaLocalName(fileName) + ".java"; + + try { + if (Utils.fileExists(fileName, + binding.getQName().getNamespaceURI(), + emitter.getNamespaces())) { + if (!emitter.isQuiet()) { + System.out.println( + Messages.getMessage("wontOverwrite", + fileName)); } - } catch (IOException ioe) { - System.err.println(Messages.getMessage("fileExistError00", - fileName)); + } else { + implWriter = getJavaImplWriter(emitter, bEntry, + symbolTable); } + } catch (IOException ioe) { + System.err.println(Messages.getMessage("fileExistError00", + fileName)); } } } Modified: axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/AbstractWsdl2JavaMojo.java URL: http://svn.apache.org/viewvc/axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/AbstractWsdl2JavaMojo.java?rev=1388616&r1=1388615&r2=1388616&view=diff ============================================================================== --- axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/AbstractWsdl2JavaMojo.java (original) +++ axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/AbstractWsdl2JavaMojo.java Fri Sep 21 18:55:27 2012 @@ -27,7 +27,6 @@ import org.apache.axis.constants.Scope; import org.apache.axis.tools.maven.shared.nsmap.Mapping; import org.apache.axis.tools.maven.shared.nsmap.MappingUtil; import org.apache.axis.wsdl.gen.GeneratorFactory; -import org.apache.axis.wsdl.toJava.Emitter; import org.apache.maven.plugin.AbstractMojo; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; @@ -269,6 +268,6 @@ public abstract class AbstractWsdl2JavaM } protected abstract File getSourceOutputDirectory(); - protected abstract void configureEmitter(Emitter emitter); + protected abstract void configureEmitter(EmitterEx emitter); protected abstract void addSourceRoot(MavenProject project, String path); } Modified: axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/EmitterEx.java URL: http://svn.apache.org/viewvc/axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/EmitterEx.java?rev=1388616&r1=1388615&r2=1388616&view=diff ============================================================================== --- axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/EmitterEx.java (original) +++ axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/EmitterEx.java Fri Sep 21 18:55:27 2012 @@ -21,9 +21,18 @@ package org.apache.axis.tools.maven.wsdl import org.apache.axis.wsdl.toJava.Emitter; public class EmitterEx extends Emitter { + private boolean generateImplementation; private String deployWsdd; private String undeployWsdd; + public boolean isGenerateImplementation() { + return generateImplementation; + } + + public void setGenerateImplementation(boolean generateImplementation) { + this.generateImplementation = generateImplementation; + } + public String getDeployWsdd() { return deployWsdd; } Modified: axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateSourcesMojo.java URL: http://svn.apache.org/viewvc/axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateSourcesMojo.java?rev=1388616&r1=1388615&r2=1388616&view=diff ============================================================================== --- axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateSourcesMojo.java (original) +++ axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateSourcesMojo.java Fri Sep 21 18:55:27 2012 @@ -20,7 +20,6 @@ package org.apache.axis.tools.maven.wsdl import java.io.File; -import org.apache.axis.wsdl.toJava.Emitter; import org.apache.maven.project.MavenProject; /** @@ -41,13 +40,13 @@ public class GenerateSourcesMojo extends return sourceOutputDirectory; } - protected void configureEmitter(Emitter emitter) { + protected void configureEmitter(EmitterEx emitter) { // In a Maven build, generated sources are always written to a directory other than // the source directory. By default, the emitter would generate an empty implementation // because it doesn't see the implementation provided by the developer. We don't want this // because these two classes would collide. Therefore implementationWanted is hardcoded // to false: - emitter.setImplementationWanted(false); + emitter.setGenerateImplementation(false); } protected void addSourceRoot(MavenProject project, String path) { Modified: axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateTestSourcesMojo.java URL: http://svn.apache.org/viewvc/axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateTestSourcesMojo.java?rev=1388616&r1=1388615&r2=1388616&view=diff ============================================================================== --- axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateTestSourcesMojo.java (original) +++ axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/GenerateTestSourcesMojo.java Fri Sep 21 18:55:27 2012 @@ -20,7 +20,6 @@ package org.apache.axis.tools.maven.wsdl import java.io.File; -import org.apache.axis.wsdl.toJava.Emitter; import org.apache.maven.project.MavenProject; /** @@ -55,8 +54,8 @@ public class GenerateTestSourcesMojo ext */ private boolean testCase; - protected void configureEmitter(Emitter emitter) { - emitter.setImplementationWanted(implementation); + protected void configureEmitter(EmitterEx emitter) { + emitter.setGenerateImplementation(implementation); emitter.setTestCaseWanted(testCase); } Added: axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaBindingWriterEx.java URL: http://svn.apache.org/viewvc/axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaBindingWriterEx.java?rev=1388616&view=auto ============================================================================== --- axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaBindingWriterEx.java (added) +++ axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaBindingWriterEx.java Fri Sep 21 18:55:27 2012 @@ -0,0 +1,42 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ +package org.apache.axis.tools.maven.wsdl2java; + +import javax.wsdl.Binding; + +import org.apache.axis.wsdl.gen.Generator; +import org.apache.axis.wsdl.gen.NoopGenerator; +import org.apache.axis.wsdl.symbolTable.BindingEntry; +import org.apache.axis.wsdl.symbolTable.SymbolTable; +import org.apache.axis.wsdl.toJava.Emitter; +import org.apache.axis.wsdl.toJava.JavaBindingWriter; + +public class JavaBindingWriterEx extends JavaBindingWriter { + public JavaBindingWriterEx(Emitter emitter, Binding binding, SymbolTable symbolTable) { + super(emitter, binding, symbolTable); + } + + protected Generator getJavaImplWriter(Emitter emitter, BindingEntry bEntry, SymbolTable st) { + if (((EmitterEx)emitter).isGenerateImplementation()) { + return super.getJavaImplWriter(emitter, bEntry, st); + } else { + return new NoopGenerator(); + } + } +} Propchange: axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaBindingWriterEx.java ------------------------------------------------------------------------------ svn:eol-style = native Modified: axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaGeneratorFactoryEx.java URL: http://svn.apache.org/viewvc/axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaGeneratorFactoryEx.java?rev=1388616&r1=1388615&r2=1388616&view=diff ============================================================================== --- axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaGeneratorFactoryEx.java (original) +++ axis/axis1/java/trunk/maven/maven-wsdl2java-plugin/src/main/java/org/apache/axis/tools/maven/wsdl2java/JavaGeneratorFactoryEx.java Fri Sep 21 18:55:27 2012 @@ -18,9 +18,15 @@ */ package org.apache.axis.tools.maven.wsdl2java; +import javax.wsdl.Binding; import javax.wsdl.Definition; +import org.apache.axis.wsdl.gen.Generator; +import org.apache.axis.wsdl.gen.NoopGenerator; +import org.apache.axis.wsdl.symbolTable.BindingEntry; +import org.apache.axis.wsdl.symbolTable.SymbolTable; import org.apache.axis.wsdl.toJava.Emitter; +import org.apache.axis.wsdl.toJava.JavaBindingWriter; import org.apache.axis.wsdl.toJava.JavaDefinitionWriter; import org.apache.axis.wsdl.toJava.JavaGeneratorFactory; @@ -38,4 +44,15 @@ public class JavaGeneratorFactoryEx exte addGenerator(Definition.class, JavaUndeployWriterEx.class); } } + + public Generator getGenerator(Binding binding, SymbolTable symbolTable) { + if (include(binding.getQName())) { + Generator writer = new JavaBindingWriterEx(emitter, binding, symbolTable); + BindingEntry bEntry = symbolTable.getBindingEntry(binding.getQName()); + bindingWriters.addStuff(writer, bEntry, symbolTable); + return bindingWriters; + } else { + return new NoopGenerator(); + } + } }