You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kh...@apache.org on 2014/10/23 23:01:38 UTC
svn commit: r1633948 [16/21] - in /maven/plugins/branches/MASSEMBLY-704: ./
integration-test-archetype/
integration-test-archetype/src/main/resources/META-INF/maven/
integration-test-archetype/src/main/resources/archetype-resources/
integration-test-ar...
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java Thu Oct 23 21:01:23 2014
@@ -20,6 +20,7 @@ package org.apache.maven.plugin.assembly
*/
import org.apache.maven.plugin.assembly.filter.ContainerDescriptorHandler;
+import org.codehaus.plexus.archiver.ArchiveEntry;
import org.codehaus.plexus.archiver.ArchiveFinalizer;
import org.codehaus.plexus.archiver.ArchivedFileSet;
import org.codehaus.plexus.archiver.Archiver;
@@ -35,6 +36,7 @@ import org.codehaus.plexus.components.io
import org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection;
import org.codehaus.plexus.logging.Logger;
+import javax.annotation.Nonnull;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
@@ -53,7 +55,7 @@ import java.util.Set;
* <li>prefixing (where all paths have a set global prefix prepended before addition)</li>
* <li>duplication checks on archive additions (for archive-file path + prefix)</li>
* </ul>
- *
+ *
* @author jdcasey
* @version $Id$
*/
@@ -86,15 +88,13 @@ public class AssemblyProxyArchiver
public AssemblyProxyArchiver( final String rootPrefix, final Archiver delegate,
final List<ContainerDescriptorHandler> containerDescriptorHandlers,
- final List<FileSelector> extraSelectors,
- final List<ArchiveFinalizer> extraFinalizers, final File assemblyWorkDir,
- final Logger logger, final boolean dryRun )
+ final List<FileSelector> extraSelectors, final List<ArchiveFinalizer> extraFinalizers,
+ final File assemblyWorkDir, final Logger logger, final boolean dryRun )
{
this.rootPrefix = rootPrefix;
this.delegate = delegate;
- assemblyWorkPath = assemblyWorkDir.getAbsolutePath()
- .replace( '\\', '/' );
+ assemblyWorkPath = assemblyWorkDir.getAbsolutePath().replace( '\\', '/' );
this.logger = logger;
this.dryRun = dryRun;
@@ -106,7 +106,7 @@ public class AssemblyProxyArchiver
final List<FileSelector> selectors = new ArrayList<FileSelector>();
- final boolean isFinalizerEnabled = ( delegate instanceof FinalizerEnabled );
+ FinalizerEnabled finalizer = ( delegate instanceof FinalizerEnabled ) ? (FinalizerEnabled) delegate : null;
if ( containerDescriptorHandlers != null )
{
@@ -114,9 +114,9 @@ public class AssemblyProxyArchiver
{
selectors.add( handler );
- if ( isFinalizerEnabled )
+ if ( finalizer != null )
{
- ( (FinalizerEnabled) delegate ).addArchiveFinalizer( handler );
+ finalizer.addArchiveFinalizer( handler );
}
}
}
@@ -129,11 +129,11 @@ public class AssemblyProxyArchiver
}
}
- if ( ( extraFinalizers != null ) && isFinalizerEnabled )
+ if ( ( extraFinalizers != null ) && finalizer != null )
{
for ( ArchiveFinalizer extraFinalizer : extraFinalizers )
{
- ( (FinalizerEnabled) delegate ).addArchiveFinalizer( extraFinalizer );
+ finalizer.addArchiveFinalizer( extraFinalizer );
}
}
@@ -143,9 +143,11 @@ public class AssemblyProxyArchiver
}
}
- public void addArchivedFileSet( final File archiveFile, final String prefix, final String[] includes,
+ /**
+ * {@inheritDoc}
+ */
+ public void addArchivedFileSet( final @Nonnull File archiveFile, final String prefix, final String[] includes,
final String[] excludes )
- throws ArchiverException
{
final String archiveKey = getArchiveKey( archiveFile, prefix );
if ( seenPaths.contains( archiveKey ) )
@@ -204,7 +206,10 @@ public class AssemblyProxyArchiver
}
}
- public void addArchivedFileSet( final File archiveFile, final String prefix )
+ /**
+ * {@inheritDoc}
+ */
+ public void addArchivedFileSet( final @Nonnull File archiveFile, final String prefix )
throws ArchiverException
{
final String archiveKey = getArchiveKey( archiveFile, prefix );
@@ -241,6 +246,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void addArchivedFileSet( final File archiveFile, final String[] includes, final String[] excludes )
throws ArchiverException
{
@@ -280,7 +288,10 @@ public class AssemblyProxyArchiver
}
}
- public void addArchivedFileSet( final File archiveFile )
+ /**
+ * {@inheritDoc}
+ */
+ public void addArchivedFileSet( final @Nonnull File archiveFile )
throws ArchiverException
{
final String archiveKey = getArchiveKey( archiveFile, "" );
@@ -317,7 +328,10 @@ public class AssemblyProxyArchiver
}
}
- public void addDirectory( final File directory, final String prefix, final String[] includes,
+ /**
+ * {@inheritDoc}
+ */
+ public void addDirectory( final @Nonnull File directory, final String prefix, final String[] includes,
final String[] excludes )
throws ArchiverException
{
@@ -349,7 +363,61 @@ public class AssemblyProxyArchiver
}
}
- public void addDirectory( final File directory, final String prefix )
+ /**
+ * {@inheritDoc}
+ */
+ public void addSymlink( String symlinkName, String symlinkDestination )
+ throws ArchiverException
+ {
+ inPublicApi.set( Boolean.TRUE );
+ try
+ {
+ if ( dryRun )
+ {
+ debug( "DRY RUN: Skipping delegated call to: " + getMethodName() );
+ }
+ else
+ {
+ delegate.addSymlink( symlinkName, symlinkDestination );
+ }
+ }
+ finally
+ {
+ inPublicApi.set( null );
+ }
+
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void addSymlink( String symlinkName, int permissions, String symlinkDestination )
+ throws ArchiverException
+ {
+ inPublicApi.set( Boolean.TRUE );
+ try
+ {
+ if ( dryRun )
+ {
+ debug( "DRY RUN: Skipping delegated call to: " + getMethodName() );
+ }
+ else
+ {
+ delegate.addSymlink( symlinkName, permissions, symlinkDestination );
+ }
+
+ }
+ finally
+ {
+ inPublicApi.set( null );
+ }
+
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void addDirectory( final @Nonnull File directory, final String prefix )
throws ArchiverException
{
inPublicApi.set( Boolean.TRUE );
@@ -378,7 +446,10 @@ public class AssemblyProxyArchiver
}
}
- public void addDirectory( final File directory, final String[] includes, final String[] excludes )
+ /**
+ * {@inheritDoc}
+ */
+ public void addDirectory( final @Nonnull File directory, final String[] includes, final String[] excludes )
throws ArchiverException
{
inPublicApi.set( Boolean.TRUE );
@@ -409,7 +480,10 @@ public class AssemblyProxyArchiver
}
}
- public void addDirectory( final File directory )
+ /**
+ * {@inheritDoc}
+ */
+ public void addDirectory( final @Nonnull File directory )
throws ArchiverException
{
inPublicApi.set( Boolean.TRUE );
@@ -438,7 +512,10 @@ public class AssemblyProxyArchiver
}
}
- public void addFile( final File inputFile, final String destFileName, final int permissions )
+ /**
+ * {@inheritDoc}
+ */
+ public void addFile( final @Nonnull File inputFile, final @Nonnull String destFileName, final int permissions )
throws ArchiverException
{
if ( acceptFile( inputFile ) )
@@ -464,7 +541,10 @@ public class AssemblyProxyArchiver
}
}
- public void addFile( final File inputFile, final String destFileName )
+ /**
+ * {@inheritDoc}
+ */
+ public void addFile( final @Nonnull File inputFile, final @Nonnull String destFileName )
throws ArchiverException
{
if ( acceptFile( inputFile ) )
@@ -490,6 +570,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void createArchive()
throws ArchiverException, IOException
{
@@ -512,6 +595,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public int getDefaultDirectoryMode()
{
inPublicApi.set( Boolean.TRUE );
@@ -525,6 +611,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public int getDefaultFileMode()
{
inPublicApi.set( Boolean.TRUE );
@@ -538,6 +627,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public File getDestFile()
{
inPublicApi.set( Boolean.TRUE );
@@ -552,7 +644,7 @@ public class AssemblyProxyArchiver
}
@SuppressWarnings( { "rawtypes", "deprecation" } )
- public Map getFiles()
+ /** {@inheritDoc} */ public Map<String, ArchiveEntry> getFiles()
{
inPublicApi.set( Boolean.TRUE );
try
@@ -565,6 +657,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public boolean getIncludeEmptyDirs()
{
inPublicApi.set( Boolean.TRUE );
@@ -578,6 +673,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public boolean isForced()
{
inPublicApi.set( Boolean.TRUE );
@@ -591,6 +689,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public boolean isSupportingForced()
{
inPublicApi.set( Boolean.TRUE );
@@ -604,6 +705,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void setDefaultDirectoryMode( final int mode )
{
inPublicApi.set( Boolean.TRUE );
@@ -617,6 +721,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void setDefaultFileMode( final int mode )
{
inPublicApi.set( Boolean.TRUE );
@@ -630,6 +737,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void setDestFile( final File destFile )
{
inPublicApi.set( Boolean.TRUE );
@@ -643,6 +753,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void setForced( final boolean forced )
{
inPublicApi.set( Boolean.TRUE );
@@ -657,6 +770,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void setIncludeEmptyDirs( final boolean includeEmptyDirs )
{
inPublicApi.set( Boolean.TRUE );
@@ -670,11 +786,18 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void setDotFileDirectory( final File dotFileDirectory )
{
- throw new UnsupportedOperationException( "Undocumented feature of plexus-archiver; this is not yet supported." );
+ throw new UnsupportedOperationException(
+ "Undocumented feature of plexus-archiver; this is not yet supported." );
}
+ /**
+ * {@inheritDoc}
+ */
public void addArchivedFileSet( final ArchivedFileSet fileSet )
throws ArchiverException
{
@@ -708,7 +831,10 @@ public class AssemblyProxyArchiver
}
}
- public void addFileSet( final FileSet fileSet )
+ /**
+ * {@inheritDoc}
+ */
+ public void addFileSet( final @Nonnull FileSet fileSet )
throws ArchiverException
{
inPublicApi.set( Boolean.TRUE );
@@ -736,9 +862,7 @@ public class AssemblyProxyArchiver
private void doAddFileSet( final FileSet fs )
throws ArchiverException
{
- final String fsPath = fs.getDirectory()
- .getAbsolutePath()
- .replace( '\\', '/' );
+ final String fsPath = fs.getDirectory().getAbsolutePath().replace( '\\', '/' );
if ( fsPath.equals( assemblyWorkPath ) )
{
@@ -754,8 +878,9 @@ public class AssemblyProxyArchiver
final String workDirExclude = assemblyWorkPath.substring( fsPath.length() + 1 );
- logger.debug( "Adding exclude for assembly working-directory: " + workDirExclude
- + "\nFile-Set source directory: " + fsPath );
+ logger.debug(
+ "Adding exclude for assembly working-directory: " + workDirExclude + "\nFile-Set source directory: "
+ + fsPath );
newEx.add( workDirExclude );
@@ -803,7 +928,7 @@ public class AssemblyProxyArchiver
private boolean acceptFile( final File inputFile )
throws ArchiverException
{
- if ( Boolean.TRUE != inPublicApi.get() )
+ if ( !Boolean.TRUE.equals( inPublicApi.get()) )
{
if ( selectors != null )
{
@@ -862,8 +987,15 @@ public class AssemblyProxyArchiver
return inputFile.isFile();
}
+ public boolean isSymbolicLink()
+ {
+ return false;
+ }
}
+ /**
+ * {@inheritDoc}
+ */
public void addResource( final PlexusIoResource resource, final String destFileName, final int permissions )
throws ArchiverException
{
@@ -878,6 +1010,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void addResources( final PlexusIoResourceCollection resources )
throws ArchiverException
{
@@ -892,17 +1027,28 @@ public class AssemblyProxyArchiver
}
}
- public ResourceIterator getResources()
+ /**
+ * {@inheritDoc}
+ */
+ public
+ @Nonnull
+ ResourceIterator getResources()
throws ArchiverException
{
return delegate.getResources();
}
+ /**
+ * {@inheritDoc}
+ */
public String getDuplicateBehavior()
{
return delegate.getDuplicateBehavior();
}
+ /**
+ * {@inheritDoc}
+ */
public void setDuplicateBehavior( final String duplicate )
{
inPublicApi.set( Boolean.TRUE );
@@ -916,26 +1062,41 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public int getDirectoryMode()
{
return delegate.getDirectoryMode();
}
+ /**
+ * {@inheritDoc}
+ */
public int getFileMode()
{
return delegate.getFileMode();
}
+ /**
+ * {@inheritDoc}
+ */
public int getOverrideDirectoryMode()
{
return delegate.getOverrideDirectoryMode();
}
+ /**
+ * {@inheritDoc}
+ */
public int getOverrideFileMode()
{
return delegate.getOverrideFileMode();
}
+ /**
+ * {@inheritDoc}
+ */
public void setDirectoryMode( final int mode )
{
inPublicApi.set( Boolean.TRUE );
@@ -949,6 +1110,9 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public void setFileMode( final int mode )
{
inPublicApi.set( Boolean.TRUE );
@@ -962,21 +1126,33 @@ public class AssemblyProxyArchiver
}
}
+ /**
+ * {@inheritDoc}
+ */
public boolean isUseJvmChmod()
{
return useJvmChmod;
}
+ /**
+ * {@inheritDoc}
+ */
public void setUseJvmChmod( final boolean useJvmChmod )
{
this.useJvmChmod = useJvmChmod;
}
+ /**
+ * {@inheritDoc}
+ */
public boolean isIgnorePermissions()
{
return delegate.isIgnorePermissions();
}
+ /**
+ * {@inheritDoc}
+ */
public void setIgnorePermissions( final boolean ignorePermissions )
{
delegate.setIgnorePermissions( ignorePermissions );
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedArchivedFileSet.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedArchivedFileSet.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedArchivedFileSet.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedArchivedFileSet.java Thu Oct 23 21:01:23 2014
@@ -19,28 +19,38 @@ package org.apache.maven.plugin.assembly
* under the License.
*/
+import static org.apache.maven.plugin.assembly.archive.archiver.PrefixedFileSet.combineSelectors;
+
import org.codehaus.plexus.archiver.ArchivedFileSet;
import org.codehaus.plexus.components.io.fileselectors.FileSelector;
+import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
import java.io.File;
/**
* @version $Id$
*/
-public class PrefixedArchivedFileSet
+class PrefixedArchivedFileSet
implements ArchivedFileSet
{
private final String rootPrefix;
+
private final ArchivedFileSet fileSet;
+
private final FileSelector[] selectors;
+ /**
+ * @param fileSet The archived file set.
+ * @param rootPrefix The root prefix.
+ * @param selectors The file selectors.
+ */
public PrefixedArchivedFileSet( ArchivedFileSet fileSet, String rootPrefix, FileSelector[] selectors )
{
this.fileSet = fileSet;
this.selectors = selectors;
- if ( rootPrefix.length() > 0 && ! rootPrefix.endsWith( "/" ) )
+ if ( rootPrefix.length() > 0 && !rootPrefix.endsWith( "/" ) )
{
this.rootPrefix = rootPrefix + "/";
}
@@ -50,41 +60,31 @@ public class PrefixedArchivedFileSet
}
}
+ /** {@inheritDoc} */
public File getArchive()
{
return fileSet.getArchive();
}
+ /** {@inheritDoc} */
public String[] getExcludes()
{
return fileSet.getExcludes();
}
+ /** {@inheritDoc} */
public FileSelector[] getFileSelectors()
{
- FileSelector[] sel = fileSet.getFileSelectors();
- if ( ( sel != null ) && ( selectors != null ) )
- {
- FileSelector[] temp = new FileSelector[ sel.length + selectors.length ];
-
- System.arraycopy( sel, 0, temp, 0, sel.length );
- System.arraycopy( selectors, 0, temp, sel.length, selectors.length );
-
- sel = temp;
- }
- else if ( ( sel == null ) && ( selectors != null ) )
- {
- sel = selectors;
- }
-
- return sel;
+ return combineSelectors( fileSet.getFileSelectors(), selectors );
}
+ /** {@inheritDoc} */
public String[] getIncludes()
{
return fileSet.getIncludes();
}
+ /** {@inheritDoc} */
public String getPrefix()
{
String prefix = fileSet.getPrefix();
@@ -103,19 +103,27 @@ public class PrefixedArchivedFileSet
return rootPrefix + prefix;
}
+ /** {@inheritDoc} */
public boolean isCaseSensitive()
{
return fileSet.isCaseSensitive();
}
+ /** {@inheritDoc} */
public boolean isIncludingEmptyDirectories()
{
return fileSet.isIncludingEmptyDirectories();
}
+ /** {@inheritDoc} */
public boolean isUsingDefaultExcludes()
{
return fileSet.isUsingDefaultExcludes();
}
+ public InputStreamTransformer getStreamTransformer()
+ {
+ return fileSet.getStreamTransformer();
+ }
+
}
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedFileSet.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedFileSet.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedFileSet.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedFileSet.java Thu Oct 23 21:01:23 2014
@@ -21,13 +21,14 @@ package org.apache.maven.plugin.assembly
import org.codehaus.plexus.archiver.FileSet;
import org.codehaus.plexus.components.io.fileselectors.FileSelector;
+import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
import java.io.File;
/**
* @version $Id$
*/
-public class PrefixedFileSet
+class PrefixedFileSet
implements FileSet
{
@@ -37,6 +38,11 @@ public class PrefixedFileSet
private final FileSelector[] selectors;
+ /**
+ * @param fileSet The file set.
+ * @param rootPrefix The root prefix
+ * @param selectors The file selectors.
+ */
public PrefixedFileSet( final FileSet fileSet, final String rootPrefix, final FileSelector[] selectors )
{
this.fileSet = fileSet;
@@ -52,36 +58,47 @@ public class PrefixedFileSet
}
}
+ /** {@inheritDoc} */
public String[] getExcludes()
{
return fileSet.getExcludes();
}
+ /** {@inheritDoc} */
public FileSelector[] getFileSelectors()
{
FileSelector[] sel = fileSet.getFileSelectors();
- if ( ( sel != null ) && ( selectors != null ) )
+ final FileSelector[] selectors1 = selectors;
+ return combineSelectors( sel, selectors1 );
+ }
+
+ /** {@inheritDoc} */
+ static FileSelector[] combineSelectors( FileSelector[] first, FileSelector[] second )
+ {
+ if ( ( first != null ) && ( second != null ) )
{
- final FileSelector[] temp = new FileSelector[sel.length + selectors.length];
+ final FileSelector[] temp = new FileSelector[first.length + second.length];
- System.arraycopy( sel, 0, temp, 0, sel.length );
- System.arraycopy( selectors, 0, temp, sel.length, selectors.length );
+ System.arraycopy( first, 0, temp, 0, first.length );
+ System.arraycopy( second, 0, temp, first.length, second.length );
- sel = temp;
+ first = temp;
}
- else if ( ( sel == null ) && ( selectors != null ) )
+ else if ( ( first == null ) && ( second != null ) )
{
- sel = selectors;
+ first = second;
}
- return sel;
+ return first;
}
+ /** {@inheritDoc} */
public String[] getIncludes()
{
return fileSet.getIncludes();
}
+ /** {@inheritDoc} */
public String getPrefix()
{
String prefix = fileSet.getPrefix();
@@ -105,24 +122,32 @@ public class PrefixedFileSet
return rootPrefix + prefix;
}
+ /** {@inheritDoc} */
public boolean isCaseSensitive()
{
return fileSet.isCaseSensitive();
}
+ /** {@inheritDoc} */
public boolean isIncludingEmptyDirectories()
{
return fileSet.isIncludingEmptyDirectories();
}
+ /** {@inheritDoc} */
public boolean isUsingDefaultExcludes()
{
return fileSet.isUsingDefaultExcludes();
}
+ /** {@inheritDoc} */
public File getDirectory()
{
return fileSet.getDirectory();
}
+ public InputStreamTransformer getStreamTransformer()
+ {
+ return fileSet.getStreamTransformer();
+ }
}
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/SarUnArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/SarUnArchiver.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/SarUnArchiver.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/SarUnArchiver.java Thu Oct 23 21:01:23 2014
@@ -26,7 +26,7 @@ import org.codehaus.plexus.archiver.zip.
* @version $Id$
* @todo delete this class once the plexus maven plugin can merge a generated components.xml with an existing one.
*/
-public class SarUnArchiver
+class SarUnArchiver
extends ZipUnArchiver
{
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java Thu Oct 23 21:01:23 2014
@@ -20,11 +20,10 @@ package org.apache.maven.plugin.assembly
*/
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.codehaus.plexus.archiver.Archiver;
/**
@@ -40,16 +39,14 @@ public interface AssemblyArchiverPhase
/**
* Handle the associated section of the assembly descriptor.
*
- * @param assembly
- * The assembly descriptor to use
- * @param archiver
- * The archiver used to create the assembly archive, to which files/directories/artifacts are added
- * @param configSource
- * The configuration for this assembly build, normally derived from the plugin that launched the assembly
- * process.
- * @param context
+ * @param assembly The assembly descriptor to use
+ * @param archiver The archiver used to create the assembly archive, to which files/directories/artifacts are added
+ * @param configSource The configuration for this assembly build, normally derived from the plugin that launched the
+ * assembly process.
+ * @throws ArchiveCreationException in case of an archive creation error.
+ * @throws AssemblyFormattingException in case of a assembly formatting exception.
+ * @throws InvalidAssemblerConfigurationException in case of an invalid assembler configuration.
*/
- void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource,
- AssemblyContext context )
+ void execute( ResolvedAssembly assembly, Archiver archiver, AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException;
}
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java Thu Oct 23 21:01:23 2014
@@ -20,12 +20,11 @@ package org.apache.maven.plugin.assembly
*/
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.project.MavenProjectBuilder;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.manager.ArchiverManager;
@@ -51,11 +50,18 @@ public class DependencySetAssemblyPhase
@Requirement
private ArchiverManager archiverManager;
+ /**
+ * Default constructor.
+ */
public DependencySetAssemblyPhase()
{
// used for plexus init
}
+ /**
+ * @param projectBuilder The Maven Project Builder.
+ * @param logger The Logger.
+ */
public DependencySetAssemblyPhase( final MavenProjectBuilder projectBuilder, final Logger logger )
{
this.projectBuilder = projectBuilder;
@@ -65,12 +71,12 @@ public class DependencySetAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
final AddDependencySetsTask task =
- new AddDependencySetsTask( assembly.getDependencySets(), context.getResolvedArtifacts(),
+ new AddDependencySetsTask( assembly.getDependencySets(), assembly.getResolvedDependencySetArtifacts(),
configSource.getProject(), projectBuilder, archiverManager, getLogger() );
task.execute( archiver, configSource );
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java Thu Oct 23 21:01:23 2014
@@ -20,16 +20,14 @@ package org.apache.maven.plugin.assembly
*/
import java.io.File;
-import java.util.Iterator;
import java.util.List;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.format.FileFormatter;
-import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.FileItem;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
import org.codehaus.plexus.archiver.Archiver;
@@ -51,57 +49,68 @@ public class FileItemAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException
{
final List<FileItem> fileList = assembly.getFiles();
final File basedir = configSource.getBasedir();
final FileFormatter fileFormatter = new FileFormatter( configSource, getLogger() );
- for (final FileItem fileItem : fileList) {
+ for ( final FileItem fileItem : fileList )
+ {
final String sourcePath = fileItem.getSource();
// ensure source file is in absolute path for reactor build to work
- File source = new File(sourcePath);
+ File source = new File( sourcePath );
// save the original sourcefile's name, because filtration may
// create a temp file with a different name.
final String sourceName = source.getName();
- if (!source.isAbsolute()) {
- source = new File(basedir, sourcePath);
+ if ( !source.isAbsolute() )
+ {
+ source = new File( basedir, sourcePath );
}
source =
- fileFormatter.format(source, fileItem.isFiltered(), fileItem.getLineEnding(),
- configSource.getEncoding());
+ fileFormatter.format( source, fileItem.isFiltered(), fileItem.getLineEnding(),
+ configSource.getEncoding() );
String destName = fileItem.getDestName();
- if (destName == null) {
+ if ( destName == null )
+ {
destName = sourceName;
}
final String outputDirectory =
- AssemblyFormatUtils.getOutputDirectory(fileItem.getOutputDirectory(), configSource.getProject(), null,
- configSource.getFinalName(), configSource);
+ AssemblyFormatUtils.getOutputDirectory( fileItem.getOutputDirectory(), configSource.getProject(), null,
+ configSource.getFinalName(), configSource );
String target;
// omit the last char if ends with / or \\
- if (outputDirectory.endsWith("/") || outputDirectory.endsWith("\\")) {
+ if ( outputDirectory.endsWith( "/" ) || outputDirectory.endsWith( "\\" ) )
+ {
target = outputDirectory + destName;
- } else if (outputDirectory.length() < 1) {
+ }
+ else if ( outputDirectory.length() < 1 )
+ {
target = destName;
- } else {
+ }
+ else
+ {
target = outputDirectory + "/" + destName;
}
- try {
- archiver.addFile(source, target, TypeConversionUtils.modeToInt(fileItem.getFileMode(), getLogger()));
- } catch (final ArchiverException e) {
- throw new ArchiveCreationException("Error adding file to archive: " + e.getMessage(), e);
+ try
+ {
+ archiver.addFile( source, target, TypeConversionUtils.modeToInt( fileItem.getFileMode(), getLogger() ) );
+ }
+ catch ( final ArchiverException e )
+ {
+ throw new ArchiveCreationException( "Error adding file to archive: " + e.getMessage(), e );
}
}
}
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java Thu Oct 23 21:01:23 2014
@@ -22,16 +22,17 @@ package org.apache.maven.plugin.assembly
import java.util.List;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.AddFileSetsTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.FileSet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.logging.AbstractLogEnabled;
+import javax.annotation.Nonnull;
+
/**
* Handles the <fileSets/> top-level section of the assembly descriptor.
*
@@ -46,8 +47,8 @@ public class FileSetAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( @Nonnull final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException
{
final List<FileSet> fileSets = assembly.getFileSets();
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java Thu Oct 23 21:01:23 2014
@@ -30,22 +30,25 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
+import javax.annotation.Nonnull;
+
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.AddArtifactTask;
import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
import org.apache.maven.plugin.assembly.archive.task.AddFileSetsTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.DependencySet;
import org.apache.maven.plugin.assembly.model.FileSet;
import org.apache.maven.plugin.assembly.model.ModuleBinaries;
import org.apache.maven.plugin.assembly.model.ModuleSet;
import org.apache.maven.plugin.assembly.model.ModuleSources;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
+import org.apache.maven.plugin.assembly.resolved.functions.ResolvedModuleSetConsumer;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.apache.maven.plugin.assembly.utils.FilterUtils;
import org.apache.maven.plugin.assembly.utils.ProjectUtils;
@@ -70,8 +73,11 @@ public class ModuleSetAssemblyPhase
implements AssemblyArchiverPhase
{
- //TODO: Remove if using something like commons-lang instead.
- public static final String LINE_SEPARATOR = System.getProperty("line.separator");
+ // TODO: Remove if using something like commons-lang instead.
+ /**
+ * The line separator.
+ */
+ private static final String LINE_SEPARATOR = System.getProperty( "line.separator" );
@Requirement
private MavenProjectBuilder projectBuilder;
@@ -79,11 +85,18 @@ public class ModuleSetAssemblyPhase
@Requirement
private ArchiverManager archiverManager;
+ /**
+ * Create an instance.
+ */
public ModuleSetAssemblyPhase()
{
// needed for plexus
}
+ /**
+ * @param projectBuilder The project builder.
+ * @param logger The logger.
+ */
public ModuleSetAssemblyPhase( final MavenProjectBuilder projectBuilder, final Logger logger )
{
this.projectBuilder = projectBuilder;
@@ -93,23 +106,27 @@ public class ModuleSetAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
- final List<ModuleSet> moduleSets = assembly.getModuleSets();
-
- for (final ModuleSet moduleSet : moduleSets) {
- validate(moduleSet, configSource);
+ assembly.forEachResolvedModule( new ResolvedModuleSetConsumer()
+ {
+ public void accept( ResolvedModuleSet resolvedModule )
+ throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
+ {
+ validate( resolvedModule.getModuleSet(), configSource );
- final Set<MavenProject> moduleProjects = getModuleProjects(moduleSet, configSource, getLogger());
+ final Set<MavenProject> moduleProjects =
+ getModuleProjects( resolvedModule.getModuleSet(), configSource, getLogger() );
- final ModuleSources sources = moduleSet.getSources();
- addModuleSourceFileSets(sources, moduleProjects, archiver, configSource);
+ final ModuleSources sources = resolvedModule.getModuleSet().getSources();
+ addModuleSourceFileSets( sources, moduleProjects, archiver, configSource );
- final ModuleBinaries binaries = moduleSet.getBinaries();
- addModuleBinaries(binaries, moduleProjects, archiver, configSource, context);
- }
+ final ModuleBinaries binaries = resolvedModule.getModuleSet().getBinaries();
+ addModuleBinaries( resolvedModule, binaries, moduleProjects, archiver, configSource );
+ }
+ } );
}
private void validate( final ModuleSet moduleSet, final AssemblerConfigurationSource configSource )
@@ -153,9 +170,9 @@ public class ModuleSetAssemblyPhase
}
}
- protected void addModuleBinaries( final ModuleBinaries binaries, final Set<MavenProject> projects,
- final Archiver archiver, final AssemblerConfigurationSource configSource,
- final AssemblyContext context )
+ void addModuleBinaries( ResolvedModuleSet resolvedModule, final ModuleBinaries binaries,
+ final Set<MavenProject> projects, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
if ( binaries == null )
@@ -183,55 +200,66 @@ public class ModuleSetAssemblyPhase
final Map<MavenProject, Artifact> chosenModuleArtifacts = new HashMap<MavenProject, Artifact>();
- for (final MavenProject project : moduleProjects) {
+ for ( final MavenProject project : moduleProjects )
+ {
Artifact artifact = null;
- if (classifier == null) {
- getLogger().debug("Processing binary artifact for module project: " + project.getId());
+ if ( classifier == null )
+ {
+ getLogger().debug( "Processing binary artifact for module project: " + project.getId() );
artifact = project.getArtifact();
- } else {
- getLogger().debug("Processing binary attachment: " + classifier + " for module project: "
- + project.getId());
+ }
+ else
+ {
+ getLogger().debug( "Processing binary attachment: " + classifier + " for module project: "
+ + project.getId() );
- @SuppressWarnings("unchecked")
+ @SuppressWarnings( "unchecked" )
final List<Artifact> attachments = project.getAttachedArtifacts();
- if ((attachments != null) && !attachments.isEmpty()) {
- for (final Artifact attachment : attachments) {
- if (classifier.equals(attachment.getClassifier())) {
+ if ( ( attachments != null ) && !attachments.isEmpty() )
+ {
+ for ( final Artifact attachment : attachments )
+ {
+ if ( classifier.equals( attachment.getClassifier() ) )
+ {
artifact = attachment;
break;
}
}
}
- if (artifact == null) {
- throw new InvalidAssemblerConfigurationException("Cannot find attachment with classifier: "
- + classifier + " in module project: " + project.getId()
- + ". Please exclude this module from the module-set.");
+ if ( artifact == null )
+ {
+ throw new InvalidAssemblerConfigurationException( "Cannot find attachment with classifier: "
+ + classifier + " in module project: " + project.getId()
+ + ". Please exclude this module from the module-set." );
}
}
- chosenModuleArtifacts.put(project, artifact);
- addModuleArtifact(artifact, project, archiver, configSource, binaries);
+ chosenModuleArtifacts.put( project, artifact );
+ addModuleArtifact( artifact, project, archiver, configSource, binaries );
}
final List<DependencySet> depSets = getDependencySets( binaries );
if ( depSets != null )
{
- for (final DependencySet ds : depSets) {
+ for ( final DependencySet ds : depSets )
+ {
// NOTE: Disabling useProjectArtifact flag, since module artifact has already been handled!
- ds.setUseProjectArtifact(false);
+ ds.setUseProjectArtifact( false );
}
- //TODO: The following should be moved into a shared component, cause this
- //test is the same as in maven-enforce rules ReactorModuleConvergence.
+ // TODO: The following should be moved into a shared component, cause this
+ // test is the same as in maven-enforce rules ReactorModuleConvergence.
List<MavenProject> validateModuleVersions = validateModuleVersions( moduleProjects );
- if (!validateModuleVersions.isEmpty()) {
-
- StringBuilder sb = new StringBuilder().append( "The current modules seemed to be having different versions.");
- sb.append (LINE_SEPARATOR);
+ if ( !validateModuleVersions.isEmpty() )
+ {
+
+ StringBuilder sb =
+ new StringBuilder().append( "The current modules seemed to be having different versions." );
+ sb.append( LINE_SEPARATOR );
for ( MavenProject mavenProject : validateModuleVersions )
{
sb.append( " --> " );
@@ -241,27 +269,30 @@ public class ModuleSetAssemblyPhase
getLogger().warn( sb.toString() );
}
- for (final MavenProject moduleProject : moduleProjects) {
- getLogger().debug("Processing binary dependencies for module project: " + moduleProject.getId());
+ for ( final MavenProject moduleProject : moduleProjects )
+ {
+ getLogger().debug( "Processing binary dependencies for module project: " + moduleProject.getId() );
final AddDependencySetsTask task =
- new AddDependencySetsTask(depSets, context.getResolvedArtifacts(), moduleProject, projectBuilder,
- archiverManager, getLogger());
+ new AddDependencySetsTask( depSets, resolvedModule.getArtifacts(), moduleProject, projectBuilder,
+ archiverManager, getLogger() );
- task.setModuleProject(moduleProject);
- task.setModuleArtifact(chosenModuleArtifacts.get(moduleProject));
- task.setDefaultOutputDirectory(binaries.getOutputDirectory());
- task.setDefaultOutputFileNameMapping(binaries.getOutputFileNameMapping());
+ task.setModuleProject( moduleProject );
+ task.setModuleArtifact( chosenModuleArtifacts.get( moduleProject ) );
+ task.setDefaultOutputDirectory( binaries.getOutputDirectory() );
+ task.setDefaultOutputFileNameMapping( binaries.getOutputFileNameMapping() );
- task.execute(archiver, configSource);
+ task.execute( archiver, configSource );
}
}
}
- private List<MavenProject> validateModuleVersions (Set<MavenProject> moduleProjects) {
+ private List<MavenProject> validateModuleVersions( Set<MavenProject> moduleProjects )
+ {
List<MavenProject> result = new ArrayList<MavenProject>();
- if (moduleProjects != null && !moduleProjects.isEmpty()) {
+ if ( moduleProjects != null && !moduleProjects.isEmpty() )
+ {
String version = moduleProjects.iterator().next().getVersion();
getLogger().debug( "First version:" + version );
for ( MavenProject mavenProject : moduleProjects )
@@ -275,7 +306,7 @@ public class ModuleSetAssemblyPhase
}
return result;
}
-
+
public static List<DependencySet> getDependencySets( final ModuleBinaries binaries )
{
List<DependencySet> depSets = binaries.getDependencySets();
@@ -321,8 +352,8 @@ public class ModuleSetAssemblyPhase
// return excludes;
// }
- protected void addModuleArtifact( final Artifact artifact, final MavenProject project, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final ModuleBinaries binaries )
+ void addModuleArtifact( final Artifact artifact, final MavenProject project, final Archiver archiver,
+ final AssemblerConfigurationSource configSource, final ModuleBinaries binaries )
throws ArchiveCreationException, AssemblyFormattingException
{
if ( artifact.getFile() == null )
@@ -363,8 +394,8 @@ public class ModuleSetAssemblyPhase
task.execute( archiver, configSource );
}
- protected void addModuleSourceFileSets( final ModuleSources sources, final Set<MavenProject> moduleProjects,
- final Archiver archiver, final AssemblerConfigurationSource configSource )
+ void addModuleSourceFileSets( final ModuleSources sources, final Set<MavenProject> moduleProjects,
+ final Archiver archiver, final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException
{
if ( sources == null )
@@ -397,29 +428,31 @@ public class ModuleSetAssemblyPhase
fileSets.addAll( subFileSets );
- for (final MavenProject moduleProject : moduleProjects) {
- getLogger().info("Processing sources for module project: " + moduleProject.getId());
+ for ( final MavenProject moduleProject : moduleProjects )
+ {
+ getLogger().info( "Processing sources for module project: " + moduleProject.getId() );
final List<FileSet> moduleFileSets = new ArrayList<FileSet>();
- for (final FileSet fileSet : fileSets) {
- moduleFileSets.add(createFileSet(fileSet, sources, moduleProject, configSource));
+ for ( final FileSet fileSet : fileSets )
+ {
+ moduleFileSets.add( createFileSet( fileSet, sources, moduleProject, configSource ) );
}
- final AddFileSetsTask task = new AddFileSetsTask(moduleFileSets);
+ final AddFileSetsTask task = new AddFileSetsTask( moduleFileSets );
- task.setProject(moduleProject);
- task.setModuleProject(moduleProject);
- task.setLogger(getLogger());
+ task.setProject( moduleProject );
+ task.setModuleProject( moduleProject );
+ task.setLogger( getLogger() );
- task.execute(archiver, configSource);
+ task.execute( archiver, configSource );
}
}
/**
* Determine whether the deprecated file-set configuration directly within the ModuleSources object is present.
*/
- protected boolean isDeprecatedModuleSourcesConfigPresent( final ModuleSources sources )
+ boolean isDeprecatedModuleSourcesConfigPresent( @Nonnull final ModuleSources sources )
{
boolean result = false;
@@ -439,8 +472,10 @@ public class ModuleSetAssemblyPhase
return result;
}
- protected FileSet createFileSet( final FileSet fileSet, final ModuleSources sources,
- final MavenProject moduleProject, final AssemblerConfigurationSource configSource )
+ @Nonnull
+ FileSet createFileSet( @Nonnull final FileSet fileSet, @Nonnull final ModuleSources sources,
+ @Nonnull final MavenProject moduleProject,
+ @Nonnull final AssemblerConfigurationSource configSource )
throws AssemblyFormattingException
{
final FileSet fs = new FileSet();
@@ -478,8 +513,9 @@ public class ModuleSetAssemblyPhase
{
@SuppressWarnings( "unchecked" )
final List<String> modules = moduleProject.getModules();
- for (final String moduleSubPath : modules) {
- excludes.add(moduleSubPath + "/**");
+ for ( final String moduleSubPath : modules )
+ {
+ excludes.add( moduleSubPath + "/**" );
}
}
@@ -527,6 +563,7 @@ public class ModuleSetAssemblyPhase
return fs;
}
+ @Nonnull
public static Set<MavenProject> getModuleProjects( final ModuleSet moduleSet,
final AssemblerConfigurationSource configSource,
final Logger logger )
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java Thu Oct 23 21:01:23 2014
@@ -20,19 +20,17 @@ package org.apache.maven.plugin.assembly
*/
import java.io.File;
-import java.util.Iterator;
import java.util.List;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoBuilderConfigSourceWrapper;
import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoInfoWrapper;
import org.apache.maven.plugin.assembly.archive.task.AddDirectoryTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
import org.apache.maven.shared.repository.RepositoryAssembler;
@@ -70,48 +68,56 @@ public class RepositoryAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ @SuppressWarnings( "ResultOfMethodCallIgnored" )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
final List<Repository> repositoriesList = assembly.getRepositories();
final File tempRoot = configSource.getTemporaryRootDirectory();
- for (final Repository repository : repositoriesList) {
+ for ( final Repository repository : repositoriesList )
+ {
final String outputDirectory =
- AssemblyFormatUtils.getOutputDirectory(repository.getOutputDirectory(), configSource.getProject(),
- null, configSource.getFinalName(), configSource);
+ AssemblyFormatUtils.getOutputDirectory( repository.getOutputDirectory(), configSource.getProject(),
+ null, configSource.getFinalName(), configSource );
- final File repositoryDirectory = new File(tempRoot, outputDirectory);
+ final File repositoryDirectory = new File( tempRoot, outputDirectory );
- if (!repositoryDirectory.exists()) {
+ if ( !repositoryDirectory.exists() )
+ {
repositoryDirectory.mkdirs();
}
- try {
- getLogger().debug("Assembling repository to: " + repositoryDirectory);
- repositoryAssembler.buildRemoteRepository(repositoryDirectory, wrap(repository), wrap(configSource));
- getLogger().debug("Finished assembling repository to: " + repositoryDirectory);
- } catch (final RepositoryAssemblyException e) {
- throw new ArchiveCreationException("Failed to assemble repository: " + e.getMessage(), e);
+ try
+ {
+ getLogger().debug( "Assembling repository to: " + repositoryDirectory );
+ repositoryAssembler.buildRemoteRepository( repositoryDirectory, wrap( repository ), wrap( configSource ) );
+ getLogger().debug( "Finished assembling repository to: " + repositoryDirectory );
+ }
+ catch ( final RepositoryAssemblyException e )
+ {
+ throw new ArchiveCreationException( "Failed to assemble repository: " + e.getMessage(), e );
}
- final AddDirectoryTask task = new AddDirectoryTask(repositoryDirectory);
+ final AddDirectoryTask task = new AddDirectoryTask( repositoryDirectory );
- final int dirMode = TypeConversionUtils.modeToInt(repository.getDirectoryMode(), getLogger());
- if (dirMode != -1) {
- task.setDirectoryMode(dirMode);
+ final int dirMode = TypeConversionUtils.modeToInt( repository.getDirectoryMode(), getLogger() );
+ if ( dirMode != -1 )
+ {
+ task.setDirectoryMode( dirMode );
}
- final int fileMode = TypeConversionUtils.modeToInt(repository.getFileMode(), getLogger());
- if (fileMode != -1) {
- task.setFileMode(fileMode);
+ final int fileMode = TypeConversionUtils.modeToInt( repository.getFileMode(), getLogger() );
+ if ( fileMode != -1 )
+ {
+ task.setFileMode( fileMode );
}
- task.setOutputDirectory(outputDirectory);
+ task.setOutputDirectory( outputDirectory );
- task.execute(archiver, configSource);
+ task.execute( archiver );
}
}
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java Thu Oct 23 21:01:23 2014
@@ -26,27 +26,33 @@ import java.util.List;
/**
* @version $Id$
*/
-public class GroupVersionAlignmentWrapper
+class GroupVersionAlignmentWrapper
implements org.apache.maven.shared.repository.model.GroupVersionAlignment
{
private final GroupVersionAlignment alignment;
+ /**
+ * @param alignment @{link {@link GroupVersionAlignment}
+ */
public GroupVersionAlignmentWrapper( final GroupVersionAlignment alignment )
{
this.alignment = alignment;
}
+ /** {@inheritDoc} */
public List<String> getExcludes()
{
return alignment.getExcludes();
}
+ /** {@inheritDoc} */
public String getId()
{
return alignment.getId();
}
+ /** {@inheritDoc} */
public String getVersion()
{
return alignment.getVersion();
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java Thu Oct 23 21:01:23 2014
@@ -24,7 +24,6 @@ import org.apache.maven.plugin.assembly.
import org.apache.maven.shared.repository.model.RepositoryInfo;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.List;
/**
@@ -38,16 +37,21 @@ public class RepoInfoWrapper
private List<GroupVersionAlignmentWrapper> convertedAlignments;
+ /**
+ * @param repo The {@link Repository}
+ */
public RepoInfoWrapper( final Repository repo )
{
this.repo = repo;
}
+ /** {@inheritDoc} */
public List<String> getExcludes()
{
return repo.getExcludes();
}
+ /** {@inheritDoc} */
public List<GroupVersionAlignmentWrapper> getGroupVersionAlignments()
{
final List<GroupVersionAlignment> alignments = repo.getGroupVersionAlignments();
@@ -57,8 +61,9 @@ public class RepoInfoWrapper
final List<GroupVersionAlignmentWrapper> l =
new ArrayList<GroupVersionAlignmentWrapper>( alignments.size() );
- for (final GroupVersionAlignment alignment : alignments) {
- l.add(new GroupVersionAlignmentWrapper(alignment));
+ for ( final GroupVersionAlignment alignment : alignments )
+ {
+ l.add( new GroupVersionAlignmentWrapper( alignment ) );
}
convertedAlignments = l;
@@ -67,16 +72,19 @@ public class RepoInfoWrapper
return convertedAlignments;
}
+ /** {@inheritDoc} */
public List<String> getIncludes()
{
return repo.getIncludes();
}
+ /** {@inheritDoc} */
public String getScope()
{
return repo.getScope();
}
+ /** {@inheritDoc} */
public boolean isIncludeMetadata()
{
return repo.isIncludeMetadata();
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java Thu Oct 23 21:01:23 2014
@@ -40,7 +40,6 @@ import java.util.List;
* @version $Id$
*/
public class AddArtifactTask
- implements ArchiverTask
{
public static final String[] DEFAULT_INCLUDES_ARRAY = { "**/*" };
@@ -270,21 +269,11 @@ public class AddArtifactTask
setFileNameMapping( outputFileNameMapping == null ? defaultOutputFileNameMapping : outputFileNameMapping );
}
- public MavenProject getModuleProject()
- {
- return moduleProject;
- }
-
public void setModuleProject( final MavenProject moduleProject )
{
this.moduleProject = moduleProject;
}
- public Artifact getModuleArtifact()
- {
- return moduleArtifact;
- }
-
public void setModuleArtifact( final Artifact moduleArtifact )
{
this.moduleArtifact = moduleArtifact;
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java Thu Oct 23 21:01:23 2014
@@ -54,7 +54,6 @@ import org.codehaus.plexus.logging.Logge
* @version $Id$
*/
public class AddDependencySetsTask
- implements ArchiverTask
{
private static final List<String> NON_ARCHIVE_DEPENDENCY_TYPES;
@@ -116,13 +115,14 @@ public class AddDependencySetsTask
logger.debug( "Project " + project.getId() + " has no dependencies. Skipping dependency set addition." );
}
- for (final DependencySet dependencySet : dependencySets) {
- addDependencySet(dependencySet, archiver, configSource);
+ for ( final DependencySet dependencySet : dependencySets )
+ {
+ addDependencySet( dependencySet, archiver, configSource );
}
}
- protected void addDependencySet( final DependencySet dependencySet, final Archiver archiver,
- final AssemblerConfigurationSource configSource )
+ void addDependencySet( final DependencySet dependencySet, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws AssemblyFormattingException, ArchiveCreationException, InvalidAssemblerConfigurationException
{
logger.debug( "Processing DependencySet (output=" + dependencySet.getOutputDirectory() + ")" );
@@ -130,7 +130,7 @@ public class AddDependencySetsTask
if ( !dependencySet.isUseTransitiveDependencies() && dependencySet.isUseTransitiveFiltering() )
{
logger.warn( "DependencySet has nonsensical configuration: useTransitiveDependencies == false "
- + "AND useTransitiveFiltering == true. Transitive filtering flag will be ignored." );
+ + "AND useTransitiveFiltering == true. Transitive filtering flag will be ignored." );
}
final Set<Artifact> dependencyArtifacts = resolveDependencyArtifacts( dependencySet );
@@ -148,26 +148,36 @@ public class AddDependencySetsTask
logger.debug( "Adding " + dependencyArtifacts.size() + " dependency artifacts." );
- for (final Artifact depArtifact : dependencyArtifacts) {
+ for ( final Artifact depArtifact : dependencyArtifacts )
+ {
MavenProject depProject;
- try {
+ try
+ {
depProject =
- projectBuilder.buildFromRepository(depArtifact, configSource.getRemoteRepositories(),
- configSource.getLocalRepository());
- } catch (final ProjectBuildingException e) {
- logger.debug("Error retrieving POM of module-dependency: " + depArtifact.getId() + "; Reason: "
- + e.getMessage() + "\n\nBuilding stub project instance.");
-
- depProject = buildProjectStub(depArtifact);
- }
-
- if (NON_ARCHIVE_DEPENDENCY_TYPES.contains(depArtifact.getType())) {
- addNonArchiveDependency(depArtifact, depProject, dependencySet, archiver, configSource);
- } else {
- if (filterContents) {
- addFilteredUnpackedArtifact(dependencySet, depArtifact, depProject, archiver, configSource);
- } else {
- addNormalArtifact(dependencySet, depArtifact, depProject, archiver, configSource);
+ projectBuilder.buildFromRepository( depArtifact, configSource.getRemoteRepositories(),
+ configSource.getLocalRepository() );
+ }
+ catch ( final ProjectBuildingException e )
+ {
+ logger.debug( "Error retrieving POM of module-dependency: " + depArtifact.getId() + "; Reason: "
+ + e.getMessage() + "\n\nBuilding stub project instance." );
+
+ depProject = buildProjectStub( depArtifact );
+ }
+
+ if ( NON_ARCHIVE_DEPENDENCY_TYPES.contains( depArtifact.getType() ) )
+ {
+ addNonArchiveDependency( depArtifact, depProject, dependencySet, archiver, configSource );
+ }
+ else
+ {
+ if ( filterContents )
+ {
+ addFilteredUnpackedArtifact( dependencySet, depArtifact, depProject, archiver, configSource );
+ }
+ else
+ {
+ addNormalArtifact( dependencySet, depArtifact, depProject, archiver, configSource );
}
}
}
@@ -187,15 +197,16 @@ public class AddDependencySetsTask
mapping = defaultOutputFileNameMapping;
}
- if ( ( dir == null || !dir.contains("${")) && ( mapping == null || !mapping.contains("${")) )
+ if ( ( dir == null || !dir.contains( "${" ) ) && ( mapping == null || !mapping.contains( "${" ) ) )
{
logger.warn( "NOTE: Your assembly specifies a dependencySet that matches multiple artifacts, but specifies a concrete output format. "
- + "THIS MAY RESULT IN ONE OR MORE ARTIFACTS BEING OBSCURED!\n\nOutput directory: '"
- + dir
- + "'\nOutput filename mapping: '" + mapping + "'" );
+ + "THIS MAY RESULT IN ONE OR MORE ARTIFACTS BEING OBSCURED!\n\nOutput directory: '"
+ + dir
+ + "'\nOutput filename mapping: '" + mapping + "'" );
}
}
+ @SuppressWarnings( "ResultOfMethodCallIgnored" )
private void addFilteredUnpackedArtifact( final DependencySet dependencySet, final Artifact depArtifact,
final MavenProject depProject, final Archiver archiver,
final AssemblerConfigurationSource configSource )
@@ -204,11 +215,7 @@ public class AddDependencySetsTask
logger.debug( "Adding dependency artifact " + depArtifact.getId() + " after filtering the unpacked contents." );
final StringBuilder sb =
- new StringBuilder().append( depArtifact.getGroupId() )
- .append( "_" )
- .append( depArtifact.getArtifactId() )
- .append( "_" )
- .append( depArtifact.getVersion() );
+ new StringBuilder().append( depArtifact.getGroupId() ).append( "_" ).append( depArtifact.getArtifactId() ).append( "_" ).append( depArtifact.getVersion() );
final String classifier = depArtifact.getClassifier();
if ( classifier != null )
@@ -222,7 +229,7 @@ public class AddDependencySetsTask
if ( dir.exists() )
{
logger.debug( "NOT unpacking: " + depArtifact.getId() + ". Directory already exists in workdir:\n\t"
- + dir.getAbsolutePath() );
+ + dir.getAbsolutePath() );
}
else
{
@@ -236,7 +243,7 @@ public class AddDependencySetsTask
catch ( final NoSuchArchiverException e )
{
throw new ArchiveCreationException( "Failed to retrieve un-archiver for: " + depArtifact.getId()
- + ". Dependency filtering cannot proceed.", e );
+ + ". Dependency filtering cannot proceed.", e );
}
unarchiver.setDestDirectory( dir );
@@ -251,7 +258,7 @@ public class AddDependencySetsTask
catch ( final ArchiverException e )
{
throw new ArchiveCreationException( "Failed to unpack dependency archive: " + depArtifact.getId()
- + ". Dependency filtering cannot proceed.", e );
+ + ". Dependency filtering cannot proceed.", e );
}
}
@@ -351,7 +358,7 @@ public class AddDependencySetsTask
return project;
}
- protected Set<Artifact> resolveDependencyArtifacts( final DependencySet dependencySet )
+ Set<Artifact> resolveDependencyArtifacts( final DependencySet dependencySet )
throws InvalidAssemblerConfigurationException
{
final Set<Artifact> dependencyArtifacts = new LinkedHashSet<Artifact>();
@@ -370,7 +377,7 @@ public class AddDependencySetsTask
else
{
logger.warn( "Cannot include project artifact: " + projectArtifact
- + "; it doesn't have an associated file or directory." );
+ + "; it doesn't have an associated file or directory." );
}
}
@@ -380,12 +387,16 @@ public class AddDependencySetsTask
final List<Artifact> attachments = project.getAttachedArtifacts();
if ( attachments != null )
{
- for (final Artifact attachment : attachments) {
- if (attachment.getFile() != null) {
- dependencyArtifacts.add(attachment);
- } else {
- logger.warn("Cannot include attached artifact: " + project.getId() + " for project: "
- + project.getId() + "; it doesn't have an associated file or directory.");
+ for ( final Artifact attachment : attachments )
+ {
+ if ( attachment.getFile() != null )
+ {
+ dependencyArtifacts.add( attachment );
+ }
+ else
+ {
+ logger.warn( "Cannot include attached artifact: " + project.getId() + " for project: "
+ + project.getId() + "; it doesn't have an associated file or directory." );
}
}
}
@@ -409,9 +420,9 @@ public class AddDependencySetsTask
return dependencyArtifacts;
}
- protected void addNonArchiveDependency( final Artifact depArtifact, final MavenProject depProject,
- final DependencySet dependencySet, final Archiver archiver,
- final AssemblerConfigurationSource configSource )
+ void addNonArchiveDependency( final Artifact depArtifact, final MavenProject depProject,
+ final DependencySet dependencySet, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws AssemblyFormattingException, ArchiveCreationException
{
final File source = depArtifact.getFile();
@@ -467,31 +478,16 @@ public class AddDependencySetsTask
return logger;
}
- public String getDefaultOutputDirectory()
- {
- return defaultOutputDirectory;
- }
-
public void setDefaultOutputDirectory( final String defaultOutputDirectory )
{
this.defaultOutputDirectory = defaultOutputDirectory;
}
- public String getDefaultOutputFileNameMapping()
- {
- return defaultOutputFileNameMapping;
- }
-
public void setDefaultOutputFileNameMapping( final String defaultOutputFileNameMapping )
{
this.defaultOutputFileNameMapping = defaultOutputFileNameMapping;
}
- public MavenProject getModuleProject()
- {
- return moduleProject;
- }
-
public void setModuleProject( final MavenProject moduleProject )
{
this.moduleProject = moduleProject;
@@ -501,9 +497,4 @@ public class AddDependencySetsTask
{
this.moduleArtifact = moduleArtifact;
}
-
- public Artifact getModuleArtifact()
- {
- return moduleArtifact;
- }
}
Modified: maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java?rev=1633948&r1=1633947&r2=1633948&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java (original)
+++ maven/plugins/branches/MASSEMBLY-704/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java Thu Oct 23 21:01:23 2014
@@ -19,12 +19,12 @@ package org.apache.maven.plugin.assembly
* under the License.
*/
-import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
import org.codehaus.plexus.archiver.util.DefaultFileSet;
+import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
import java.io.File;
import java.util.ArrayList;
@@ -34,11 +34,12 @@ import java.util.List;
* @version $Id$
*/
public class AddDirectoryTask
- implements ArchiverTask
{
private final File directory;
+ private final InputStreamTransformer transformer;
+
private List<String> includes;
private List<String> excludes;
@@ -51,12 +52,18 @@ public class AddDirectoryTask
private int fileMode = -1;
- public AddDirectoryTask( final File directory )
+ public AddDirectoryTask( final File directory, InputStreamTransformer transformers )
{
this.directory = directory;
+
+ this.transformer = transformers;
+ }
+ public AddDirectoryTask( final File directory )
+ {
+ this( directory, null);
}
- public void execute( final Archiver archiver, final AssemblerConfigurationSource configSource )
+ public void execute( final Archiver archiver )
throws ArchiveCreationException
{
if ( ".".equals( outputDirectory ) )
@@ -66,7 +73,7 @@ public class AddDirectoryTask
else if ( "..".equals( outputDirectory ) )
{
throw new ArchiveCreationException( "Cannot add source directory: " + directory + " to archive-path: "
- + outputDirectory + ". All paths must be within the archive root directory." );
+ + outputDirectory + ". All paths must be within the archive root directory." );
}
final int oldDirMode = archiver.getOverrideDirectoryMode();
@@ -111,16 +118,7 @@ public class AddDirectoryTask
int i = 0;
for ( String include : includes )
{
- String value = AssemblyFormatUtils.fixRelativeRefs( include );
-
- if ( value.startsWith( "/" ) || value.startsWith( "\\" ) )
- {
- value = value.substring( 1 );
- }
-
- includesArray[i] = value;
-
- i++;
+ includesArray[i++] = normalize( include );
}
}
@@ -130,16 +128,7 @@ public class AddDirectoryTask
int i = 0;
for ( String directoryExclude : directoryExcludes )
{
- String value = AssemblyFormatUtils.fixRelativeRefs( directoryExclude );
-
- if ( value.startsWith( "/" ) || value.startsWith( "\\" ) )
- {
- value = value.substring( 1 );
- }
-
- excludesArray[i] = value;
-
- i++;
+ excludesArray[i++] = normalize( directoryExclude );
}
final DefaultFileSet fs = new DefaultFileSet();
@@ -148,6 +137,9 @@ public class AddDirectoryTask
fs.setDirectory( directory );
fs.setIncludes( includesArray );
fs.setExcludes( excludesArray );
+ if (transformer != null){
+ fs.setStreamTransformer( transformer );
+ }
archiver.addFileSet( fs );
}
@@ -171,6 +163,17 @@ public class AddDirectoryTask
}
}
+ private String normalize( String include )
+ {
+ String value = AssemblyFormatUtils.fixRelativeRefs( include );
+
+ if ( value.startsWith( "/" ) || value.startsWith( "\\" ) )
+ {
+ value = value.substring( 1 );
+ }
+ return value;
+ }
+
public void setExcludes( final List<String> excludes )
{
this.excludes = excludes;