summaryrefslogtreecommitdiff
path: root/src/main/java/org/apache/maven/plugin/nar/NarResourcesMojo.java
diff options
context:
space:
mode:
authorMark Donszelmann <Mark.Donszelmann@gmail.com>2009-10-06 14:44:29 +0200
committerMark Donszelmann <Mark.Donszelmann@gmail.com>2009-10-06 14:44:29 +0200
commit3dca89f0015613ab3f287945965e9f92a6079cd8 (patch)
treea00619a63c55b74c16ac8116d04b21f322e1747b /src/main/java/org/apache/maven/plugin/nar/NarResourcesMojo.java
parent75b9fcffc6709f9c65990f6d04d593d3bfb4743d (diff)
downloadmaven-nar-plugin-3dca89f0015613ab3f287945965e9f92a6079cd8.tar.gz
maven-nar-plugin-3dca89f0015613ab3f287945965e9f92a6079cd8.tar.bz2
maven-nar-plugin-3dca89f0015613ab3f287945965e9f92a6079cd8.tar.xz
maven-nar-plugin-3dca89f0015613ab3f287945965e9f92a6079cd8.zip
Reformat all source files and add licenses to tests
Diffstat (limited to 'src/main/java/org/apache/maven/plugin/nar/NarResourcesMojo.java')
-rw-r--r--src/main/java/org/apache/maven/plugin/nar/NarResourcesMojo.java272
1 files changed, 144 insertions, 128 deletions
diff --git a/src/main/java/org/apache/maven/plugin/nar/NarResourcesMojo.java b/src/main/java/org/apache/maven/plugin/nar/NarResourcesMojo.java
index 90c19c0..a23bef4 100644
--- a/src/main/java/org/apache/maven/plugin/nar/NarResourcesMojo.java
+++ b/src/main/java/org/apache/maven/plugin/nar/NarResourcesMojo.java
@@ -34,146 +34,162 @@ import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.SelectorUtils;
/**
- * Copies any resources, including AOL specific distributions, to the target
- * area for packaging
+ * Copies any resources, including AOL specific distributions, to the target area for packaging
*
* @goal nar-resources
* @phase process-resources
* @requiresProject
* @author Mark Donszelmann
*/
-public class NarResourcesMojo extends AbstractCompileMojo {
-
- /**
- * Directory for nar resources. Defaults to src/nar/resources
- *
- * @parameter expression="${basedir}/src/nar/resources"
- * @required
- */
- private File resourceDirectory;
-
- /**
- * Binary directory (relative to ${resourceDirectory}/aol/${aol}
- *
- * @parameter expression="bin"
- * @required
- */
- private String resourceBinDir;
-
- /**
- * Include directory (relative to ${resourceDirectory}/aol/${aol}
- *
- * @parameter expression="include"
- * @required
- */
- private String resourceIncludeDir;
-
- /**
- * Library directory (relative to ${resourceDirectory}/aol/${aol}
- *
- * @parameter expression="lib"
- * @required
- */
- private String resourceLibDir;
-
+public class NarResourcesMojo
+ extends AbstractCompileMojo
+{
+
+ /**
+ * Directory for nar resources. Defaults to src/nar/resources
+ *
+ * @parameter expression="${basedir}/src/nar/resources"
+ * @required
+ */
+ private File resourceDirectory;
+
+ /**
+ * Binary directory (relative to ${resourceDirectory}/aol/${aol}
+ *
+ * @parameter expression="bin"
+ * @required
+ */
+ private String resourceBinDir;
+
+ /**
+ * Include directory (relative to ${resourceDirectory}/aol/${aol}
+ *
+ * @parameter expression="include"
+ * @required
+ */
+ private String resourceIncludeDir;
+
+ /**
+ * Library directory (relative to ${resourceDirectory}/aol/${aol}
+ *
+ * @parameter expression="lib"
+ * @required
+ */
+ private String resourceLibDir;
+
/**
* To look up Archiver/UnArchiver implementations
- *
+ *
* @component role="org.codehaus.plexus.archiver.manager.ArchiverManager"
* @required
*/
private ArchiverManager archiverManager;
- public void execute() throws MojoExecutionException, MojoFailureException {
- if (shouldSkip())
- return;
-
- // scan for AOLs
- File aolDir = new File(resourceDirectory, "aol");
- if (aolDir.exists()) {
- String[] aols = aolDir.list();
- for (int i = 0; i < aols.length; i++) {
- boolean ignore = false;
- for (Iterator j = FileUtils.getDefaultExcludesAsList()
- .iterator(); j.hasNext();) {
- String exclude = (String)j.next();
- if (SelectorUtils.matchPath(exclude.replace('/', File.separatorChar), aols[i])) {
- ignore = true;
- break;
- }
- }
- if (!ignore) {
- copyResources(new File(aolDir, aols[i]));
- }
- }
- }
- }
-
- private void copyResources(File aolDir) throws MojoExecutionException,
- MojoFailureException {
- String aol = aolDir.getName();
- int copied = 0;
- try {
- // copy headers
- File includeDir = new File(aolDir, resourceIncludeDir);
- if (includeDir.exists()) {
- File includeDstDir = new File(getTargetDirectory(), "include");
- copied += NarUtil.copyDirectoryStructure(includeDir,
- includeDstDir, null, NarUtil.DEFAULT_EXCLUDES);
- }
-
- // copy binaries
- File binDir = new File(aolDir, resourceBinDir);
- if (binDir.exists()) {
- File binDstDir = new File(getTargetDirectory(), "bin");
- binDstDir = new File(binDstDir, aol);
-
- copied += NarUtil.copyDirectoryStructure(binDir, binDstDir,
- null, NarUtil.DEFAULT_EXCLUDES);
- }
-
- // copy libraries
- File libDir = new File(aolDir, resourceLibDir);
- if (libDir.exists()) {
- // create all types of libs
- for (Iterator i = getLibraries().iterator(); i.hasNext();) {
- Library library = (Library) i.next();
- String type = library.getType();
- File libDstDir = new File(getTargetDirectory(), "lib");
- libDstDir = new File(libDstDir, aol);
- libDstDir = new File(libDstDir, type);
-
- // filter files for lib
- String includes = "**/*."
- + NarUtil.getDefaults().getProperty(
- NarUtil.getAOLKey(aol) + "." + type
- + ".extension");
- copied += NarUtil.copyDirectoryStructure(libDir, libDstDir,
- includes, NarUtil.DEFAULT_EXCLUDES);
- }
- }
-
- // unpack jar files
- File classesDirectory = new File(getOutputDirectory(),"classes");
- classesDirectory.mkdirs();
- List jars = FileUtils.getFiles(aolDir, "**/*.jar", null);
- for (Iterator i=jars.iterator(); i.hasNext(); ) {
- File jar = (File)i.next();
- getLog().debug("Unpacking jar "+jar);
- UnArchiver unArchiver;
- unArchiver = archiverManager.getUnArchiver(AbstractNarMojo.NAR_ROLE_HINT);
- unArchiver.setSourceFile(jar);
- unArchiver.setDestDirectory(classesDirectory);
- unArchiver.extract();
- }
- } catch (IOException e) {
- throw new MojoExecutionException("NAR: Could not copy resources", e);
- } catch (NoSuchArchiverException e) {
- throw new MojoExecutionException("NAR: Could not find archiver", e);
- } catch (ArchiverException e) {
- throw new MojoExecutionException("NAR: Could not unarchive jar file", e);
- }
- getLog().info("Copied " + copied + " resources for " + aol);
- }
+ public void execute()
+ throws MojoExecutionException, MojoFailureException
+ {
+ if ( shouldSkip() )
+ return;
+
+ // scan for AOLs
+ File aolDir = new File( resourceDirectory, "aol" );
+ if ( aolDir.exists() )
+ {
+ String[] aols = aolDir.list();
+ for ( int i = 0; i < aols.length; i++ )
+ {
+ boolean ignore = false;
+ for ( Iterator j = FileUtils.getDefaultExcludesAsList().iterator(); j.hasNext(); )
+ {
+ String exclude = (String) j.next();
+ if ( SelectorUtils.matchPath( exclude.replace( '/', File.separatorChar ), aols[i] ) )
+ {
+ ignore = true;
+ break;
+ }
+ }
+ if ( !ignore )
+ {
+ copyResources( new File( aolDir, aols[i] ) );
+ }
+ }
+ }
+ }
+
+ private void copyResources( File aolDir )
+ throws MojoExecutionException, MojoFailureException
+ {
+ String aol = aolDir.getName();
+ int copied = 0;
+ try
+ {
+ // copy headers
+ File includeDir = new File( aolDir, resourceIncludeDir );
+ if ( includeDir.exists() )
+ {
+ File includeDstDir = new File( getTargetDirectory(), "include" );
+ copied += NarUtil.copyDirectoryStructure( includeDir, includeDstDir, null, NarUtil.DEFAULT_EXCLUDES );
+ }
+
+ // copy binaries
+ File binDir = new File( aolDir, resourceBinDir );
+ if ( binDir.exists() )
+ {
+ File binDstDir = new File( getTargetDirectory(), "bin" );
+ binDstDir = new File( binDstDir, aol );
+
+ copied += NarUtil.copyDirectoryStructure( binDir, binDstDir, null, NarUtil.DEFAULT_EXCLUDES );
+ }
+
+ // copy libraries
+ File libDir = new File( aolDir, resourceLibDir );
+ if ( libDir.exists() )
+ {
+ // create all types of libs
+ for ( Iterator i = getLibraries().iterator(); i.hasNext(); )
+ {
+ Library library = (Library) i.next();
+ String type = library.getType();
+ File libDstDir = new File( getTargetDirectory(), "lib" );
+ libDstDir = new File( libDstDir, aol );
+ libDstDir = new File( libDstDir, type );
+
+ // filter files for lib
+ String includes =
+ "**/*."
+ + NarUtil.getDefaults().getProperty( NarUtil.getAOLKey( aol ) + "." + type + ".extension" );
+ copied += NarUtil.copyDirectoryStructure( libDir, libDstDir, includes, NarUtil.DEFAULT_EXCLUDES );
+ }
+ }
+
+ // unpack jar files
+ File classesDirectory = new File( getOutputDirectory(), "classes" );
+ classesDirectory.mkdirs();
+ List jars = FileUtils.getFiles( aolDir, "**/*.jar", null );
+ for ( Iterator i = jars.iterator(); i.hasNext(); )
+ {
+ File jar = (File) i.next();
+ getLog().debug( "Unpacking jar " + jar );
+ UnArchiver unArchiver;
+ unArchiver = archiverManager.getUnArchiver( AbstractNarMojo.NAR_ROLE_HINT );
+ unArchiver.setSourceFile( jar );
+ unArchiver.setDestDirectory( classesDirectory );
+ unArchiver.extract();
+ }
+ }
+ catch ( IOException e )
+ {
+ throw new MojoExecutionException( "NAR: Could not copy resources", e );
+ }
+ catch ( NoSuchArchiverException e )
+ {
+ throw new MojoExecutionException( "NAR: Could not find archiver", e );
+ }
+ catch ( ArchiverException e )
+ {
+ throw new MojoExecutionException( "NAR: Could not unarchive jar file", e );
+ }
+ getLog().info( "Copied " + copied + " resources for " + aol );
+ }
}