Author: jdcasey Date: Thu Nov 13 16:15:35 2008 New Revision: 713878 URL: http://svn.apache.org/viewvc?rev=713878&view=rev Log: First stab at adjusting file/dir mode handling to work with new detected/defaults/overrides model provided by the new work in plexus-io and plexus-archiver.
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java?rev=713878&r1=713877&r2=713878&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java Thu Nov 13 16:15:35 2008 @@ -40,6 +40,7 @@ import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils; import org.apache.maven.plugin.assembly.utils.FilterUtils; import org.apache.maven.plugin.assembly.utils.ProjectUtils; +import org.apache.maven.plugin.assembly.utils.TypeConversionUtils; import org.apache.maven.project.MavenProject; import org.apache.maven.project.MavenProjectBuilder; import org.codehaus.plexus.archiver.Archiver; @@ -299,8 +300,19 @@ task.setProject( project ); task.setModuleProject( project ); task.setModuleArtifact( artifact ); - task.setDirectoryMode( binaries.getDirectoryMode() ); - task.setFileMode( binaries.getFileMode() ); + + int dirMode = TypeConversionUtils.modeToInt( binaries.getDirectoryMode(), getLogger() ); + if ( dirMode != -1 ) + { + task.setDirectoryMode( dirMode ); + } + + int fileMode = TypeConversionUtils.modeToInt( binaries.getFileMode(), getLogger() ); + if ( fileMode != -1 ) + { + task.setFileMode( fileMode ); + } + task.setUnpack( binaries.isUnpack() ); if ( binaries.isUnpack() && binaries.getUnpackOptions() != null ) Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java?rev=713878&r1=713877&r2=713878&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java Thu Nov 13 16:15:35 2008 @@ -134,8 +134,18 @@ AddDirectoryTask task = new AddDirectoryTask( repositoryDirectory ); - task.setDirectoryMode( TypeConversionUtils.modeToInt( repository.getDirectoryMode(), getLogger() ) ); - task.setFileMode( TypeConversionUtils.modeToInt( repository.getFileMode(), getLogger() ) ); + int dirMode = TypeConversionUtils.modeToInt( repository.getDirectoryMode(), getLogger() ); + if ( dirMode != -1 ) + { + task.setDirectoryMode( dirMode ); + } + + int fileMode = TypeConversionUtils.modeToInt( repository.getFileMode(), getLogger() ); + if ( fileMode != -1 ) + { + task.setFileMode( fileMode ); + } + task.setUseDefaultExcludes( repository.isUseDefaultExcludes() ); task.setOutputDirectory( outputDirectory ); Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java?rev=713878&r1=713877&r2=713878&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java Thu Nov 13 16:15:35 2008 @@ -45,9 +45,9 @@ public static final String[] DEFAULT_INCLUDES_ARRAY = { "**/*" }; - private String directoryMode; + private int directoryMode = -1; - private String fileMode; + private int fileMode = -1; private boolean unpack = false; @@ -128,14 +128,14 @@ try { - if ( fileMode != null ) + if ( fileMode != -1 ) { - archiver.setDefaultFileMode( TypeConversionUtils.modeToInt( fileMode, logger ) ); + archiver.setDefaultFileMode( fileMode ); } - if ( directoryMode != null ) + if ( directoryMode != -1 ) { - archiver.setDefaultDirectoryMode( TypeConversionUtils.modeToInt( directoryMode, logger ) ); + archiver.setDefaultDirectoryMode( directoryMode ); } File artifactFile = artifact.getFile(); @@ -182,11 +182,9 @@ logger.debug( "Adding artifact: " + artifact.getId() + " with file: " + artifactFile + " to assembly location: " + outputLocation + "." ); - if ( fileMode != null ) + if ( fileMode != -1 ) { - int mode = TypeConversionUtils.modeToInt( fileMode, logger ); - - archiver.addFile( artifactFile, outputLocation, mode ); + archiver.addFile( artifactFile, outputLocation, fileMode ); } else { @@ -201,12 +199,12 @@ } } - public void setDirectoryMode( String directoryMode ) + public void setDirectoryMode( int directoryMode ) { this.directoryMode = directoryMode; } - public void setFileMode( String fileMode ) + public void setFileMode( int fileMode ) { this.fileMode = fileMode; } Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java?rev=713878&r1=713877&r2=713878&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java Thu Nov 13 16:15:35 2008 @@ -170,8 +170,19 @@ task.setModuleArtifact( moduleArtifact ); task.setOutputDirectory( dependencySet.getOutputDirectory(), defaultOutputDirectory ); task.setFileNameMapping( dependencySet.getOutputFileNameMapping(), defaultOutputFileNameMapping ); - task.setDirectoryMode( dependencySet.getDirectoryMode() ); - task.setFileMode( dependencySet.getFileMode() ); + + int dirMode = TypeConversionUtils.modeToInt( dependencySet.getDirectoryMode(), logger ); + if ( dirMode != -1 ) + { + task.setDirectoryMode( dirMode ); + } + + int fileMode = TypeConversionUtils.modeToInt( dependencySet.getFileMode(), logger ); + if ( fileMode != -1 ) + { + task.setFileMode( fileMode ); + } + task.setUnpack( dependencySet.isUnpack() ); UnpackOptions opts = dependencySet.getUnpackOptions(); Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java?rev=713878&r1=713877&r2=713878&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java Thu Nov 13 16:15:35 2008 @@ -73,12 +73,12 @@ try { - if ( directoryMode > -1 ) + if ( directoryMode != -1 ) { archiver.setDefaultDirectoryMode( directoryMode ); } - if ( fileMode > -1 ) + if ( fileMode != -1 ) { archiver.setDefaultFileMode( fileMode ); } Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java?rev=713878&r1=713877&r2=713878&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java Thu Nov 13 16:15:35 2008 @@ -143,12 +143,24 @@ AddDirectoryTask task = new AddDirectoryTask( fileSetDir ); - task.setDirectoryMode( TypeConversionUtils.modeToInt( fileSet.getDirectoryMode(), logger ) ); - task.setFileMode( TypeConversionUtils.modeToInt( fileSet.getFileMode(), logger ) ); + int dirMode = TypeConversionUtils.modeToInt( fileSet.getDirectoryMode(), logger ); + if ( dirMode != -1 ) + { + task.setDirectoryMode( dirMode ); + } + + int fileMode = TypeConversionUtils.modeToInt( fileSet.getFileMode(), logger ); + if ( fileMode != -1 ) + { + task.setFileMode( fileMode ); + } + task.setUseDefaultExcludes( fileSet.isUseDefaultExcludes() ); + List excludes = fileSet.getExcludes(); excludes.add( "**/*.filtered" ); task.setExcludes( excludes ); + task.setIncludes( fileSet.getIncludes() ); task.setOutputDirectory( destDirectory ); Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java?rev=713878&r1=713877&r2=713878&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java Thu Nov 13 16:15:35 2008 @@ -188,8 +188,9 @@ AddArtifactTask task = createTask( artifactMock.getArtifact() ); task.setUnpack( true ); - task.setDirectoryMode( "777" ); - task.setFileMode( "777" ); + + task.setDirectoryMode( directoryMode ); + task.setFileMode( fileMode ); task.execute( mac.archiver, mac.configSource );