You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2012/04/14 01:16:45 UTC

svn commit: r1326005 - in /maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering: AbstractMavenFilteringRequest.java DefaultMavenFileFilter.java MavenFileFilter.java

Author: olamy
Date: Fri Apr 13 23:16:44 2012
New Revision: 1326005

URL: http://svn.apache.org/viewvc?rev=1326005&view=rev
Log:
add generics

Modified:
    maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/AbstractMavenFilteringRequest.java
    maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/DefaultMavenFileFilter.java
    maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/MavenFileFilter.java

Modified: maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/AbstractMavenFilteringRequest.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/AbstractMavenFilteringRequest.java?rev=1326005&r1=1326004&r2=1326005&view=diff
==============================================================================
--- maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/AbstractMavenFilteringRequest.java (original)
+++ maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/AbstractMavenFilteringRequest.java Fri Apr 13 23:16:44 2012
@@ -26,6 +26,7 @@ import java.util.ArrayList;
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Properties;
+import java.util.Set;
 
 /**
  * @since 1.0-beta-3
@@ -50,7 +51,7 @@ public class AbstractMavenFilteringReque
      *
      * @since 1.0-beta-2
      */
-    private List projectStartExpressions = new ArrayList();
+    private List<String> projectStartExpressions = new ArrayList<String>();
     
     /**
      * String which will escape interpolation mechanism:
@@ -77,7 +78,7 @@ public class AbstractMavenFilteringReque
      * 
      * @since 1.0-beta-3
      */
-    private LinkedHashSet delimiters = new LinkedHashSet();
+    private LinkedHashSet<String> delimiters = new LinkedHashSet<String>();
     
     /**
      * Do not stop trying to filter tokens when reaching EOL.
@@ -258,7 +259,7 @@ public class AbstractMavenFilteringReque
      * @return Not allowed to be <code>null</code> or empty.
      * @since 1.0-beta-3
      */
-    public LinkedHashSet getDelimiters()
+    public LinkedHashSet<String> getDelimiters()
     {
         return delimiters;
     }
@@ -271,7 +272,7 @@ public class AbstractMavenFilteringReque
      * @param delimiters If <code>null</code>, reset delimiters to '${*}' only. Otherwise, use the provided value.
      * @since 1.0-beta-3
      */
-    public void setDelimiters( LinkedHashSet delimiters )
+    public void setDelimiters( LinkedHashSet<String> delimiters )
     {
         if ( delimiters == null || delimiters.isEmpty() )
         {

Modified: maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/DefaultMavenFileFilter.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/DefaultMavenFileFilter.java?rev=1326005&r1=1326004&r2=1326005&view=diff
==============================================================================
--- maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/DefaultMavenFileFilter.java (original)
+++ maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/DefaultMavenFileFilter.java Fri Apr 13 23:16:44 2012
@@ -19,16 +19,6 @@ package org.apache.maven.shared.filterin
  * under the License.
  */
 
-import java.io.File;
-import java.io.IOException;
-import java.io.Reader;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Properties;
-
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.settings.Settings;
@@ -46,19 +36,30 @@ import org.codehaus.plexus.util.FileUtil
 import org.codehaus.plexus.util.StringUtils;
 import org.sonatype.plexus.build.incremental.BuildContext;
 
+import java.io.File;
+import java.io.IOException;
+import java.io.Reader;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Properties;
+
 /**
  * @author <a href="mailto:olamy@apache.org">olamy</a>
  * @version $Id$
- *
  * @plexus.component role="org.apache.maven.shared.filtering.MavenFileFilter"
- *                   role-hint="default"
+ * role-hint="default"
  */
 public class DefaultMavenFileFilter
     extends AbstractLogEnabled
     implements MavenFileFilter
 {
 
-    /** @plexus.requirement */
+    /**
+     * @plexus.requirement
+     */
     private BuildContext buildContext;
 
     public void copyFile( File from, File to, boolean filtering, MavenProject mavenProject, List filters,
@@ -71,24 +72,22 @@ public class DefaultMavenFileFilter
         mre.setEscapeWindowsPaths( escapedBackslashesInFilePath );
         mre.setMavenSession( mavenSession );
         mre.setInjectProjectBuildFilters( true );
-        
+
         List filterWrappers = getDefaultFilterWrappers( mre );
         copyFile( from, to, filtering, filterWrappers, encoding );
     }
-    
-    
+
+
     public void copyFile( MavenFileFilterRequest mavenFileFilterRequest )
         throws MavenFilteringException
     {
-        List filterWrappers =
-            getDefaultFilterWrappers( mavenFileFilterRequest );
-        
+        List filterWrappers = getDefaultFilterWrappers( mavenFileFilterRequest );
+
         copyFile( mavenFileFilterRequest.getFrom(), mavenFileFilterRequest.getTo(),
                   mavenFileFilterRequest.isFiltering(), filterWrappers, mavenFileFilterRequest.getEncoding() );
     }
 
 
-
     public void copyFile( File from, File to, boolean filtering, List filterWrappers, String encoding )
         throws MavenFilteringException
     {
@@ -96,8 +95,7 @@ public class DefaultMavenFileFilter
         copyFile( from, to, filtering, filterWrappers, encoding, false );
     }
 
-    
-    
+
     public void copyFile( File from, File to, boolean filtering, List filterWrappers, String encoding,
                           boolean overwrite )
         throws MavenFilteringException
@@ -110,8 +108,8 @@ public class DefaultMavenFileFilter
                 {
                     getLogger().debug( "filtering " + from.getPath() + " to " + to.getPath() );
                 }
-                FileUtils.FilterWrapper[] wrappers = (FileUtils.FilterWrapper[]) filterWrappers
-                    .toArray( new FileUtils.FilterWrapper[filterWrappers.size()] );
+                FileUtils.FilterWrapper[] wrappers = (FileUtils.FilterWrapper[]) filterWrappers.toArray(
+                    new FileUtils.FilterWrapper[filterWrappers.size()] );
                 FileUtils.copyFile( from, to, encoding, wrappers );
             }
             else
@@ -129,52 +127,52 @@ public class DefaultMavenFileFilter
         {
             throw new MavenFilteringException( e.getMessage(), e );
         }
-        
+
     }
 
-    /** 
+    /**
      * @see org.apache.maven.shared.filtering.MavenFileFilter#getDefaultFilterWrappers(org.apache.maven.project.MavenProject, java.util.List, boolean, org.apache.maven.execution.MavenSession)
      * @deprecated
      */
-    public List getDefaultFilterWrappers( final MavenProject mavenProject, List filters,
-                                          final boolean escapedBackslashesInFilePath, MavenSession mavenSession )
+    public List<FileUtils.FilterWrapper> getDefaultFilterWrappers( final MavenProject mavenProject, List filters,
+                                                                   final boolean escapedBackslashesInFilePath,
+                                                                   MavenSession mavenSession )
         throws MavenFilteringException
     {
         return getDefaultFilterWrappers( mavenProject, filters, escapedBackslashesInFilePath, mavenSession, null );
     }
 
-    
-    
-    
-    public List getDefaultFilterWrappers( final MavenProject mavenProject, List filters,
-                                          final boolean escapedBackslashesInFilePath, MavenSession mavenSession,
-                                          MavenResourcesExecution mavenResourcesExecution )
+
+    public List<FileUtils.FilterWrapper> getDefaultFilterWrappers( final MavenProject mavenProject, List filters,
+                                                                   final boolean escapedBackslashesInFilePath,
+                                                                   MavenSession mavenSession,
+                                                                   MavenResourcesExecution mavenResourcesExecution )
         throws MavenFilteringException
     {
 
-        MavenResourcesExecution mre = mavenResourcesExecution == null ? new MavenResourcesExecution()
-                        : mavenResourcesExecution.copyOf();
-        
+        MavenResourcesExecution mre =
+            mavenResourcesExecution == null ? new MavenResourcesExecution() : mavenResourcesExecution.copyOf();
+
         mre.setMavenProject( mavenProject );
         mre.setMavenSession( mavenSession );
         mre.setFilters( filters );
         mre.setEscapedBackslashesInFilePath( escapedBackslashesInFilePath );
-        
+
         return getDefaultFilterWrappers( mre );
 
     }
-    
-    public List getDefaultFilterWrappers( final AbstractMavenFilteringRequest req )
+
+    public List<FileUtils.FilterWrapper> getDefaultFilterWrappers( final AbstractMavenFilteringRequest req )
         throws MavenFilteringException
     {
         // backup values
         boolean supportMultiLineFiltering = req.isSupportMultiLineFiltering();
-        
+
         // compensate for null parameter value.
         final AbstractMavenFilteringRequest request = req == null ? new MavenFileFilterRequest() : req;
 
         request.setSupportMultiLineFiltering( supportMultiLineFiltering );
-        
+
         // Here we build some properties which will be used to read some properties files
         // to interpolate the expression ${ } in this properties file
 
@@ -186,8 +184,9 @@ public class DefaultMavenFileFilter
         // Project properties
         if ( request.getMavenProject() != null )
         {
-            baseProps.putAll( request.getMavenProject().getProperties() == null ? Collections.EMPTY_MAP
-                            : request.getMavenProject().getProperties() );
+            baseProps.putAll( request.getMavenProject().getProperties() == null
+                                  ? Collections.emptyMap()
+                                  : request.getMavenProject().getProperties() );
         }
         // TODO this is NPE free but do we consider this as normal
         // or do we have to throw an MavenFilteringException with mavenSession cannot be null
@@ -213,13 +212,14 @@ public class DefaultMavenFileFilter
             {
                 List buildFilters = new ArrayList( request.getMavenProject().getBuild().getFilters() );
                 buildFilters.removeAll( request.getFileFilters() );
-                
+
                 loadProperties( filterProperties, buildFilters, baseProps );
             }
 
             // Project properties
-            filterProperties.putAll( request.getMavenProject().getProperties() == null ? Collections.EMPTY_MAP
-                            : request.getMavenProject().getProperties() );
+            filterProperties.putAll( request.getMavenProject().getProperties() == null
+                                         ? Collections.emptyMap()
+                                         : request.getMavenProject().getProperties() );
         }
         if ( request.getMavenSession() != null )
         {
@@ -232,9 +232,10 @@ public class DefaultMavenFileFilter
             // additional properties wins
             filterProperties.putAll( request.getAdditionalProperties() );
         }
-        
-        List defaultFilterWrappers
-            = request == null ? new ArrayList( 1 ) : new ArrayList( request.getDelimiters().size() + 1 );
+
+        List<FileUtils.FilterWrapper> defaultFilterWrappers = request == null
+            ? new ArrayList<FileUtils.FilterWrapper>( 1 )
+            : new ArrayList<FileUtils.FilterWrapper>( request.getDelimiters().size() + 1 );
 
         if ( getLogger().isDebugEnabled() )
         {
@@ -245,23 +246,22 @@ public class DefaultMavenFileFilter
 
         if ( request != null )
         {
-            FileUtils.FilterWrapper wrapper = new Wrapper( request.getDelimiters(), request.getMavenProject(),
-                                                           request.getMavenSession(), propertiesValueSource,
-                                                           request.getProjectStartExpressions(),
-                                                           request.getEscapeString(), request.isEscapeWindowsPaths(),
-                                                           request.isSupportMultiLineFiltering() );
-            
+            FileUtils.FilterWrapper wrapper =
+                new Wrapper( request.getDelimiters(), request.getMavenProject(), request.getMavenSession(),
+                             propertiesValueSource, request.getProjectStartExpressions(), request.getEscapeString(),
+                             request.isEscapeWindowsPaths(), request.isSupportMultiLineFiltering() );
+
             defaultFilterWrappers.add( wrapper );
         }
 
         return defaultFilterWrappers;
-    }    
+    }
 
     /**
      * protected only for testing reason !
      */
     protected void loadProperties( Properties filterProperties, List /* String */propertiesFilePaths,
-                                 Properties baseProps )
+                                   Properties baseProps )
         throws MavenFilteringException
     {
         if ( propertiesFilePaths != null )
@@ -291,27 +291,28 @@ public class DefaultMavenFileFilter
             }
         }
     }
-    
-    private static final class Wrapper extends FileUtils.FilterWrapper
+
+    private static final class Wrapper
+        extends FileUtils.FilterWrapper
     {
-        
-        private LinkedHashSet delimiters;
-        
+
+        private LinkedHashSet<String> delimiters;
+
         private MavenProject project;
-        
+
         private ValueSource propertiesValueSource;
-        
+
         private List projectStartExpressions;
-        
+
         private String escapeString;
-        
+
         private boolean escapeWindowsPaths;
 
         private final MavenSession mavenSession;
-        
+
         private boolean supportMultiLineFiltering;
 
-        Wrapper( LinkedHashSet delimiters, MavenProject project, MavenSession mavenSession,
+        Wrapper( LinkedHashSet<String> delimiters, MavenProject project, MavenSession mavenSession,
                  ValueSource propertiesValueSource, List projectStartExpressions, String escapeString,
                  boolean escapeWindowsPaths, boolean supportMultiLineFiltering )
         {
@@ -330,7 +331,7 @@ public class DefaultMavenFileFilter
         {
             MultiDelimiterStringSearchInterpolator interpolator = new MultiDelimiterStringSearchInterpolator();
             interpolator.setDelimiterSpecs( delimiters );
-            
+
             RecursionInterceptor ri = null;
             if ( projectStartExpressions != null && !projectStartExpressions.isEmpty() )
             {
@@ -340,29 +341,29 @@ public class DefaultMavenFileFilter
             {
                 ri = new SimpleRecursionInterceptor();
             }
-            
+
             interpolator.addValueSource( propertiesValueSource );
-            
+
             if ( project != null )
             {
                 interpolator.addValueSource( new PrefixedObjectValueSource( projectStartExpressions, project, true ) );
             }
-            
+
             if ( mavenSession != null )
             {
                 interpolator.addValueSource( new PrefixedObjectValueSource( "session", mavenSession ) );
-                
+
                 final Settings settings = mavenSession.getSettings();
                 if ( settings != null )
                 {
                     interpolator.addValueSource( new PrefixedObjectValueSource( "settings", settings ) );
-                    interpolator.addValueSource( new SingleResponseValueSource( "localRepository",
-                                                                                settings.getLocalRepository() ) );
+                    interpolator.addValueSource(
+                        new SingleResponseValueSource( "localRepository", settings.getLocalRepository() ) );
                 }
             }
-            
+
             interpolator.setEscapeString( escapeString );
-            
+
             if ( escapeWindowsPaths )
             {
                 interpolator.addPostProcessor( new InterpolationPostProcessor()
@@ -373,23 +374,23 @@ public class DefaultMavenFileFilter
                         {
                             return FilteringUtils.escapeWindowsPath( (String) value );
                         }
-                        
+
                         return value;
                     }
                 } );
             }
-            
-            MultiDelimiterInterpolatorFilterReaderLineEnding filterReader = 
+
+            MultiDelimiterInterpolatorFilterReaderLineEnding filterReader =
                 new MultiDelimiterInterpolatorFilterReaderLineEnding( reader, interpolator, supportMultiLineFiltering );
             filterReader.setRecursionInterceptor( ri );
             filterReader.setDelimiterSpecs( delimiters );
-            
+
             filterReader.setInterpolateWithPrefixPattern( false );
             filterReader.setEscapeString( escapeString );
-            
+
             return filterReader;
         }
-        
+
     }
 
 }

Modified: maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/MavenFileFilter.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/MavenFileFilter.java?rev=1326005&r1=1326004&r2=1326005&view=diff
==============================================================================
--- maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/MavenFileFilter.java (original)
+++ maven/shared/trunk/maven-filtering/src/main/java/org/apache/maven/shared/filtering/MavenFileFilter.java Fri Apr 13 23:16:44 2012
@@ -21,6 +21,7 @@ package org.apache.maven.shared.filterin
 
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.project.MavenProject;
+import org.codehaus.plexus.util.FileUtils;
 
 import java.io.File;
 import java.util.List;
@@ -31,22 +32,22 @@ import java.util.List;
  */
 public interface MavenFileFilter
 {
-    
+
     /**
      * Will copy a file with some filtering using defaultFilterWrappers.
      *
-     * @see #getDefaultFilterWrappers(MavenProject, List, boolean, MavenSession)
-     * @param from file to copy/filter
-     * @param to destination file
-     * @param filtering enable or not filering
+     * @param from         file to copy/filter
+     * @param to           destination file
+     * @param filtering    enable or not filering
      * @param mavenProject the mavenproject
-     * @param filters {@link List} of String which are path to a Property file
-     * @throws MavenFilteringException 
+     * @param filters      {@link List} of String which are path to a Property file
+     * @throws MavenFilteringException
+     * @see #getDefaultFilterWrappers(MavenProject, List, boolean, MavenSession)
      */
     void copyFile( File from, final File to, boolean filtering, MavenProject mavenProject, List filters,
                    boolean escapedBackslashesInFilePath, String encoding, MavenSession mavenSession )
         throws MavenFilteringException;
-    
+
     /**
      * @param mavenFileFilterRequest
      * @throws MavenFilteringException
@@ -62,44 +63,46 @@ public interface MavenFileFilter
      * @param filterWrappers {@link List} of FileUtils.FilterWrapper
      * @throws MavenFilteringException
      */
-    void copyFile( File from, final File to, boolean filtering, List filterWrappers, String encoding )
+    void copyFile( File from, final File to, boolean filtering, List<FileUtils.FilterWrapper> filterWrappers,
+                   String encoding )
         throws MavenFilteringException;
 
-    
+
     /**
      * @param from
      * @param to
      * @param filtering
      * @param filterWrappers
      * @param encoding
-     * @param overwrite 
+     * @param overwrite
      * @throws MavenFilteringException
      * @since 1.0-beta-2
      */
-    void copyFile( File from, final File to, boolean filtering, List filterWrappers, String encoding,
-                   boolean overwrite )
-        throws MavenFilteringException;    
-    
+    void copyFile( File from, final File to, boolean filtering, List<FileUtils.FilterWrapper> filterWrappers,
+                   String encoding, boolean overwrite )
+        throws MavenFilteringException;
+
     /**
      * Will return the default FileUtils.FilterWrappers.
-     * 
+     * <p/>
      * <ul>
-     *   <li>interpolate with token ${} and values from sysProps, project.properties, filters and project filters.</li>
-     *   <li>interpolate with token @ @ and values from sysProps, project.properties, filters and project filters.</li>
-     *   <li>interpolate with token ${} and values from mavenProject interpolation.</li>
-     *   <li>interpolation with token @ @ and values from mavenProject interpolation</li>
+     * <li>interpolate with token ${} and values from sysProps, project.properties, filters and project filters.</li>
+     * <li>interpolate with token @ @ and values from sysProps, project.properties, filters and project filters.</li>
+     * <li>interpolate with token ${} and values from mavenProject interpolation.</li>
+     * <li>interpolation with token @ @ and values from mavenProject interpolation</li>
      * </ul>
      * <b>This method is now deprecated and no escape mechanism will be used.</b>
      *
      * @param mavenProject
-     * @param filters {@link List} of properties file
+     * @param filters      {@link List} of properties file
      * @return {@link List} of FileUtils.FilterWrapper
      * @deprecated use {@link #getDefaultFilterWrappers(MavenProject, List, boolean, MavenSession, MavenResourcesExecution)}
      */
-    List getDefaultFilterWrappers( MavenProject mavenProject, List filters, boolean escapedBackslashesInFilePath,
-                                   MavenSession mavenSession )
+    List<FileUtils.FilterWrapper> getDefaultFilterWrappers( MavenProject mavenProject, List filters,
+                                                            boolean escapedBackslashesInFilePath,
+                                                            MavenSession mavenSession )
         throws MavenFilteringException;
-    
+
     /**
      * @param mavenProject
      * @param filters
@@ -110,17 +113,19 @@ public interface MavenFileFilter
      * @throws MavenFilteringException
      * @since 1.0-beta-2
      */
-    List getDefaultFilterWrappers( MavenProject mavenProject, List filters, boolean escapedBackslashesInFilePath,
-                                   MavenSession mavenSession, MavenResourcesExecution mavenResourcesExecution )
+    List<FileUtils.FilterWrapper> getDefaultFilterWrappers( MavenProject mavenProject, List filters,
+                                                            boolean escapedBackslashesInFilePath,
+                                                            MavenSession mavenSession,
+                                                            MavenResourcesExecution mavenResourcesExecution )
         throws MavenFilteringException;
-    
+
     /**
      * @param request
      * @return {@link List} of FileUtils.FilterWrapper
      * @throws MavenFilteringException
      * @since 1.0-beta-3
      */
-    List getDefaultFilterWrappers( AbstractMavenFilteringRequest request )
+    List<FileUtils.FilterWrapper> getDefaultFilterWrappers( AbstractMavenFilteringRequest request )
         throws MavenFilteringException;
-    
+
 }