You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2009/04/22 00:53:31 UTC
svn commit: r767323 -
/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/
Author: jdcasey
Date: Tue Apr 21 22:53:31 2009
New Revision: 767323
URL: http://svn.apache.org/viewvc?rev=767323&view=rev
Log:
update to 1.5 syntax
Modified:
maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java
maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolationException.java
maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolator.java
maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java
maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java
Modified: maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java?rev=767323&r1=767322&r2=767323&view=diff
==============================================================================
--- maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java (original)
+++ maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java Tue Apr 21 22:53:31 2009
@@ -19,18 +19,6 @@
* under the License.
*/
-import java.io.File;
-import java.io.IOException;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-
import org.apache.maven.model.Model;
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
@@ -54,6 +42,17 @@
import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
+import java.io.File;
+import java.io.IOException;
+import java.io.StringReader;
+import java.io.StringWriter;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+
/**
* Use a regular expression search to find and resolve expressions within the POM.
*
@@ -65,13 +64,13 @@
extends AbstractLogEnabled
implements ModelInterpolator, Initializable
{
- private static final List PROJECT_PREFIXES = Arrays.asList( new String[]{ "pom.", "project." } );
+ private static final List<String> PROJECT_PREFIXES = Arrays.asList( new String[]{ "pom.", "project." } );
- private static final List TRANSLATED_PATH_EXPRESSIONS;
+ private static final List<String> TRANSLATED_PATH_EXPRESSIONS;
static
{
- List translatedPrefixes = new ArrayList();
+ List<String> translatedPrefixes = new ArrayList<String>();
// MNG-1927, MNG-2124, MNG-3355:
// If the build section is present and the project directory is non-null, we should make
@@ -109,7 +108,7 @@
{
}
- public Model interpolate( Model model, Map context )
+ public Model interpolate( Model model, Map<String, ?> context )
throws ModelInterpolationException
{
return interpolate( model, context, true );
@@ -127,7 +126,7 @@
*
* @deprecated Use {@link ModelInterpolator#interpolate(Model, File, ProjectBuilderConfiguration, boolean)} instead.
*/
- public Model interpolate( Model model, Map context, boolean strict )
+ public Model interpolate( Model model, Map<String, ?> context, boolean strict )
throws ModelInterpolationException
{
Properties props = new Properties();
@@ -204,8 +203,8 @@
{
try
{
- List valueSources = createValueSources( model, projectDir, config );
- List postProcessors = createPostProcessors( model, projectDir, config );
+ List<ValueSource> valueSources = createValueSources( model, projectDir, config );
+ List<InterpolationPostProcessor> postProcessors = createPostProcessors( model, projectDir, config );
return interpolateInternal( src, valueSources, postProcessors, debug );
}
@@ -215,7 +214,7 @@
}
}
- protected List createValueSources( final Model model, final File projectDir, final ProjectBuilderConfiguration config )
+ protected List<ValueSource> createValueSources( final Model model, final File projectDir, final ProjectBuilderConfiguration config )
{
String timestampFormat = DEFAULT_BUILD_TIMESTAMP_FORMAT;
@@ -251,7 +250,7 @@
},
PROJECT_PREFIXES, false );
- List valueSources = new ArrayList( 9 );
+ List<ValueSource> valueSources = new ArrayList<ValueSource>( 9 );
// NOTE: Order counts here!
valueSources.add( basedirValueSource );
@@ -273,12 +272,19 @@
return valueSources;
}
- protected List createPostProcessors( final Model model, final File projectDir, final ProjectBuilderConfiguration config )
+ protected List<InterpolationPostProcessor> createPostProcessors( final Model model, final File projectDir,
+ final ProjectBuilderConfiguration config )
{
- return Collections.singletonList( new PathTranslatingPostProcessor( PROJECT_PREFIXES, TRANSLATED_PATH_EXPRESSIONS, projectDir, pathTranslator ) );
+ return Collections.singletonList( (InterpolationPostProcessor) new PathTranslatingPostProcessor(
+ PROJECT_PREFIXES,
+ TRANSLATED_PATH_EXPRESSIONS,
+ projectDir,
+ pathTranslator ) );
}
- protected String interpolateInternal( String src, List valueSources, List postProcessors, boolean debug )
+ @SuppressWarnings("unchecked")
+ protected String interpolateInternal( String src, List<ValueSource> valueSources,
+ List<InterpolationPostProcessor> postProcessors, boolean debug )
throws ModelInterpolationException
{
if ( src.indexOf( "${" ) < 0 )
@@ -292,16 +298,13 @@
synchronized( this )
{
- for ( Iterator it = valueSources.iterator(); it.hasNext(); )
+ for ( ValueSource vs : valueSources )
{
- ValueSource vs = (ValueSource) it.next();
interpolator.addValueSource( vs );
}
- for ( Iterator it = postProcessors.iterator(); it.hasNext(); )
+ for ( InterpolationPostProcessor postProcessor : postProcessors )
{
- InterpolationPostProcessor postProcessor = (InterpolationPostProcessor) it.next();
-
interpolator.addPostProcessor( postProcessor );
}
@@ -318,16 +321,14 @@
if ( debug )
{
- List feedback = interpolator.getFeedback();
+ List<Object> feedback = (List<Object>) interpolator.getFeedback();
if ( feedback != null && !feedback.isEmpty() )
{
logger.debug( "Maven encountered the following problems during initial POM interpolation:" );
Object last = null;
- for ( Iterator it = feedback.iterator(); it.hasNext(); )
+ for ( Object next : feedback )
{
- Object next = it.next();
-
if ( next instanceof Throwable )
{
if ( last == null )
@@ -361,15 +362,13 @@
}
finally
{
- for ( Iterator iterator = valueSources.iterator(); iterator.hasNext(); )
+ for ( ValueSource vs : valueSources )
{
- ValueSource vs = (ValueSource) iterator.next();
interpolator.removeValuesSource( vs );
}
- for ( Iterator iterator = postProcessors.iterator(); iterator.hasNext(); )
+ for ( InterpolationPostProcessor postProcessor : postProcessors )
{
- InterpolationPostProcessor postProcessor = (InterpolationPostProcessor) iterator.next();
interpolator.removePostProcessor( postProcessor );
}
}
Modified: maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolationException.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolationException.java?rev=767323&r1=767322&r2=767323&view=diff
==============================================================================
--- maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolationException.java (original)
+++ maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolationException.java Tue Apr 21 22:53:31 2009
@@ -24,6 +24,7 @@
* <p/>
* Created on Feb 2, 2005
*/
+@SuppressWarnings("serial")
public class ModelInterpolationException
extends Exception
{
Modified: maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolator.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolator.java?rev=767323&r1=767322&r2=767323&view=diff
==============================================================================
--- maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolator.java (original)
+++ maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/ModelInterpolator.java Tue Apr 21 22:53:31 2009
@@ -41,13 +41,13 @@
/**
* @deprecated Use {@link ModelInterpolator#interpolate(Model, File, ProjectBuilderConfiguration, boolean)} instead.
*/
- Model interpolate( Model project, Map context )
+ Model interpolate( Model project, Map<String, ?> context )
throws ModelInterpolationException;
/**
* @deprecated Use {@link ModelInterpolator#interpolate(Model, File, ProjectBuilderConfiguration, boolean)} instead.
*/
- Model interpolate( Model model, Map context, boolean strict )
+ Model interpolate( Model model, Map<String, ?> context, boolean strict )
throws ModelInterpolationException;
Model interpolate( Model model,
Modified: maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java?rev=767323&r1=767322&r2=767323&view=diff
==============================================================================
--- maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java (original)
+++ maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java Tue Apr 21 22:53:31 2009
@@ -20,9 +20,7 @@
*/
import org.apache.maven.project.path.PathTranslator;
-import org.codehaus.plexus.interpolation.AbstractFunctionValueSourceWrapper;
import org.codehaus.plexus.interpolation.InterpolationPostProcessor;
-import org.codehaus.plexus.interpolation.ValueSource;
import org.codehaus.plexus.interpolation.util.ValueSourceUtils;
import java.io.File;
@@ -36,12 +34,12 @@
implements InterpolationPostProcessor
{
- private final List unprefixedPathKeys;
+ private final List<String> unprefixedPathKeys;
private final File projectDir;
private final PathTranslator pathTranslator;
- private final List expressionPrefixes;
+ private final List<String> expressionPrefixes;
- public PathTranslatingPostProcessor( List expressionPrefixes, List unprefixedPathKeys, File projectDir, PathTranslator pathTranslator )
+ public PathTranslatingPostProcessor( List<String> expressionPrefixes, List<String> unprefixedPathKeys, File projectDir, PathTranslator pathTranslator )
{
this.expressionPrefixes = expressionPrefixes;
this.unprefixedPathKeys = unprefixedPathKeys;
Modified: maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java?rev=767323&r1=767322&r2=767323&view=diff
==============================================================================
--- maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java (original)
+++ maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java Tue Apr 21 22:53:31 2009
@@ -1,5 +1,14 @@
package org.apache.maven.project.interpolation;
+import org.apache.maven.model.Model;
+import org.apache.maven.project.ProjectBuilderConfiguration;
+import org.apache.maven.project.path.PathTranslator;
+import org.codehaus.plexus.interpolation.InterpolationPostProcessor;
+import org.codehaus.plexus.interpolation.Interpolator;
+import org.codehaus.plexus.interpolation.StringSearchInterpolator;
+import org.codehaus.plexus.interpolation.ValueSource;
+import org.codehaus.plexus.logging.Logger;
+
import java.io.File;
import java.lang.reflect.Array;
import java.lang.reflect.Field;
@@ -7,25 +16,17 @@
import java.security.PrivilegedAction;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.WeakHashMap;
-import org.apache.maven.model.Model;
-import org.apache.maven.project.ProjectBuilderConfiguration;
-import org.apache.maven.project.path.PathTranslator;
-import org.codehaus.plexus.interpolation.Interpolator;
-import org.codehaus.plexus.interpolation.StringSearchInterpolator;
-import org.codehaus.plexus.logging.Logger;
-
public class StringSearchModelInterpolator
extends AbstractStringBasedModelInterpolator
{
- private static final Map fieldsByClass = new WeakHashMap();
- private static final Map fieldIsPrimitiveByClass = new WeakHashMap();
+ private static final Map<Class<?>, Field[]> fieldsByClass = new WeakHashMap<Class<?>, Field[]>();
+ private static final Map<Class<?>, Boolean> fieldIsPrimitiveByClass = new WeakHashMap<Class<?>, Boolean>();
public StringSearchModelInterpolator()
{
@@ -50,8 +51,8 @@
{
try
{
- List valueSources = createValueSources( model, projectDir, config );
- List postProcessors = createPostProcessors( model, projectDir, config );
+ List<ValueSource> valueSources = createValueSources( model, projectDir, config );
+ List<InterpolationPostProcessor> postProcessors = createPostProcessors( model, projectDir, config );
InterpolateObjectAction action =
new InterpolateObjectAction( obj, valueSources, postProcessors, debugEnabled,
@@ -79,32 +80,32 @@
return interpolator;
}
- private static final class InterpolateObjectAction implements PrivilegedAction
+ private static final class InterpolateObjectAction implements PrivilegedAction<ModelInterpolationException>
{
private final boolean debugEnabled;
- private final LinkedList interpolationTargets;
+ private final LinkedList<Object> interpolationTargets;
private final StringSearchModelInterpolator modelInterpolator;
private final Logger logger;
- private final List valueSources;
- private final List postProcessors;
+ private final List<ValueSource> valueSources;
+ private final List<InterpolationPostProcessor> postProcessors;
- public InterpolateObjectAction( Object target, List valueSources, List postProcessors,
- boolean debugEnabled,
+ public InterpolateObjectAction( Object target, List<ValueSource> valueSources,
+ List<InterpolationPostProcessor> postProcessors, boolean debugEnabled,
StringSearchModelInterpolator modelInterpolator, Logger logger )
{
this.valueSources = valueSources;
this.postProcessors = postProcessors;
this.debugEnabled = debugEnabled;
- this.interpolationTargets = new LinkedList();
+ this.interpolationTargets = new LinkedList<Object>();
interpolationTargets.add( target );
this.modelInterpolator = modelInterpolator;
this.logger = logger;
}
- public Object run()
+ public ModelInterpolationException run()
{
while( !interpolationTargets.isEmpty() )
{
@@ -123,7 +124,8 @@
return null;
}
- private void traverseObjectWithParents( Class cls, Object target )
+ @SuppressWarnings("unchecked")
+ private void traverseObjectWithParents( Class<?> cls, Object target )
throws ModelInterpolationException
{
if ( cls == null )
@@ -147,7 +149,7 @@
for ( int i = 0; i < fields.length; i++ )
{
- Class type = fields[i].getType();
+ Class<?> type = fields[i].getType();
if ( isQualifiedForInterpolation( fields[i], type ) )
{
boolean isAccessible = fields[i].isAccessible();
@@ -171,10 +173,10 @@
}
else if ( Collection.class.isAssignableFrom( type ) )
{
- Collection c = (Collection) fields[i].get( target );
+ Collection<Object> c = (Collection<Object>) fields[i].get( target );
if ( c != null && !c.isEmpty() )
{
- List originalValues = new ArrayList( c );
+ List<Object> originalValues = new ArrayList<Object>( c );
try
{
c.clear();
@@ -188,9 +190,8 @@
continue;
}
- for ( Iterator it = originalValues.iterator(); it.hasNext(); )
+ for ( Object value : originalValues )
{
- Object value = it.next();
if ( value != null )
{
if( String.class == value.getClass() )
@@ -229,13 +230,11 @@
}
else if ( Map.class.isAssignableFrom( type ) )
{
- Map m = (Map) fields[i].get( target );
+ Map<Object, Object> m = (Map<Object, Object>) fields[i].get( target );
if ( m != null && !m.isEmpty() )
{
- for ( Iterator it = m.entrySet().iterator(); it.hasNext(); )
+ for ( Map.Entry<Object, Object> entry : m.entrySet() )
{
- Map.Entry entry = (Map.Entry) it.next();
-
Object value = entry.getValue();
if ( value != null )
@@ -311,12 +310,12 @@
}
}
- private boolean isQualifiedForInterpolation( Class cls )
+ private boolean isQualifiedForInterpolation( Class<?> cls )
{
return !cls.getPackage().getName().startsWith( "java" );
}
- private boolean isQualifiedForInterpolation( Field field, Class fieldType )
+ private boolean isQualifiedForInterpolation( Field field, Class<?> fieldType )
{
if ( !fieldIsPrimitiveByClass.containsKey( fieldType ) )
{