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 ap...@apache.org on 2010/11/19 10:47:04 UTC
svn commit: r1036796 - in
/incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src:
main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java
test/groovy/npanday/plugin/vsinstaller/VsInstallerMojoTest.groovy
Author: apadilla
Date: Fri Nov 19 10:47:04 2010
New Revision: 1036796
URL: http://svn.apache.org/viewvc?rev=1036796&view=rev
Log:
[NPANDAY-335]
* refactored code
- added a function that would get the installationLocation
- revised code that if "Program Files" doesn't exist, it will be installed to "user.dir"
- revised unit test
Modified:
incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java
incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/test/groovy/npanday/plugin/vsinstaller/VsInstallerMojoTest.groovy
Modified: incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java?rev=1036796&r1=1036795&r2=1036796&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java Fri Nov 19 10:47:04 2010
@@ -195,6 +195,8 @@ public class VsInstallerMojo
collectDefaultVSAddinDirectories();
+ getInstallationLocation();
+
for ( File vsAddinsDir : vsAddinDirectories )
{
writePlugin( vsAddinsDir );
@@ -275,12 +277,6 @@ public class VsInstallerMojo
writer = new OutputStreamWriter( new FileOutputStream( outputFile ), "Unicode" );
-
- if ( installationLocation == null || installationLocation.length() == 0 )
- {
- installationLocation = System.getenv( "PROGRAMFILES" ) + File.separator + "NPanday";
- }
-
writer.write( addin.replaceAll( "\\$\\{installationLocation\\}", installationLocation.replaceAll( "\\\\", "\\\\\\\\" ) ) );
}
catch ( IOException e )
@@ -327,21 +323,10 @@ public class VsInstallerMojo
{
String src = System.getProperty( "user.dir" ) + File.separator + "target";
- String dest;
-
- if ( installationLocation == null || installationLocation.length() == 0 )
- {
- dest = System.getenv( "PROGRAMFILES" ) + File.separator + "NPanday";
- }
- else
- {
- dest = installationLocation;
- }
-
File srcFolder = new File( src );
- File destFolder = new File( dest );
+ File destFolder = new File( installationLocation );
- new File( dest ).mkdirs();
+ new File( installationLocation ).mkdirs();
IOFileFilter dllSuffixFilter = FileFilterUtils.suffixFileFilter( ".dll" );
IOFileFilter dllFiles = FileFilterUtils.andFileFilter( FileFileFilter.FILE, dllSuffixFilter );
@@ -355,4 +340,20 @@ public class VsInstallerMojo
}
}
+ private void getInstallationLocation()
+ {
+ if ( installationLocation == null || installationLocation.length() == 0 )
+ {
+ String programFilesPath = System.getenv( "PROGRAMFILES" );
+
+ if ( programFilesPath == null || programFilesPath.length() == 0 )
+ {
+ programFilesPath = System.getProperty( "user.dir" );
+ }
+ installationLocation = programFilesPath + File.separator + "NPanday";
+ }
+
+ installationLocation = installationLocation + File.separator + "bin";
+ }
+
}
Modified: incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/test/groovy/npanday/plugin/vsinstaller/VsInstallerMojoTest.groovy
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/test/groovy/npanday/plugin/vsinstaller/VsInstallerMojoTest.groovy?rev=1036796&r1=1036795&r2=1036796&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/test/groovy/npanday/plugin/vsinstaller/VsInstallerMojoTest.groovy (original)
+++ incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/test/groovy/npanday/plugin/vsinstaller/VsInstallerMojoTest.groovy Fri Nov 19 10:47:04 2010
@@ -96,6 +96,7 @@ public class VsInstallerMojoTest{
mojo.collectDefaultVSAddinDirectories()
List results = mojo.vsAddinDirectories
+ mojo.installationLocation = tempDir.getPath()+"/bin"
mojo.localRepository = tempDir.getPath()+"/m2/repo"
results.each{ mojo.writePlugin it }
@@ -115,6 +116,7 @@ public class VsInstallerMojoTest{
mojo.collectDefaultVSAddinDirectories()
List results = mojo.vsAddinDirectories
+ mojo.installationLocation = tempDir.getPath()+"/bin"
mojo.localRepository = tempDir.getPath()+"/m2/repo"
results.each{ mojo.writePlugin it }
Re: svn commit: r1036796 - in /incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src: main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java test/groovy/npanday/plugin/vsinstaller/VsInstallerMojoTest.groovy
Posted by Brett Porter <br...@apache.org>.
On 19/11/2010, at 9:47 PM, apadilla@apache.org wrote:
> File srcFolder = new File( src );
> - File destFolder = new File( dest );
> + File destFolder = new File( installationLocation );
>
> - new File( dest ).mkdirs();
> + new File( installationLocation ).mkdirs();
...
> + private void getInstallationLocation()
> + {
> + if ( installationLocation == null || installationLocation.length() == 0 )
> + {
> + String programFilesPath = System.getenv( "PROGRAMFILES" );
> +
> + if ( programFilesPath == null || programFilesPath.length() == 0 )
> + {
> + programFilesPath = System.getProperty( "user.dir" );
> + }
> + installationLocation = programFilesPath + File.separator + "NPanday";
> + }
> +
> + installationLocation = installationLocation + File.separator + "bin";
> + }
I'd suggest making installationLocation a File type to start with - Maven will deal with it correctly. You should avoid pasting together paths - see this comment: https://issues.apache.org/jira/browse/NPANDAY-345?focusedCommentId=12932941&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12932941
That would also avoid needing to convert it twice in the earlier example.
- Brett
--
Brett Porter
brett@apache.org
http://brettporter.wordpress.com/