You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2007/12/13 20:20:53 UTC
svn commit: r603992 - in /incubator/cxf/branches/2.0.x-fixes: ./
common/common/src/main/java/org/apache/cxf/helpers/
maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/
systests/src/test/resources/wsdl/
Author: dkulp
Date: Thu Dec 13 11:20:52 2007
New Revision: 603992
URL: http://svn.apache.org/viewvc?rev=603992&view=rev
Log:
Merged revisions 602797 via svnmerge from
https://svn.apache.org/repos/asf/incubator/cxf/trunk
........
r602797 | mmao | 2007-12-10 02:38:38 -0500 (Mon, 10 Dec 2007) | 5 lines
CXF-1246
CodeGen plugin support loading multiple wsdls/options/bindings from the wsdlRoot
Only changed the systests for review
........
Added:
incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WsdlOptionLoader.java
- copied unchanged from r602797, incubator/cxf/trunk/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WsdlOptionLoader.java
incubator/cxf/branches/2.0.x-fixes/systests/src/test/resources/wsdl/add_numbers-fromjava-options
- copied unchanged from r602797, incubator/cxf/trunk/systests/src/test/resources/wsdl/add_numbers-fromjava-options
Modified:
incubator/cxf/branches/2.0.x-fixes/ (props changed)
incubator/cxf/branches/2.0.x-fixes/common/common/src/main/java/org/apache/cxf/helpers/FileUtils.java
incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WSDL2JavaMojo.java
incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WsdlOption.java
Propchange: incubator/cxf/branches/2.0.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified: incubator/cxf/branches/2.0.x-fixes/common/common/src/main/java/org/apache/cxf/helpers/FileUtils.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/2.0.x-fixes/common/common/src/main/java/org/apache/cxf/helpers/FileUtils.java?rev=603992&r1=603991&r2=603992&view=diff
==============================================================================
--- incubator/cxf/branches/2.0.x-fixes/common/common/src/main/java/org/apache/cxf/helpers/FileUtils.java (original)
+++ incubator/cxf/branches/2.0.x-fixes/common/common/src/main/java/org/apache/cxf/helpers/FileUtils.java Thu Dec 13 11:20:52 2007
@@ -20,7 +20,11 @@
package org.apache.cxf.helpers;
import java.io.File;
+import java.io.FileReader;
+import java.io.FilenameFilter;
import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Locale;
public final class FileUtils {
@@ -165,5 +169,104 @@
result.deleteOnExit();
}
return result;
+ }
+
+ public static String getStringFromFile(File location) {
+ InputStream is = null;
+ String result = null;
+
+ try {
+ is = new FileInputStream(location);
+ result = normalizeCRLF(is);
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (is != null) {
+ try {
+ is.close();
+ } catch (Exception e) {
+ //do nothing
+ }
+ }
+ }
+
+ return result;
+ }
+
+ public static String normalizeCRLF(InputStream instream) {
+ BufferedReader in = new BufferedReader(new InputStreamReader(instream));
+ StringBuffer result = new StringBuffer();
+ String line = null;
+
+ try {
+ line = in.readLine();
+ while (line != null) {
+ String[] tok = line.split("\\s");
+
+ for (int x = 0; x < tok.length; x++) {
+ String token = tok[x];
+ result.append(" " + token);
+ }
+ line = in.readLine();
+ }
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ }
+
+ String rtn = result.toString();
+
+ rtn = ignoreTokens(rtn, "<!--", "-->");
+ rtn = ignoreTokens(rtn, "/*", "*/");
+ return rtn;
+ }
+
+ private static String ignoreTokens(final String contents,
+ final String startToken, final String endToken) {
+ String rtn = contents;
+ int headerIndexStart = rtn.indexOf(startToken);
+ int headerIndexEnd = rtn.indexOf(endToken);
+ if (headerIndexStart != -1 && headerIndexEnd != -1 && headerIndexStart < headerIndexEnd) {
+ rtn = rtn.substring(0, headerIndexStart - 1)
+ + rtn.substring(headerIndexEnd + endToken.length() + 1);
+ }
+ return rtn;
+ }
+
+ public static List<File> getFiles(File dir, final String pattern) {
+ return getFiles(dir, pattern, null);
+ }
+
+ public static List<File> getFiles(File dir, final String pattern, File exclude) {
+ File[] files = dir.listFiles(new FilenameFilter() {
+ public boolean accept(File dir, String name) {
+ return name.matches(pattern);
+ }
+ });
+ if (files == null) {
+ return new ArrayList<File>();
+ }
+
+ List<File> fileList = new ArrayList<File>();
+ for (File file : files) {
+ if (file.equals(exclude)) {
+ continue;
+ }
+ fileList.add(file);
+ }
+ return fileList;
+ }
+
+ public static List<String> readLines(File file) throws Exception {
+ if (!file.exists()) {
+ return new ArrayList<String>();
+ }
+ BufferedReader reader = new BufferedReader(new FileReader(file));
+ List<String> results = new ArrayList<String>();
+ String line = reader.readLine();
+ while (line != null) {
+ results.add(line);
+ line = reader.readLine();
+ }
+ return results;
}
}
Modified: incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WSDL2JavaMojo.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WSDL2JavaMojo.java?rev=603992&r1=603991&r2=603992&view=diff
==============================================================================
--- incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WSDL2JavaMojo.java (original)
+++ incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WSDL2JavaMojo.java Thu Dec 13 11:20:52 2007
@@ -37,6 +37,7 @@
import org.apache.maven.project.MavenProject;
import org.apache.tools.ant.ExitException;
import org.apache.tools.ant.util.optional.NoExitSecurityManager;
+
/**
* @goal wsdl2java
* @description CXF WSDL To Java Tool
@@ -73,6 +74,12 @@
WsdlOption wsdlOptions[];
/**
+ * @parameter
+ */
+ String wsdlRoot;
+
+
+ /**
* Use the compile classpath rather than the test classpath for execution
* useful if the test dependencies clash with those of wsdl2java
* @parameter
@@ -89,7 +96,12 @@
if (wsdlOptions == null) {
- throw new MojoExecutionException("Must specify wsdlOptions");
+ List<WsdlOption> options = new WsdlOptionLoader().load(wsdlRoot);
+ wsdlOptions = options.toArray(new WsdlOption[options.size()]);
+ if (wsdlOptions == null) {
+ getLog().info("Nothing to generate");
+ return;
+ }
}
List<URL> urlList = new ArrayList<URL>();
@@ -188,8 +200,6 @@
}
}
}
-
-
if (doWork) {
doneFile.delete();
Modified: incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WsdlOption.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WsdlOption.java?rev=603992&r1=603991&r2=603992&view=diff
==============================================================================
--- incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WsdlOption.java (original)
+++ incubator/cxf/branches/2.0.x-fixes/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/WsdlOption.java Thu Dec 13 11:20:52 2007
@@ -20,12 +20,13 @@
package org.apache.cxf.maven_plugin;
import java.io.File;
+import java.util.ArrayList;
import java.util.List;
public class WsdlOption {
String wsdl;
List packagenames;
- List extraargs;
+ List extraargs = new ArrayList();
File dependencies[];
File redundantDirs[];