Author: krosenvold
Date: Sat Nov 29 18:26:36 2014
New Revision: 1642461
URL: http://svn.apache.org/r1642461
Log:
p-io 2.4, p-a 2.9
Adapted to use ResourceFactory from plexus-io
Modified:
maven/plugins/trunk/maven-assembly-plugin/pom.xml
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
maven/plugins/trunk/maven-war-plugin/pom.xml
Modified: maven/plugins/trunk/maven-assembly-plugin/pom.xml
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/pom.xml?rev=1642461&r1=1642460&r2=1642461&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/pom.xml Sat Nov 29 18:26:36 2014
@@ -124,13 +124,7 @@ under the License.
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-archiver</artifactId>
- <version>2.8.4</version>
- <exclusions>
- <exclusion>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-component-api</artifactId>
- </exclusion>
- </exclusions>
+ <version>2.9</version>
</dependency>
<dependency>
<groupId>org.apache.maven.shared</groupId>
@@ -155,7 +149,7 @@ under the License.
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-io</artifactId>
- <version>2.3.5</version>
+ <version>2.4</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java?rev=1642461&r1=1642460&r2=1642461&view=diff
==============================================================================
---
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
(original)
+++
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
Sat Nov 29 18:26:36 2014
@@ -19,8 +19,6 @@ package org.apache.maven.plugin.assembly
* under the License.
*/
-import org.apache.commons.io.IOUtils;
-import org.apache.commons.io.output.DeferredFileOutputStream;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
@@ -31,24 +29,17 @@ import org.apache.maven.plugin.assembly.
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
-import org.codehaus.plexus.archiver.util.ArchiverAttributeUtils;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
-import org.codehaus.plexus.components.io.resources.PlexusIoFileResource;
import org.codehaus.plexus.components.io.resources.PlexusIoResource;
-import org.codehaus.plexus.components.io.resources.PlexusIoSymlink;
-import org.codehaus.plexus.components.io.resources.proxy.PlexusIoProxyResource;
-import
org.codehaus.plexus.components.io.resources.proxy.PlexusIoProxySymlinkResource;
import org.codehaus.plexus.logging.AbstractLogEnabled;
-import javax.annotation.Nonnull;
-import java.io.ByteArrayInputStream;
import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
-import java.io.InputStream;
import java.util.List;
+import static
org.codehaus.plexus.components.io.resources.ResourceFactory.createResource;
+
/**
* Handles the top-level <files/> section of the assembly descriptor.
*
@@ -117,33 +108,13 @@ public class FileItemAssemblyPhase
target = outputDirectory + "/" + destName;
}
- final PlexusIoFileResource res =
- new PlexusIoFileResource( source,
ArchiverAttributeUtils.getFileAttributes( source ) );
- PlexusIoResource restoUse = res;
try
{
final InputStreamTransformer fileSetTransformers =
ReaderFormatter.getFileSetTransformers( configSource,
fileItem.isFiltered(),
fileItem.getLineEnding() );
- if ( fileSetTransformers != null )
- {
- restoUse = new Deferred( res )
- {
- @Override
- protected InputStream getInputStream()
- throws IOException
- {
- return fileSetTransformers.transform( res,
res.getContents() );
- }
-
- @Override
- public String getName()
- {
- return res.getName();
- }
- } .asResource();
- }
+ final PlexusIoResource restoUse = createResource( source,
fileSetTransformers );
int mode = TypeConversionUtils.modeToInt(
fileItem.getFileMode(), getLogger() );
archiver.addResource( restoUse, target, mode );
@@ -159,128 +130,6 @@ public class FileItemAssemblyPhase
}
}
- // Nicked from archiver until I can get a better solution. I am the author
:)
- abstract class Deferred
- {
- final DeferredFileOutputStream dfos;
-
- final PlexusIoResource resource;
-
- public Deferred( final PlexusIoResource resource )
- throws IOException
- {
- this.resource = resource;
- // CHECKSTYLE_OFF: MagicNumber
- dfos = new DeferredFileOutputStream( 1000000,
"m-assembly-archiver", null, null );
- // CHECKSTYLE_ON: MagicNumber
- InputStream inputStream = getInputStream();
- IOUtils.copy( inputStream, dfos );
- IOUtils.closeQuietly( inputStream );
- }
-
- protected abstract InputStream getInputStream()
- throws IOException;
-
- @Nonnull
- public InputStream getContents()
- throws IOException
- {
- if ( dfos.isInMemory() )
- {
- return new ByteArrayInputStream( dfos.getData() );
- }
- else
- {
- return new FileInputStream( dfos.getFile() )
- {
- @Override
- public void close()
- throws IOException
- {
- super.close();
- dfos.getFile().delete();
- }
- };
- }
- }
-
- public long getSize()
- {
- if ( dfos == null )
- {
- return resource.getSize();
- }
- if ( dfos.isInMemory() )
- {
- return dfos.getByteCount();
- }
- else
- {
- return dfos.getFile().length();
- }
- }
-
- public abstract String getName();
-
- private PlexusIoResource asSymlinkResource()
- {
- return new PlexusIoProxySymlinkResource( resource )
- {
- @Override
- public String getName()
- {
- return Deferred.this.getName();
- }
-
- @Nonnull
- @Override
- public InputStream getContents()
- throws IOException
- {
- return Deferred.this.getContents();
- }
-
- @Override
- public long getSize()
- {
- return Deferred.this.getSize();
- }
- };
- }
-
- public PlexusIoResource asResource()
- {
- if ( resource instanceof PlexusIoSymlink )
- {
- return asSymlinkResource();
- }
-
- return new PlexusIoProxyResource( resource )
- {
- @Override
- public String getName()
- {
- return Deferred.this.getName();
- }
-
- @Nonnull
- @Override
- public InputStream getContents()
- throws IOException
- {
- return Deferred.this.getContents();
- }
-
- @Override
- public long getSize()
- {
- return Deferred.this.getSize();
- }
- };
- }
-
- }
-
public int order()
{
return 10;
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java?rev=1642461&r1=1642460&r2=1642461&view=diff
==============================================================================
---
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
(original)
+++
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
Sat Nov 29 18:26:36 2014
@@ -19,6 +19,8 @@ package org.apache.maven.plugin.assembly
* under the License.
*/
+import org.apache.maven.shared.utils.ReaderFactory;
+import org.apache.maven.shared.utils.WriterFactory;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
import org.codehaus.plexus.archiver.ResourceIterator;
@@ -37,8 +39,6 @@ import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
import java.io.Reader;
import java.io.Writer;
import java.util.Collections;
@@ -104,22 +104,6 @@ public class ComponentsXmlArchiverFileFi
}
}
- // public void addComponentsXml( File componentsXml )
- // throws IOException, XmlPullParserException
- // {
- // FileReader fileReader = null;
- // try
- // {
- // fileReader = new FileReader( componentsXml );
- //
- // addComponentsXml( fileReader );
- // }
- // finally
- // {
- // IOUtil.close( fileReader );
- // }
- // }
-
private void addToArchive( final Archiver archiver )
throws IOException
{
@@ -128,8 +112,7 @@ public class ComponentsXmlArchiverFileFi
final File f = File.createTempFile( "maven-assembly-plugin", "tmp"
);
f.deleteOnExit();
- // TODO use WriterFactory.newXmlWriter() when plexus-utils is
upgraded to 1.4.5+
- final Writer fileWriter = new OutputStreamWriter( new
FileOutputStream( f ), "UTF-8" );
+ final Writer fileWriter = WriterFactory.newXmlWriter( new
FileOutputStream( f ) );
try
{
final Xpp3Dom dom = new Xpp3Dom( "component-set" );
@@ -208,16 +191,13 @@ public class ComponentsXmlArchiverFileFi
if ( ComponentsXmlArchiverFileFilter.COMPONENTS_XML_PATH.equals(
entry ) )
{
InputStream stream = null;
- InputStreamReader reader = null;
+ Reader reader = null;
try
{
stream = fileInfo.getContents();
- // TODO use ReaderFactory.newXmlReader() when plexus-utils
is upgraded to 1.4.5+
- reader = new InputStreamReader( stream, "UTF-8" );
- // CHECKSTYLE_OFF: MagicNumber
- addComponentsXml( new BufferedReader( reader, 8192 ) );
- // CHECKSTYLE_ON: MagicNumber
+ reader = ReaderFactory.newXmlReader( stream );
+ addComponentsXml( new BufferedReader( reader ) );
}
catch ( final XmlPullParserException e )
{
Modified: maven/plugins/trunk/maven-war-plugin/pom.xml
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-war-plugin/pom.xml?rev=1642461&r1=1642460&r2=1642461&view=diff
==============================================================================
--- maven/plugins/trunk/maven-war-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-war-plugin/pom.xml Sat Nov 29 18:26:36 2014
@@ -118,7 +118,7 @@ under the License.
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-io</artifactId>
- <version>2.3.2</version>
+ <version>2.4.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
@@ -128,7 +128,7 @@ under the License.
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-archiver</artifactId>
- <version>2.8.1</version>
+ <version>2.9.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>