Author: brett Date: Wed Mar 5 01:46:55 2014 New Revision: 1574282 URL: http://svn.apache.org/r1574282 Log: make NPanday version configurable
required to be able to release! Modified: incubator/npanday/trunk/components/dotnet-plugin/src/main/java/npanday/plugin/AbstractMojo.java incubator/npanday/trunk/plugins/maven-mojo-generator-plugin/src/main/java/npanday/plugin/generator/MojoGeneratorMojo.java incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Addin/javabinding/src/main/java/NPanday/Plugin/Addin/AutomationExtensibilityMojo.java incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Devenv/javabinding/src/main/java/NPanday/Plugin/Devenv/DevenvMojo.java incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/javabinding/src/main/java/NPanday/Plugin/Settings/SettingsGeneratorMojo.java incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.SysRef/javabinding/src/main/java/NPanday/Plugin/SysRef/SysRefMojo.java Modified: incubator/npanday/trunk/components/dotnet-plugin/src/main/java/npanday/plugin/AbstractMojo.java URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-plugin/src/main/java/npanday/plugin/AbstractMojo.java?rev=1574282&r1=1574281&r2=1574282&view=diff ============================================================================== --- incubator/npanday/trunk/components/dotnet-plugin/src/main/java/npanday/plugin/AbstractMojo.java (original) +++ incubator/npanday/trunk/components/dotnet-plugin/src/main/java/npanday/plugin/AbstractMojo.java Wed Mar 5 01:46:55 2014 @@ -75,12 +75,6 @@ public abstract class AbstractMojo container = (PlexusContainer) context.get(PlexusConstants.PLEXUS_KEY); } - // TODO: get npandayVersion injected somehow - private String npandayVersion = "1.5.0-incubating-SNAPSHOT"; - - // TODO: get the version of the actual plugin to run; this can be external to NPanday!!! - private String pluginVersion = "1.5.0-incubating-SNAPSHOT"; - /** * Executes the mojo. * @@ -164,7 +158,7 @@ public abstract class AbstractMojo Artifact artifact = getArtifactFactory().createDependencyArtifact( getMojoGroupId(), getMojoArtifactId(), - VersionRange.createFromVersion( pluginVersion ), + VersionRange.createFromVersion( getPluginVersion() ), ArtifactType.DOTNET_MAVEN_PLUGIN.getPackagingType(), null, "runtime" @@ -172,7 +166,7 @@ public abstract class AbstractMojo getNetExecutableFactory().getPluginExecutable( project, artifact, vendorRequirement, localRepository, paramFile, getClassName(), targetDir, - npandayVersion + getNPandayVersion() ).execute(); } catch ( PlatformUnsupportedException e ) @@ -268,6 +262,17 @@ public abstract class AbstractMojo public abstract String getFrameworkVersion(); + /** The version of the .NET plugin to resolve, will typically match that of the Java wrapper. */ + protected abstract String getPluginVersion(); + + /** + * The version of the NPanday plugin runner to use. A plugin might supply a default, but should let the user + * customise it. The default is the plugin version, as it is typically suitable for those shipped with NPanday. + */ + protected String getNPandayVersion() { + return getPluginVersion(); + } + public abstract ArtifactFactory getArtifactFactory(); /** Modified: incubator/npanday/trunk/plugins/maven-mojo-generator-plugin/src/main/java/npanday/plugin/generator/MojoGeneratorMojo.java URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-mojo-generator-plugin/src/main/java/npanday/plugin/generator/MojoGeneratorMojo.java?rev=1574282&r1=1574281&r2=1574282&view=diff ============================================================================== --- incubator/npanday/trunk/plugins/maven-mojo-generator-plugin/src/main/java/npanday/plugin/generator/MojoGeneratorMojo.java (original) +++ incubator/npanday/trunk/plugins/maven-mojo-generator-plugin/src/main/java/npanday/plugin/generator/MojoGeneratorMojo.java Wed Mar 5 01:46:55 2014 @@ -105,6 +105,13 @@ public class MojoGeneratorMojo private String frameworkVersion; /** + * @parameter expression="${plugin.version}" + * @required + * @readonly + */ + private String pluginVersion; + + /** * @component */ private npanday.executable.NetExecutableFactory netExecutableFactory; @@ -117,9 +124,6 @@ public class MojoGeneratorMojo /** @parameter default-value="false" */ private boolean skip; - // TODO: get npandayVersion injected somehow - private String npandayVersion = "1.5.0-incubating-SNAPSHOT"; - public void execute() throws MojoExecutionException { @@ -147,7 +151,7 @@ public class MojoGeneratorMojo Artifact artifact = artifactFactory.createDependencyArtifact( "org.apache.npanday.plugins", "NPanday.Plugin.MojoGenerator", - VersionRange.createFromVersion( npandayVersion ), + VersionRange.createFromVersion( pluginVersion ), ArtifactType.DOTNET_EXECUTABLE.getPackagingType(), null, "runtime" @@ -155,7 +159,7 @@ public class MojoGeneratorMojo netExecutableFactory.getPluginRunner( project, artifact, null, vendorRequirement, LocalRepositoryUtil.create( localRepository ), commands, - targetDir, npandayVersion + targetDir, pluginVersion ).execute(); } catch ( PlatformUnsupportedException e ) Modified: incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Addin/javabinding/src/main/java/NPanday/Plugin/Addin/AutomationExtensibilityMojo.java URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Addin/javabinding/src/main/java/NPanday/Plugin/Addin/AutomationExtensibilityMojo.java?rev=1574282&r1=1574281&r2=1574282&view=diff ============================================================================== --- incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Addin/javabinding/src/main/java/NPanday/Plugin/Addin/AutomationExtensibilityMojo.java (original) +++ incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Addin/javabinding/src/main/java/NPanday/Plugin/Addin/AutomationExtensibilityMojo.java Wed Mar 5 01:46:55 2014 @@ -81,6 +81,13 @@ public class AutomationExtensibilityMojo */ private ArtifactFactory artifactFactory; + /** + * @parameter expression="${plugin.version}" + * @required + * @readonly + */ + private String pluginVersion; + public String getMojoArtifactId() { return "NPanday.Plugin.Addin"; @@ -131,6 +138,11 @@ public class AutomationExtensibilityMojo return frameworkVersion; } + @Override + protected String getPluginVersion() { + return pluginVersion; + } + public ArtifactFactory getArtifactFactory() { return artifactFactory; Modified: incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Devenv/javabinding/src/main/java/NPanday/Plugin/Devenv/DevenvMojo.java URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Devenv/javabinding/src/main/java/NPanday/Plugin/Devenv/DevenvMojo.java?rev=1574282&r1=1574281&r2=1574282&view=diff ============================================================================== --- incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Devenv/javabinding/src/main/java/NPanday/Plugin/Devenv/DevenvMojo.java (original) +++ incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Devenv/javabinding/src/main/java/NPanday/Plugin/Devenv/DevenvMojo.java Wed Mar 5 01:46:55 2014 @@ -81,6 +81,13 @@ public class DevenvMojo */ private ArtifactFactory artifactFactory; + /** + * @parameter expression="${plugin.version}" + * @required + * @readonly + */ + private String pluginVersion; + public String getMojoArtifactId() { return "NPanday.Plugin.Devenv"; @@ -131,6 +138,14 @@ public class DevenvMojo return frameworkVersion; } + /** + * The version of the .NET plugin to resolve, will typically match that of the Java wrapper. + */ + @Override + protected String getPluginVersion() { + return pluginVersion; + } + public ArtifactFactory getArtifactFactory() { return artifactFactory; Modified: incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java?rev=1574282&r1=1574281&r2=1574282&view=diff ============================================================================== --- incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java (original) +++ incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java Wed Mar 5 01:46:55 2014 @@ -146,6 +146,13 @@ public class MsbuildMojo @FieldAnnotation() public String extraArguments; + /** + * @parameter expression="${plugin.version}" + * @required + * @readonly + */ + private String pluginVersion; + public String getMojoArtifactId() { return "NPanday.Plugin.Msbuild"; @@ -196,6 +203,14 @@ public class MsbuildMojo return frameworkVersion; } + /** + * The version of the .NET plugin to resolve, will typically match that of the Java wrapper. + */ + @Override + protected String getPluginVersion() { + return pluginVersion; + } + @Override public boolean preExecute() throws MojoExecutionException, MojoFailureException Modified: incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/javabinding/src/main/java/NPanday/Plugin/Settings/SettingsGeneratorMojo.java URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/javabinding/src/main/java/NPanday/Plugin/Settings/SettingsGeneratorMojo.java?rev=1574282&r1=1574281&r2=1574282&view=diff ============================================================================== --- incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/javabinding/src/main/java/NPanday/Plugin/Settings/SettingsGeneratorMojo.java (original) +++ incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/javabinding/src/main/java/NPanday/Plugin/Settings/SettingsGeneratorMojo.java Wed Mar 5 01:46:55 2014 @@ -103,6 +103,13 @@ public class SettingsGeneratorMojo */ private ArtifactFactory artifactFactory; + /** + * @parameter expression="${plugin.version}" + * @required + * @readonly + */ + private String pluginVersion; + public String getMojoArtifactId() { return "NPanday.Plugin.Settings"; @@ -154,6 +161,14 @@ public class SettingsGeneratorMojo } /** + * The version of the .NET plugin to resolve, will typically match that of the Java wrapper. + */ + @Override + protected String getPluginVersion() { + return pluginVersion; + } + + /** * @component */ private RepositoryRegistry repositoryRegistry; Modified: incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.SysRef/javabinding/src/main/java/NPanday/Plugin/SysRef/SysRefMojo.java URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.SysRef/javabinding/src/main/java/NPanday/Plugin/SysRef/SysRefMojo.java?rev=1574282&r1=1574281&r2=1574282&view=diff ============================================================================== --- incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.SysRef/javabinding/src/main/java/NPanday/Plugin/SysRef/SysRefMojo.java (original) +++ incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.SysRef/javabinding/src/main/java/NPanday/Plugin/SysRef/SysRefMojo.java Wed Mar 5 01:46:55 2014 @@ -81,6 +81,13 @@ public class SysRefMojo */ private ArtifactFactory artifactFactory; + /** + * @parameter expression="${plugin.version}" + * @required + * @readonly + */ + private String pluginVersion; + public String getMojoArtifactId() { return "NPanday.Plugin.SysRef"; @@ -131,6 +138,14 @@ public class SysRefMojo return frameworkVersion; } + /** + * The version of the .NET plugin to resolve, will typically match that of the Java wrapper. + */ + @Override + protected String getPluginVersion() { + return pluginVersion; + } + public ArtifactFactory getArtifactFactory() { return artifactFactory;