You are viewing a plain text version of this content. The canonical link for it is here.
Posted to npanday-commits@incubator.apache.org by lc...@apache.org on 2011/12/16 14:22:05 UTC
svn commit: r1215143 - in /incubator/npanday/trunk:
components/dotnet-executable/src/main/java/npanday/executable/
components/dotnet-executable/src/main/java/npanday/executable/impl/
components/dotnet-model/executable-plugins/ plugins/maven-compile-plu...
Author: lcorneliussen
Date: Fri Dec 16 14:22:04 2011
New Revision: 1215143
URL: http://svn.apache.org/viewvc?rev=1215143&view=rev
Log:
[NPANDAY-499] Fixed probing path issues + removed PlatformDetector and upgraded maven-wsdl-plugin to use executable plugins
Added:
incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/ (with props)
incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/ (with props)
incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/npanday/ (with props)
incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/npanday/executable-plugins.xml
Removed:
incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/java/npanday/plugin/wsdl/PlatformDetector.java
Modified:
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/CommandFilter.java
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableCapability.java
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableContext.java
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/MutableExecutableCapability.java
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerPluginsRepository.java
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultNetExecutable.java
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/ExecutableContextImpl.java
incubator/npanday/trunk/components/dotnet-model/executable-plugins/executable-plugins.mdo
incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/groovy/npanday/plugin/compile/CompileLifecycleMap.groovy
incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/java/npanday/plugin/wsdl/WsdlGeneratorMojo.java
Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/CommandFilter.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/CommandFilter.java?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/CommandFilter.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/CommandFilter.java Fri Dec 16 14:22:04 2011
@@ -18,6 +18,7 @@
*/
package npanday.executable;
+import npanday.PlatformUnsupportedException;
import org.codehaus.plexus.logging.Logger;
import java.util.Collection;
@@ -44,7 +45,7 @@ public interface CommandFilter
* <code>NullPointerException</code> if it is.
* @return a list of filtered commands.
*/
- List<String> filter( Collection<String> commands );
+ List<String> filter( Collection<String> commands ) throws PlatformUnsupportedException;
/**
* Provides factory methods for creating command filters.
@@ -74,6 +75,7 @@ public interface CommandFilter
return new CommandFilter()
{
public List<String> filter( Collection<String> commands )
+ throws PlatformUnsupportedException
{
List<String> includes = ( capability != null && capability.getIncludes() != null )
@@ -82,11 +84,23 @@ public interface CommandFilter
? capability.getExcludes() : new ArrayList<String>();
List<String> newCommands = new ArrayList<String>();
- if ( includes.isEmpty() && !excludes.isEmpty() )
+
+ // Excluded commands should fail
+ if ( !excludes.isEmpty() )
{
- //unsupported
+ for( String command : commands){
+ if ( doesInclude( excludes, command )){
+ // TODO: is the exception type right here? maybe it should be a specific exception
+ throw new PlatformUnsupportedException(
+ "NPANDAY-060-001: The command '" + command + "' is unsupported for the targeted "
+ + "platform or executable."
+ );
+ }
+ }
}
- else if ( !includes.isEmpty() && excludes.isEmpty() )
+
+ // Included commands are weak exclusions of all others
+ if ( !includes.isEmpty() )
{
for ( String command : commands )
{
@@ -100,16 +114,13 @@ public interface CommandFilter
}
}
}
- else if ( includes.isEmpty() && excludes.isEmpty() )
+ else
{
List<String> list = new ArrayList<String>();
list.addAll( commands );
return list;
}
- else if ( !includes.isEmpty() && !excludes.isEmpty() )
- {
- //unsupported
- }
+
return newCommands;
}
Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableCapability.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableCapability.java?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableCapability.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableCapability.java Fri Dec 16 14:22:04 2011
@@ -110,7 +110,8 @@ public interface ExecutableCapability
String getNetDependencyId();
/**
- * Retrieves the paths, the executable is most likely to be found on.
+ * Retrieves the paths, the executable is most likely to be found on. Can contain
+ * both existing and not existing paths.
*/
List<String> getProbingPaths();
}
Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableContext.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableContext.java?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableContext.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/ExecutableContext.java Fri Dec 16 14:22:04 2011
@@ -22,7 +22,7 @@ import npanday.NPandayContext;
import npanday.PlatformUnsupportedException;
import npanday.vendor.Vendor;
-import java.util.Collection;
+import java.util.List;
/**
* Provides services for executables.
@@ -58,13 +58,13 @@ public interface ExecutableContext
* The commands that instruct the executable to be run.
* @return
*/
- Collection<String> getCommands();
+ List<String> getCommands();
/**
* The paths the executable is most likely to be found on. First matching path wins.
* @return
*/
- Collection<String> getProbingPaths();
+ List<String> getProbingPaths();
/**
* Creates a command filter. If the includes parameter is null, then the filter will return all commands that are
Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/MutableExecutableCapability.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/MutableExecutableCapability.java?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/MutableExecutableCapability.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/MutableExecutableCapability.java Fri Dec 16 14:22:04 2011
@@ -1,9 +1,16 @@
package npanday.executable;
+import com.google.common.base.Function;
+import com.google.common.collect.Lists;
import npanday.vendor.VendorInfo;
+import javax.annotation.Nullable;
+import java.io.File;
+import java.util.Collections;
import java.util.List;
+import static com.google.common.base.Preconditions.checkNotNull;
+
/**
* Holds the configured executable capability.
*
@@ -137,7 +144,29 @@ public class MutableExecutableCapability
public List<String> getProbingPaths()
{
- return probingPaths;
+ // if probing paths are defined fot the capability, these are to be
+ // used when searching executables.
+ if ( probingPaths != null && !probingPaths.isEmpty() )
+ {
+ return probingPaths;
+ }
+
+ // if not, we expect the executable is provided by the vendor
+ final List<File> vendorPaths = checkNotNull(
+ getVendorInfo(), "Vendor info is unavailable"
+ ).getExecutablePaths();
+
+ List<String> vendorPathsAsString = Lists.transform(
+ vendorPaths, new Function<File, String>()
+ {
+ public String apply( @Nullable File file )
+ {
+ return checkNotNull( file, "file was null").toString();
+ }
+ }
+ );
+
+ return Collections.unmodifiableList( vendorPathsAsString );
}
public void setProbingPaths( List<String> probingPaths )
Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerPluginsRepository.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerPluginsRepository.java?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerPluginsRepository.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerPluginsRepository.java Fri Dec 16 14:22:04 2011
@@ -144,7 +144,6 @@ public final class CompilerPluginsReposi
// TODO: Allow probing paths for compilers
platformCapability.setProbingPaths(plugin.getProbingPaths());
-
Platform platform = (Platform) j.next();
String os = platform.getOperatingSystem();
Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultNetExecutable.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultNetExecutable.java?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultNetExecutable.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultNetExecutable.java Fri Dec 16 14:22:04 2011
@@ -55,6 +55,7 @@ public class DefaultNetExecutable
public List<String> getCommands()
throws ExecutionException
{
+ // TODO: should it fail on unsupported commands?
CommandFilter filter = executableContext.getCommandFilter();
return Collections.unmodifiableList(filter.filter( commands ));
}
Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/ExecutableContextImpl.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/ExecutableContextImpl.java?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/ExecutableContextImpl.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/ExecutableContextImpl.java Fri Dec 16 14:22:04 2011
@@ -31,7 +31,6 @@ import npanday.vendor.Vendor;
import org.codehaus.plexus.logging.LogEnabled;
import org.codehaus.plexus.logging.Logger;
-import java.util.Collection;
import java.util.Collections;
import java.util.List;
@@ -128,18 +127,23 @@ public class ExecutableContextImpl
return executableCapability.getExecutableName();
}
- public Collection<String> getCommands()
+ public List<String> getCommands()
{
return executableConfig.getCommands();
}
- public Collection<String> getProbingPaths()
+ public List<String> getProbingPaths()
{
List<String> executionPaths = executableConfig.getExecutionPaths();
+
if (executionPaths == null || executionPaths.size() == 0)
+ {
+ // if the user-passed configuration contains probing paths, these
+ // are at highest priority and OVERRIDE built-in probing paths configuration
executionPaths = executableCapability.getProbingPaths();
+ }
- return Collections.unmodifiableCollection( executionPaths );
+ return Collections.unmodifiableList( executionPaths );
}
public void init( ExecutableCapability capability, ExecutableConfig config )
Modified: incubator/npanday/trunk/components/dotnet-model/executable-plugins/executable-plugins.mdo
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-model/executable-plugins/executable-plugins.mdo?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-model/executable-plugins/executable-plugins.mdo (original)
+++ incubator/npanday/trunk/components/dotnet-model/executable-plugins/executable-plugins.mdo Fri Dec 16 14:22:04 2011
@@ -18,7 +18,7 @@ under the License.
-->
<model xmlns="http://modello.codehaus.org/MODELLO/1.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://modello.codehaus.org/MODELLO/1.4.0 http://modello.codehaus.org/xsd/modello-1.4.0.xsd"
- xml.namespace="http://npanday.apacha.org/executable/1.5.0">
+ xml.namespace="http://npanday.apache.org/executables/1.5.0">
<id>executable-plugin</id>
<name>ExecutablePlugin</name>
<description>
Modified: incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/groovy/npanday/plugin/compile/CompileLifecycleMap.groovy
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/groovy/npanday/plugin/compile/CompileLifecycleMap.groovy?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/groovy/npanday/plugin/compile/CompileLifecycleMap.groovy (original)
+++ incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/groovy/npanday/plugin/compile/CompileLifecycleMap.groovy Fri Dec 16 14:22:04 2011
@@ -20,13 +20,10 @@
*/
package npanday.plugin.compile;
-import org.apache.maven.lifecycle.Lifecycle;
-import npanday.lifecycle.LifecycleMapping;
-import npanday.lifecycle.LifecyclePhase;
-import npanday.lifecycle.LifecycleMap;
-import npanday.ArtifactType;
-import npanday.lifecycle.LifecycleMappingBuilder;
+import npanday.ArtifactType
+import npanday.lifecycle.LifecycleMap
+import npanday.lifecycle.LifecycleMappingBuilder
/**
* The lifecycles defined by the maven-compile-plugin..
Modified: incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/java/npanday/plugin/wsdl/WsdlGeneratorMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/java/npanday/plugin/wsdl/WsdlGeneratorMojo.java?rev=1215143&r1=1215142&r2=1215143&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/java/npanday/plugin/wsdl/WsdlGeneratorMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/java/npanday/plugin/wsdl/WsdlGeneratorMojo.java Fri Dec 16 14:22:04 2011
@@ -18,23 +18,26 @@
*/
package npanday.plugin.wsdl;
+import npanday.PlatformUnsupportedException;
+import npanday.executable.ExecutableRequirement;
+import npanday.executable.ExecutionException;
+import npanday.registry.RepositoryRegistry;
+import npanday.vendor.SettingsException;
+import npanday.vendor.SettingsUtil;
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.settings.Server;
-import org.apache.maven.settings.Proxy;
-import npanday.vendor.Vendor;
-import npanday.executable.CommandExecutor;
-import npanday.executable.ExecutionException;
-import npanday.PlatformUnsupportedException;
import org.apache.maven.project.MavenProject;
+import org.apache.maven.settings.Proxy;
+import org.apache.maven.settings.Server;
+import org.codehaus.plexus.util.FileUtils;
-import java.util.List;
-import java.util.ArrayList;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
import java.io.File;
-import java.net.URL;
import java.net.MalformedURLException;
+import java.net.URL;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.util.ArrayList;
+import java.util.List;
/**
* Generates WSDL class
@@ -56,6 +59,40 @@ public class WsdlGeneratorMojo
private MavenProject project;
/**
+ * The Vendor for the executable. Supports MONO and MICROSOFT.
+ *
+ * @parameter expression="${vendor}"
+ */
+ private String vendor;
+
+ /**
+ * @parameter expression = "${frameworkVersion}" default-value = "2.0.50727"
+ */
+ private String frameworkVersion;
+
+ /**
+ * The profile that the executable should use.
+ *
+ * @parameter expression = "${profile}" default-value = "WSDL"
+ */
+ private String profile;
+
+ /**
+ * @component
+ */
+ private npanday.executable.NetExecutableFactory netExecutableFactory;
+
+ /**
+ * @parameter expression="${npanday.settings}" default-value="${user.home}/.m2"
+ */
+ private String settingsPath;
+
+ /**
+ * @component
+ */
+ private RepositoryRegistry repositoryRegistry;
+
+ /**
* Webreferences
*
* @parameter
@@ -65,7 +102,7 @@ public class WsdlGeneratorMojo
/**
* The directory to place the generated binding classes.
*
- * @parameter
+ * @parameter expression="${project.build.sourceDirectory}"
*/
private String outputDirectory;
@@ -165,7 +202,7 @@ public class WsdlGeneratorMojo
/**
* @parameter expression="${netHome}"
*/
- private String netHome;
+ private File netHome;
/**
* Generates server implementation
@@ -184,119 +221,108 @@ public class WsdlGeneratorMojo
public void execute()
throws MojoExecutionException
{
- for ( WebReference webreference : webreferences )
+
+
+ try
{
- Vendor vendor = getCompilerVendor();
- List<String> commands = getCommandsFor( vendor, webreference );
+ SettingsUtil.getOrPopulateSettingsRepository( repositoryRegistry, settingsPath );
+ }
+ catch ( SettingsException e )
+ {
+ throw new MojoExecutionException(
+ "NPANDAY-1300-006 Failed to create the repository registry for this plugin", e );
+ }
+
+ FileUtils.mkdir( outputDirectory );
- getLog().debug( "NPANDAY-1300-000: Commands = " + commands.toString() );
- CommandExecutor commandExecutor = CommandExecutor.Factory.createDefaultCommmandExecutor();
+ for ( WebReference webreference : webreferences )
+ {
+ List<String> commands = getCommandsFor( webreference );
try
{
- commandExecutor.executeCommand( getExecutableFor( vendor, netHome ), commands );
- getLog().info(
- "NPANDAY-1300-008: Generated WSDL: File = "
- + project.getBuild().getSourceDirectory()
- + File.separator
- + project.getBuild().getSourceDirectory()
- + File.separator
- + webreference.getOutput()
- + File.separator
- + getFileNameFor( project.getBuild().getSourceDirectory() + File.separator
- + webreference.getPath() ) );
-
+ netExecutableFactory.getNetExecutableFor(
+ new ExecutableRequirement( vendor, null, frameworkVersion, profile ), commands, netHome
+ ).execute();
}
catch ( ExecutionException e )
{
- // TODO: This is a hack to get around the fact that MONO returns a result=1 on warnings and MS returns a
- // result=1 on errors.
- // I don't want to fail on MONO warning here.
- if ( ( vendor.equals( Vendor.MONO ) && commandExecutor.getResult() > 1 )
- || vendor.equals( Vendor.MICROSOFT ) )
- {
- throw new MojoExecutionException( "NPANDAY-1300-001: Result = " + commandExecutor.getResult(), e );
- }
+ throw new MojoExecutionException(
+ "NPANDAY-1300-007: Unable to execute wsdl: Vendor " + vendor + ", frameworkVersion = "
+ + frameworkVersion + ", Profile = " + profile, e
+ );
+ }
+ catch ( PlatformUnsupportedException e )
+ {
+ throw new MojoExecutionException(
+ "NPANDAY-1300-009: Platform Unsupported: Vendor " + vendor + ", frameworkVersion = "
+ + frameworkVersion + ", Profile = " + profile, e
+ );
}
- }
-
- }
- public String getExecutableFor( Vendor vendor, String home )
- {
- String executable = ( vendor.equals( Vendor.MICROSOFT ) ) ? "wsdl" : "wsdl2";
- return ( !isEmpty( home ) ) ? home + File.separator + "bin" + File.separator + executable : executable;
+ getLog().info(
+ "NPANDAY-1300-008: Generated WSDL: File = " + buildOutputFilePath( webreference )
+ );
+ }
}
- public List<String> getCommandsFor( Vendor vendor, WebReference webreference )
+ public List<String> getCommandsFor( WebReference webreference )
throws MojoExecutionException
{
- String commandFlag = vendor.equals( Vendor.MICROSOFT ) ? "/" : "-";
List<String> commands = new ArrayList<String>();
- populateServerCommands( commands, commandFlag );
- populateProxyCommands( commands, commandFlag );
- commands.add( commandFlag + "language:" + language );
- commands.add( commandFlag + "namespace:" + webreference.getNamespace() );
- commands.add( commandFlag + "fields:" + fields );
+ populateServerCommands( commands );
+ populateProxyCommands( commands, "/" );
+ commands.add( "/language:" + language );
+ commands.add( "/namespace:" + webreference.getNamespace() );
+ commands.add( "/fields:" + fields );
if ( !isEmpty( protocol ) )
{
- commands.add( commandFlag + "protocol:" + protocol );
+ commands.add( "/protocol:" + protocol );
}
- commands.add( commandFlag + "out:" + project.getBuild().getSourceDirectory() + File.separator
- + webreference.getOutput()
- + getFileNameFor( project.getBuild().getSourceDirectory() + File.separator + webreference.getPath() ) );
+ commands.add(
+ "/out:" + buildOutputFilePath( webreference )
+ );
+
+ commands.add( buildInputFilePath( webreference ) );
+ if ( serverInterface )
{
- commands.add( new File( project.getBuild().getSourceDirectory() + File.separator + webreference.getPath() ).getAbsolutePath() );
+ commands.add( "/server" );
}
-
- if ( vendor.equals( Vendor.MONO ) )
+ if ( enableDataBinding )
{
- if ( serverInterface )
- {
- commands.add( "-server" );
- }
- if ( ( fields || enableDataBinding || order || sharetypes || verbose ) )
- {
- if ( !ignoreUnusedOptions )
- {
- throw new MojoExecutionException( "NPANDAY-1300-005: Illegal Option(s) for Mono" );
- }
- else
- {
- getLog().warn(
- "NPANDAY-1300-002: Your pom.xml contains an option that is not supported by MONO: Your application"
- + " artifact will differ dependening on compiler/platform and may have different behavior." );
- }
- }
+ commands.add( "/enableDataBinding" );
}
- else
+ if ( sharetypes )
{
- if ( serverInterface )
- {
- commands.add( "/server" );
- }
- if ( enableDataBinding )
- {
- commands.add( "/enableDataBinding" );
- }
- if ( sharetypes )
- {
- commands.add( "/sharetypes" );
- }
- if ( verbose )
- {
- commands.add( "/verbose" );
- }
- if ( order )
- {
- commands.add( "/order" );
- }
+ commands.add( "/sharetypes" );
}
+ if ( verbose )
+ {
+ commands.add( "/verbose" );
+ }
+ if ( order )
+ {
+ commands.add( "/order" );
+ }
+
return commands;
}
+ private String buildInputFilePath( WebReference webreference )
+ {
+ return new File( outputDirectory, webreference.getPath() ).getAbsolutePath();
+ }
+
+ private String buildOutputFilePath( WebReference webreference )
+ {
+ return new File(
+ new File( outputDirectory, webreference.getOutput() ),
+ getFileNameFor( buildInputFilePath( webreference ) )
+ ).getAbsolutePath();
+ }
+
private boolean isURL( String path )
{
try
@@ -398,7 +424,7 @@ public class WsdlGeneratorMojo
}
}
- private void populateServerCommands( List<String> commands, String commandFlag )
+ private void populateServerCommands( List<String> commands )
throws MojoExecutionException
{
if ( server != null )
@@ -429,57 +455,16 @@ public class WsdlGeneratorMojo
}
if ( !isEmpty( username ) )
{
- commands.add( commandFlag + "username:" + username );
+ commands.add( "/username:" + username );
}
if ( !isEmpty( password ) )
{
- commands.add( commandFlag + "password:" + password );
+ commands.add( "/password:" + password );
}
}
}
}
- private Vendor getCompilerVendor()
- throws MojoExecutionException
- {
- Vendor vendor;
- PlatformDetector platformDetector = PlatformDetector.Factory.createDefaultPlatformDetector();
- if ( isEmpty( netHome ) )
- {
- try
- {
- vendor = platformDetector.getVendorFor( "wsdl", null );
- }
- catch ( PlatformUnsupportedException e )
- {
- throw new MojoExecutionException( "NPANDAY-1300-009", e );
- }
- }
- else
- {
- File file = new File( netHome );
- if ( !file.exists() )
- {
- throw new MojoExecutionException(
- "NPANDAY-1300-006: Unable to locate netHome - make sure that it exists:"
- + " Home = " + netHome );
- }
- try
- {
- vendor =
- platformDetector.getVendorFor( null, new File( file.getAbsolutePath() + File.separator + "bin"
- + File.separator + "wsdl" ) );
- }
- catch ( PlatformUnsupportedException e )
- {
- throw new MojoExecutionException( "NPANDAY-1300-010", e );
- }
-
- }
- getLog().info( "NPANDAY-1300-007: WSDL Vendor found: " + vendor.getVendorName() );
- return vendor;
- }
-
private Proxy getProxyFor( String id )
{
for ( Proxy proxy : proxies )
Propchange: incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/
------------------------------------------------------------------------------
bugtraq:number = true
Propchange: incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/
------------------------------------------------------------------------------
bugtraq:number = true
Propchange: incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/npanday/
------------------------------------------------------------------------------
bugtraq:number = true
Added: incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/npanday/executable-plugins.xml
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/npanday/executable-plugins.xml?rev=1215143&view=auto
==============================================================================
--- incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/npanday/executable-plugins.xml (added)
+++ incubator/npanday/trunk/plugins/maven-wsdl-plugin/src/main/resources/META-INF/npanday/executable-plugins.xml Fri Dec 16 14:22:04 2011
@@ -0,0 +1,74 @@
+<!--
+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.
+-->
+<executablePlugins xmlns="http://npanday.apache.org/executables/1.5.0">
+ <executablePlugin>
+ <identifier>WSDL</identifier>
+ <pluginClass>npanday.executable.impl.DefaultNetExecutable</pluginClass>
+ <vendor>MICROSOFT</vendor>
+ <executable>wsdl</executable>
+ <profile>WSDL</profile>
+ <frameworkVersions>
+ <frameworkVersion>4.0</frameworkVersion>
+ <frameworkVersion>3.5</frameworkVersion>
+ <frameworkVersion>2.0.50727</frameworkVersion>
+ </frameworkVersions>
+ <platforms>
+ <platform>
+ <operatingSystem>Windows</operatingSystem>
+ </platform>
+ </platforms>
+ </executablePlugin>
+ <executablePlugin>
+ <identifier>WSDL</identifier>
+ <pluginClass>npanday.executable.impl.DefaultNetExecutable</pluginClass>
+ <vendor>MONO</vendor>
+ <executable>wsdl2</executable>
+ <profile>WSDL</profile>
+ <frameworkVersions>
+ <frameworkVersion>4.0</frameworkVersion>
+ <frameworkVersion>3.5</frameworkVersion>
+ <frameworkVersion>2.0.50727</frameworkVersion>
+ </frameworkVersions>
+ <platforms>
+ <platform>
+ <operatingSystem>Windows</operatingSystem>
+ </platform>
+ <platform>
+ <operatingSystem>Mac OS X</operatingSystem>
+ </platform>
+ <platform>
+ <operatingSystem>Linux</operatingSystem>
+ </platform>
+ <platform>
+ <operatingSystem>Solaris</operatingSystem>
+ </platform>
+ <platform>
+ <operatingSystem>FreeBSD</operatingSystem>
+ </platform>
+ </platforms>
+ <commandFilter>
+ <excludes>
+ <exclude>enableDataBinding</exclude>
+ <exclude>sharetypes</exclude>
+ <exclude>verbose</exclude>
+ <exclude>order</exclude>
+ </excludes>
+ </commandFilter>
+ </executablePlugin>
+</executablePlugins>