Class CiInterpolatorImpl
- java.lang.Object
-
- org.codehaus.mojo.flatten.cifriendly.CiInterpolatorImpl
-
- All Implemented Interfaces:
org.codehaus.plexus.interpolation.BasicInterpolator
,org.codehaus.plexus.interpolation.Interpolator
public class CiInterpolatorImpl extends java.lang.Object implements org.codehaus.plexus.interpolation.Interpolator
Based on StringSearchInterpolator from plexus-interpolation, seeStringSearchInterpolator
. This interpolates only the Maven CI Friendly variables revision, sha1 and changelist.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
cacheAnswers
static java.lang.String
DEFAULT_END_EXPR
static java.lang.String
DEFAULT_START_EXPR
private java.lang.String
endExpr
private java.util.Map
existingAnswers
private java.util.List<org.codehaus.plexus.interpolation.InterpolationPostProcessor>
postProcessors
private java.lang.String
startExpr
private java.util.List<org.codehaus.plexus.interpolation.ValueSource>
valueSources
-
Constructor Summary
Constructors Constructor Description CiInterpolatorImpl()
CiInterpolatorImpl(java.lang.String startExpr, java.lang.String endExpr)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPostProcessor(org.codehaus.plexus.interpolation.InterpolationPostProcessor postProcessor)
void
addValueSource(org.codehaus.plexus.interpolation.ValueSource valueSource)
void
clearAnswers()
void
clearFeedback()
Clear the feedback messages from previous interpolate(..) calls.java.util.List
getFeedback()
Return any feedback messages and errors that were generated - but suppressed - during the interpolation process.java.lang.String
interpolate(java.lang.String input)
java.lang.String
interpolate(java.lang.String input, java.lang.String thisPrefixPattern)
java.lang.String
interpolate(java.lang.String input, java.lang.String thisPrefixPattern, org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor)
java.lang.String
interpolate(java.lang.String input, org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor)
Entry point for recursive resolution of an expression and all of its nested expressions.private java.lang.String
interpolate(java.lang.String input, org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor, java.util.Set<java.lang.String> unresolvable)
boolean
isCacheAnswers()
void
removePostProcessor(org.codehaus.plexus.interpolation.InterpolationPostProcessor postProcessor)
void
removeValuesSource(org.codehaus.plexus.interpolation.ValueSource valueSource)
void
setCacheAnswers(boolean cacheAnswers)
-
-
-
Field Detail
-
existingAnswers
private final java.util.Map existingAnswers
-
valueSources
private final java.util.List<org.codehaus.plexus.interpolation.ValueSource> valueSources
-
postProcessors
private final java.util.List<org.codehaus.plexus.interpolation.InterpolationPostProcessor> postProcessors
-
cacheAnswers
private boolean cacheAnswers
-
DEFAULT_START_EXPR
public static final java.lang.String DEFAULT_START_EXPR
- See Also:
- Constant Field Values
-
DEFAULT_END_EXPR
public static final java.lang.String DEFAULT_END_EXPR
- See Also:
- Constant Field Values
-
startExpr
private final java.lang.String startExpr
-
endExpr
private final java.lang.String endExpr
-
-
Method Detail
-
addValueSource
public void addValueSource(org.codehaus.plexus.interpolation.ValueSource valueSource)
- Specified by:
addValueSource
in interfaceorg.codehaus.plexus.interpolation.Interpolator
-
removeValuesSource
public void removeValuesSource(org.codehaus.plexus.interpolation.ValueSource valueSource)
- Specified by:
removeValuesSource
in interfaceorg.codehaus.plexus.interpolation.Interpolator
-
addPostProcessor
public void addPostProcessor(org.codehaus.plexus.interpolation.InterpolationPostProcessor postProcessor)
- Specified by:
addPostProcessor
in interfaceorg.codehaus.plexus.interpolation.Interpolator
-
removePostProcessor
public void removePostProcessor(org.codehaus.plexus.interpolation.InterpolationPostProcessor postProcessor)
- Specified by:
removePostProcessor
in interfaceorg.codehaus.plexus.interpolation.Interpolator
-
interpolate
public java.lang.String interpolate(java.lang.String input, java.lang.String thisPrefixPattern) throws org.codehaus.plexus.interpolation.InterpolationException
- Specified by:
interpolate
in interfaceorg.codehaus.plexus.interpolation.Interpolator
- Throws:
org.codehaus.plexus.interpolation.InterpolationException
-
interpolate
public java.lang.String interpolate(java.lang.String input, java.lang.String thisPrefixPattern, org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor) throws org.codehaus.plexus.interpolation.InterpolationException
- Specified by:
interpolate
in interfaceorg.codehaus.plexus.interpolation.Interpolator
- Throws:
org.codehaus.plexus.interpolation.InterpolationException
-
interpolate
public java.lang.String interpolate(java.lang.String input) throws org.codehaus.plexus.interpolation.InterpolationException
- Specified by:
interpolate
in interfaceorg.codehaus.plexus.interpolation.BasicInterpolator
- Throws:
org.codehaus.plexus.interpolation.InterpolationException
-
interpolate
public java.lang.String interpolate(java.lang.String input, org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor) throws org.codehaus.plexus.interpolation.InterpolationException
Entry point for recursive resolution of an expression and all of its nested expressions.- Specified by:
interpolate
in interfaceorg.codehaus.plexus.interpolation.BasicInterpolator
- Throws:
org.codehaus.plexus.interpolation.InterpolationException
-
interpolate
private java.lang.String interpolate(java.lang.String input, org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor, java.util.Set<java.lang.String> unresolvable) throws org.codehaus.plexus.interpolation.InterpolationException
- Throws:
org.codehaus.plexus.interpolation.InterpolationException
-
getFeedback
public java.util.List getFeedback()
Return any feedback messages and errors that were generated - but suppressed - during the interpolation process. Since unresolvable expressions will be left in the source string as-is, this feedback is optional, and will only be useful for debugging interpolation problems.- Specified by:
getFeedback
in interfaceorg.codehaus.plexus.interpolation.Interpolator
- Returns:
- a
List
that may be interspersed withString
andThrowable
instances.
-
clearFeedback
public void clearFeedback()
Clear the feedback messages from previous interpolate(..) calls.- Specified by:
clearFeedback
in interfaceorg.codehaus.plexus.interpolation.Interpolator
-
isCacheAnswers
public boolean isCacheAnswers()
- Specified by:
isCacheAnswers
in interfaceorg.codehaus.plexus.interpolation.Interpolator
-
setCacheAnswers
public void setCacheAnswers(boolean cacheAnswers)
- Specified by:
setCacheAnswers
in interfaceorg.codehaus.plexus.interpolation.Interpolator
-
clearAnswers
public void clearAnswers()
- Specified by:
clearAnswers
in interfaceorg.codehaus.plexus.interpolation.Interpolator
-
-