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>