
org.codehaus.xfire.gen.WsGenTask Maven / Gradle / Ivy
The newest version!
package org.codehaus.xfire.gen;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.taskdefs.MatchingTask;
import org.codehaus.xfire.gen.jsr181.Jsr181Profile;
/**
* @author Tomasz Sztelak
*
*/
public class WsGenTask extends MatchingTask
{
private String wsdl;
private String outputDirectory;
private String _package;
private String profile = Jsr181Profile.class.getName();
private String binding;
private String baseURI;
private String externalBindings;
private String keystore;
private String keystorePass;
private boolean explicitAnnotation;
private boolean overwrite;
private boolean generateServerStubs = true;
private boolean forceBare = false;
public void execute()
throws BuildException
{
super.execute();
// Ugly fix for XFIRE-245: wsgen can't find XMLInputFactory
ClassLoader originalCL = Thread.currentThread().getContextClassLoader();
Thread.currentThread().setContextClassLoader(Wsdl11Generator.class.getClassLoader());
if (wsdl != null && wsdl.toLowerCase().startsWith("https"))
{
if (keystore != null)
{
System.setProperty("javax.net.ssl.trustStore", keystore);
}
if (keystorePass != null)
{
System.setProperty("javax.net.ssl.keyStorePassword", keystorePass);
}
}
Wsdl11Generator generator = new Wsdl11Generator();
generator.setDestinationPackage(_package);
generator.setOutputDirectory(outputDirectory);
generator.setWsdl(wsdl);
generator.setBaseURI(baseURI);
generator.setExternalBindings(externalBindings);
generator.setExplicitAnnotation(explicitAnnotation);
generator.setOverwrite(overwrite);
generator.setGenerateServerStubs(generateServerStubs);
generator.setForceBare(forceBare);
if (binding != null) generator.setBinding(binding);
if (profile != null) generator.setProfile(profile);
try
{
generator.generate();
}
catch (Exception e)
{
throw new BuildException(e);
}
Thread.currentThread().setContextClassLoader(originalCL);
}
public String getBaseURI()
{
return baseURI;
}
public void setBaseURI(String baseURI)
{
this.baseURI = baseURI;
}
public String getPackage()
{
return _package;
}
public void setPackage(String _package)
{
this._package = _package;
}
public String getBinding()
{
return binding;
}
public void setBinding(String binding)
{
this.binding = binding;
}
public String getOutputDirectory()
{
return outputDirectory;
}
public void setOutputDirectory(String outputDirectory)
{
this.outputDirectory = outputDirectory;
}
public String getProfile()
{
return profile;
}
public void setProfile(String profile)
{
this.profile = profile;
}
public String getWsdl()
{
return wsdl;
}
public void setWsdl(String wsdl)
{
this.wsdl = wsdl;
}
public String getExternalBindings()
{
return externalBindings;
}
public void setExternalBindings(String externalBindings)
{
this.externalBindings = externalBindings;
}
public boolean isExplicitAnnotation() {
return explicitAnnotation;
}
public void setExplicitAnnotation(boolean explicitAnnotation) {
this.explicitAnnotation = explicitAnnotation;
}
public boolean isOverwrite()
{
return overwrite;
}
public void setOverwrite(boolean forceOverwrite)
{
this.overwrite = forceOverwrite;
}
public boolean isGenerateServerStubs()
{
return generateServerStubs;
}
public void setGenerateServerStubs(boolean generateServerStubs)
{
this.generateServerStubs = generateServerStubs;
}
public String getKeystore()
{
return keystore;
}
public void setKeystore(String keystore)
{
this.keystore = keystore;
}
public String getKeystorePass()
{
return keystorePass;
}
public void setKeystorePass(String keystorePass)
{
this.keystorePass = keystorePass;
}
public boolean isForceBare()
{
return forceBare;
}
public void setForceBare(boolean forceBare)
{
this.forceBare = forceBare;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy