Author: alessio.soldano(a)jboss.com
Date: 2012-09-14 12:07:09 -0400 (Fri, 14 Sep 2012)
New Revision: 16723
Modified:
common-tools/trunk/src/main/java/org/jboss/ws/tools/ant/WSProvideTask.java
common-tools/trunk/src/main/java/org/jboss/ws/tools/cmd/WSProvide.java
common-tools/trunk/src/test/java/org/jboss/test/ws/tools/CmdProvideTracker.java
Log:
[JBWS-3510] Add WSProvide option for specifying soap:address location to use in generated
wsdl
Modified: common-tools/trunk/src/main/java/org/jboss/ws/tools/ant/WSProvideTask.java
===================================================================
--- common-tools/trunk/src/main/java/org/jboss/ws/tools/ant/WSProvideTask.java 2012-09-14
16:06:46 UTC (rev 16722)
+++ common-tools/trunk/src/main/java/org/jboss/ws/tools/ant/WSProvideTask.java 2012-09-14
16:07:09 UTC (rev 16723)
@@ -1,6 +1,6 @@
/*
* JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * Copyright 2012, Red Hat Middleware LLC, and individual contributors
* as indicated by the @author tags. See the copyright.txt file in the
* distribution for a full listing of individual contributors.
*
@@ -32,7 +32,6 @@
import org.apache.tools.ant.types.Path;
import org.apache.tools.ant.types.Reference;
import org.apache.tools.ant.types.CommandlineJava.SysProperties;
-import org.apache.tools.ant.types.Environment.Variable;
import org.jboss.ws.api.tools.WSContractProvider;
import java.io.File;
@@ -55,6 +54,7 @@
* <tr><td>resourcedestdir</td><td>The output directory for
resource artifacts (WSDL/XSD).</td><td>value of destdir</td></tr>
* <tr><td>sourcedestdir</td><td>The output directory for Java
source.</td><td>value of destdir</td></tr>
* <tr><td>genwsdl</td><td>Whether or not to generate
WSDL.</td><td>false</td><tr>
+ * <tr><td>address</td><td>The generated port soap:address in
wsdl.</td><td></td><tr>
* <tr><td>extension</td><td>Enable SOAP 1.2 binding
extension.</td><td>false</td></tr>
* <tr><td>verbose</td><td>Enables more informational output
about cmd progress.</td><td>false</td><tr>
* <tr><td>sei</td><td>Service Endpoint
Implementation.</td><td></td><tr>
@@ -88,6 +88,7 @@
*
* @author <a href="mailto:jason.greene@jboss.com">Jason T.
Greene</a>
* @author <a href="mailto:ropalka@redhat.com">Richard Opalka</a>
+ * @author <a href="mailto:alessio.soldano@jboss.com">Alessio
Soldano</a>
*/
public class WSProvideTask extends Task
{
@@ -103,6 +104,7 @@
private boolean verbose;
private boolean fork;
private boolean debug;
+ private String portSoapAddress;
// Not actually used right now
public void setDebug(boolean debug)
@@ -183,6 +185,11 @@
this.genwsdl = genwsdl;
}
+ public void setPortSoapAddress(String portSoapAddress)
+ {
+ this.portSoapAddress = portSoapAddress;
+ }
+
private ClassLoader getClasspathLoader(ClassLoader parent)
{
AntClassLoader antLoader = new AntClassLoader(parent, getProject(), classpath, false);
@@ -228,6 +235,7 @@
gen.setGenerateSource(keep);
gen.setGenerateWsdl(genwsdl);
gen.setExtension(extension);
+ gen.setPortSoapAddress(portSoapAddress);
if (destdir != null)
gen.setOutputDirectory(destdir);
@@ -287,6 +295,11 @@
if (genwsdl)
command.createArgument().setValue("-w");
+ if (portSoapAddress != null) {
+ command.createArgument().setValue("-a");
+ command.createArgument().setValue(portSoapAddress);
+ }
+
if (extension)
command.createArgument().setValue("-e");
Modified: common-tools/trunk/src/main/java/org/jboss/ws/tools/cmd/WSProvide.java
===================================================================
--- common-tools/trunk/src/main/java/org/jboss/ws/tools/cmd/WSProvide.java 2012-09-14
16:06:46 UTC (rev 16722)
+++ common-tools/trunk/src/main/java/org/jboss/ws/tools/cmd/WSProvide.java 2012-09-14
16:07:09 UTC (rev 16723)
@@ -1,6 +1,6 @@
/*
* JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * Copyright 2012, Red Hat Middleware LLC, and individual contributors
* as indicated by the @author tags. See the copyright.txt file in the
* distribution for a full listing of individual contributors.
*
@@ -52,6 +52,7 @@
* <tr><td>-o, --output=<directory> </td><td>The
directory to put generated artifacts</td></tr>
* <tr><td>-r, --resource=<directory></td><td>The
directory to put resource artifacts</td></tr>
* <tr><td>-s, --source=<directory> </td><td>The
directory to put Java source</td></tr>
+ * <tr><td>-a, --address=<address> </td><td>The
generated port soap:address in wsdl</td></tr>
* <tr><td>-q, --quiet </td><td>Be somewhat
more quiet</td></tr>
* <tr><td>-t, --show-traces </td><td>Show full
exception stack traces</td></tr>
* <tr><td>-l, --load-provider </td><td>Load the
provider and exit (debug utility)</td></tr>
@@ -60,6 +61,7 @@
*
* @author <a href="mailto:jason.greene@jboss.com">Jason T.
Greene</a>
* @author <a href="mailto:ropalka@redhat.com">Richard Opalka</a>
+ * @author <a href="mailto:alessio.soldano@jboss.com">Alessio
Soldano</a>
*/
public class WSProvide
{
@@ -73,6 +75,7 @@
private boolean loadProvider;
private File resourceDir;
private File sourceDir;
+ private String portSoapAddress;
public static final String PROGRAM_NAME =
SecurityActions.getSystemProperty("program.name",
WSProvide.class.getSimpleName());
@@ -85,7 +88,7 @@
private String parseArguments(String[] args)
{
- String shortOpts = "hwko:r:s:c:qtle";
+ String shortOpts = "hwko:r:s:a:c:qtle";
LongOpt[] longOpts =
{
new LongOpt("help", LongOpt.NO_ARGUMENT, null, 'h'),
@@ -94,6 +97,7 @@
new LongOpt("output", LongOpt.REQUIRED_ARGUMENT, null, 'o'),
new LongOpt("resource", LongOpt.REQUIRED_ARGUMENT, null,
'r'),
new LongOpt("source", LongOpt.REQUIRED_ARGUMENT, null, 's'),
+ new LongOpt("address", LongOpt.REQUIRED_ARGUMENT, null, 'a'),
new LongOpt("classpath", LongOpt.REQUIRED_ARGUMENT, null,
'c'),
new LongOpt("quiet", LongOpt.NO_ARGUMENT, null, 'q'),
new LongOpt("show-traces", LongOpt.NO_ARGUMENT, null, 't'),
@@ -131,6 +135,9 @@
case 'c':
processClassPath(getopt.getOptarg());
break;
+ case 'a':
+ portSoapAddress = getopt.getOptarg();
+ break;
case 'l':
loadProvider = true;
break;
@@ -182,6 +189,7 @@
gen.setGenerateSource(generateSource);
gen.setOutputDirectory(outputDir);
gen.setExtension(extension);
+ gen.setPortSoapAddress(portSoapAddress);
if (resourceDir != null)
gen.setResourceDirectory(resourceDir);
if (sourceDir != null)
@@ -254,6 +262,7 @@
out.println(" -h, --help Show this help message");
out.println(" -k, --keep Keep/Generate Java
source");
out.println(" -w, --wsdl Enable WSDL file
generation");
+ out.println(" -a, --address=<address> The generated port
soap:address in wsdl");
out.println(" -c, --classpath=<path> The classpath that contains
the endpoint");
out.println(" -o, --output=<directory> The directory to put
generated artifacts");
out.println(" -r, --resource=<directory> The directory to put
resource artifacts");
Modified: common-tools/trunk/src/test/java/org/jboss/test/ws/tools/CmdProvideTracker.java
===================================================================
---
common-tools/trunk/src/test/java/org/jboss/test/ws/tools/CmdProvideTracker.java 2012-09-14
16:06:46 UTC (rev 16722)
+++
common-tools/trunk/src/test/java/org/jboss/test/ws/tools/CmdProvideTracker.java 2012-09-14
16:07:09 UTC (rev 16723)
@@ -83,4 +83,9 @@
{
LAST_EVENT += "setMessageStream";
}
+
+ public void setPortSoapAddress(String address)
+ {
+ LAST_EVENT += "setPortSoapAddress";
+ }
}