Class CiModelInterpolator
- java.lang.Object
-
- org.codehaus.mojo.flatten.cifriendly.CiModelInterpolator
-
- All Implemented Interfaces:
CiInterpolator
@Named @Singleton public class CiModelInterpolator extends java.lang.Object implements CiInterpolator
Based on StringSearchModelInterpolator in maven-model-builder.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
CiModelInterpolator.BuildTimestampValueSource
private static class
CiModelInterpolator.InterpolateObjectAction
(package private) static class
CiModelInterpolator.PathTranslatingPostProcessor
(package private) static class
CiModelInterpolator.ProblemDetectingValueSource
(package private) static class
CiModelInterpolator.UrlNormalizingPostProcessor
-
Field Summary
Fields Modifier and Type Field Description private static java.util.Map<java.lang.Class<?>,CiModelInterpolator.InterpolateObjectAction.CacheItem>
CACHED_ENTRIES
private org.codehaus.plexus.interpolation.Interpolator
interpolator
private org.apache.maven.model.path.PathTranslator
pathTranslator
private static java.util.List<java.lang.String>
PROJECT_PREFIXES
private org.codehaus.plexus.interpolation.RecursionInterceptor
recursionInterceptor
private static java.util.Collection<java.lang.String>
TRANSLATED_PATH_EXPRESSIONS
private org.apache.maven.model.path.UrlNormalizer
urlNormalizer
-
Constructor Summary
Constructors Constructor Description CiModelInterpolator(org.apache.maven.model.path.PathTranslator pathTranslator, org.apache.maven.model.path.UrlNormalizer urlNormalizer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.codehaus.plexus.interpolation.Interpolator
createInterpolator()
protected java.util.List<? extends org.codehaus.plexus.interpolation.InterpolationPostProcessor>
createPostProcessors(org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config)
protected java.util.List<org.codehaus.plexus.interpolation.ValueSource>
createValueSources(org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config, org.apache.maven.model.building.ModelProblemCollector problems)
protected org.codehaus.plexus.interpolation.Interpolator
getInterpolator()
protected org.codehaus.plexus.interpolation.RecursionInterceptor
getRecursionInterceptor()
protected java.lang.String
interpolateInternal(java.lang.String src, java.util.List<? extends org.codehaus.plexus.interpolation.ValueSource> valueSources, java.util.List<? extends org.codehaus.plexus.interpolation.InterpolationPostProcessor> postProcessors, org.apache.maven.model.building.ModelProblemCollector problems)
org.apache.maven.model.Model
interpolateModel(org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config, org.apache.maven.model.building.ModelProblemCollector problems)
Interpolates expressions in the specified model.java.lang.String
interpolateModelContent(java.lang.String modelContent, org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config, org.apache.maven.model.building.ModelProblemCollector problems)
protected void
interpolateObject(java.lang.Object obj, org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config, org.apache.maven.model.building.ModelProblemCollector problems)
protected void
setRecursionInterceptor(org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor)
-
-
-
Field Detail
-
PROJECT_PREFIXES
private static final java.util.List<java.lang.String> PROJECT_PREFIXES
-
TRANSLATED_PATH_EXPRESSIONS
private static final java.util.Collection<java.lang.String> TRANSLATED_PATH_EXPRESSIONS
-
CACHED_ENTRIES
private static final java.util.Map<java.lang.Class<?>,CiModelInterpolator.InterpolateObjectAction.CacheItem> CACHED_ENTRIES
-
interpolator
private final org.codehaus.plexus.interpolation.Interpolator interpolator
-
recursionInterceptor
private org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor
-
pathTranslator
private final org.apache.maven.model.path.PathTranslator pathTranslator
-
urlNormalizer
private final org.apache.maven.model.path.UrlNormalizer urlNormalizer
-
-
Method Detail
-
interpolateModel
public org.apache.maven.model.Model interpolateModel(org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config, org.apache.maven.model.building.ModelProblemCollector problems)
Description copied from interface:CiInterpolator
Interpolates expressions in the specified model. Note that implementations are free to either interpolate the provided model directly or to create a clone of the model and interpolate the clone. Callers should always use the returned model and must not rely on the input model being updated.- Specified by:
interpolateModel
in interfaceCiInterpolator
- Parameters:
model
- The model to interpolate, must not benull
.projectDir
- The project directory, may benull
if the model does not belong to a local project but to some artifact's metadata.config
- The model building request that holds further settings, must not benull
.problems
- The container used to collect problems that were encountered, must not benull
.- Returns:
- The interpolated model, never
null
.
-
interpolateModelContent
public java.lang.String interpolateModelContent(java.lang.String modelContent, org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config, org.apache.maven.model.building.ModelProblemCollector problems)
-
interpolateObject
protected void interpolateObject(java.lang.Object obj, org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config, org.apache.maven.model.building.ModelProblemCollector problems)
-
interpolateInternal
protected java.lang.String interpolateInternal(java.lang.String src, java.util.List<? extends org.codehaus.plexus.interpolation.ValueSource> valueSources, java.util.List<? extends org.codehaus.plexus.interpolation.InterpolationPostProcessor> postProcessors, org.apache.maven.model.building.ModelProblemCollector problems)
-
createInterpolator
protected org.codehaus.plexus.interpolation.Interpolator createInterpolator()
-
createValueSources
protected java.util.List<org.codehaus.plexus.interpolation.ValueSource> createValueSources(org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config, org.apache.maven.model.building.ModelProblemCollector problems)
-
createPostProcessors
protected java.util.List<? extends org.codehaus.plexus.interpolation.InterpolationPostProcessor> createPostProcessors(org.apache.maven.model.Model model, java.io.File projectDir, org.apache.maven.model.building.ModelBuildingRequest config)
-
getRecursionInterceptor
protected org.codehaus.plexus.interpolation.RecursionInterceptor getRecursionInterceptor()
-
setRecursionInterceptor
protected void setRecursionInterceptor(org.codehaus.plexus.interpolation.RecursionInterceptor recursionInterceptor)
-
getInterpolator
protected final org.codehaus.plexus.interpolation.Interpolator getInterpolator()
-
-