if ( interpolatedModel.getParent() != null ) StringSearchInterpolator ssi = new StringSearchInterpolator(); ssi.addValueSource( new MapBasedValueSource( request.getUserProperties() ) ); ssi.addValueSource( new MapBasedValueSource( model.getProperties() ) ); ssi.addValueSource( new MapBasedValueSource( request.getSystemProperties() ) ); String interpolated = ssi.interpolate( interpolatedModel.getParent().getVersion() ); interpolatedModel.getParent().setVersion( interpolated );
protected Interpolator createInterpolator() { StringSearchInterpolator interpolator = new StringSearchInterpolator(); interpolator.setCacheAnswers( true ); return interpolator; }
public static Interpolator createInterpolator(MavenProject project, MavenSession mavenSession) { StringSearchInterpolator interpolator = new StringSearchInterpolator(); final Properties props = new Properties(); props.putAll(project.getProperties()); props.putAll(mavenSession.getSystemProperties()); props.putAll(mavenSession.getUserProperties()); interpolator.addValueSource(new PropertiesBasedValueSource(props)); // add ${project.foo} interpolator.addValueSource(new PrefixedObjectValueSource(Arrays.asList("project", "pom"), project, true)); // add ${session.foo} interpolator.addValueSource(new PrefixedObjectValueSource("session", mavenSession)); // add ${settings.foo} final Settings settings = mavenSession.getSettings(); if (settings != null) { interpolator.addValueSource(new PrefixedObjectValueSource("settings", settings)); } return interpolator; }
private Map<String, String> resolve(final Map<String, String> source) { Map<String, String> result = Maps.newHashMapWithExpectedSize(source.size()); Interpolator interpolator = new StringSearchInterpolator(); interpolator.addValueSource(new MapBasedValueSource(source)); for (Entry<String, String> entry : source.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); if (value == null) { log.warn("Ignoring null property: {}", key); continue; } // skip unless value contains an expression if (value.contains(StringSearchInterpolator.DEFAULT_START_EXPR)) { try { value = interpolator.interpolate(value); log.trace("Resolved: {} -> '{}'", key, value); } catch (InterpolationException e) { log.warn("Failed to interpolate: {}, using original value: {}", key, value); } } result.put(key, value); } return result; } }
public Reader getReader( Reader reader ) { StringSearchInterpolator propertiesInterpolator = new StringSearchInterpolator( startExp, endExp ); propertiesInterpolator.addValueSource( valueSource ); propertiesInterpolator.setEscapeString( escapeString ); InterpolatorFilterReaderLineEnding interpolatorFilterReader = new InterpolatorFilterReaderLineEnding( reader, propertiesInterpolator, startExp, endExp, multiLineFiltering ); interpolatorFilterReader.setInterpolateWithPrefixPattern( false ); return interpolatorFilterReader; } } );
@Override public String interpolate(String input) { try { return interpolator.interpolate(input); } catch (org.codehaus.plexus.interpolation.InterpolationException e) { throw new RuntimeException("Error while interpolating value \"" + input + "\"", e); } }
public PropertyInterpolator( Properties props, Object objectValueSource ) { if ( props != null ) { interp.addValueSource( new PropertiesBasedValueSource( props ) ); } // According to https://maven.apache.org/guides/introduction/introduction-to-the-pom.html // the prefix project and the deprecated prefix pom are possible. final List<String> prefixes = Arrays.asList( "pom", "project" ); ri = new PrefixAwareRecursionInterceptor( prefixes, true ); interp.addValueSource( new PrefixedObjectValueSource( prefixes, objectValueSource, true ) ); }
interpolator = new StringSearchInterpolator(); interpolator.addValueSource(new PrefixedObjectValueSource("project", mavenProject)); interpolator.addValueSource(new PrefixedObjectValueSource("settings", settings)); interpolator.addValueSource(new SingleResponseValueSource("localRepository", settings.getLocalRepository())); interpolator.addValueSource(new SingleResponseValueSource("version", mavenProject.getVersion())); interpolator.addValueSource(new SingleResponseValueSource("basedir", mavenProject.getBasedir() .getAbsolutePath())); interpolator.addValueSource(new ValueSource() { @Override public Object getValue(String expression) {
/** * Constructs a new {@link ModelInterpolator} object. * * @param properties * map supplying properties for interpolation. */ public ModelInterpolator(final Map<String, String> properties) { this.interpolator = new StringSearchInterpolator(); interpolator.addValueSource(new PropertiesValueSource(properties)); interpolator.setCacheAnswers(true); }
public Reader getReader(Reader reader) { StringSearchInterpolator propertiesInterpolator = new StringSearchInterpolator(startExp, endExp); propertiesInterpolator.addValueSource(new MapBasedValueSource(values)); propertiesInterpolator.setEscapeString(escapeString); InterpolatorFilterReader interpolatorFilterReader = new InterpolatorFilterReader(reader, propertiesInterpolator, startExp, endExp); interpolatorFilterReader.setInterpolateWithPrefixPattern(false); return interpolatorFilterReader; } };
public String interpolate( String input ) throws InterpolationException { return interpolate( input, new SimpleRecursionInterceptor() ); }
/** * Helper to interpolate given input. */ public static String interpolate(final String input) throws InterpolationException { StringSearchInterpolator interpolator = new StringSearchInterpolator(); interpolator.addValueSource(new MapBasedValueSource(tokens.get())); return interpolator.interpolate(input); }
private StringSearchInterpolator getInterpolator() { final Properties props = new Properties(); props.setProperty( KeycloakConfig.KEYCLOAK_REALM, config.getRealm() ); props.setProperty( KeycloakConfig.KEYCLOAK_URL, config.getUrl() ); if ( config.getUiResource() != null ) { props.setProperty( KeycloakConfig.KEYCLOAK_UI_RESOURCE, config.getUiResource() ); } if ( config.getRealmPublicKey() != null ) { props.setProperty( KeycloakConfig.KEYCLOAK_REALM_PUBLIC_KEY, config.getRealmPublicKey() ); } final StringSearchInterpolator interpolator = new StringSearchInterpolator(); interpolator.addValueSource( new PropertiesBasedValueSource( props ) ); return interpolator; }
@Nonnull private String interpolate(@Nonnull final String str) throws IOException, InterpolationException { Interpolator interpolator = new StringSearchInterpolator(); interpolator.addValueSource(new MapBasedValueSource(this.getProject().getProperties())); interpolator.addValueSource(new MapBasedValueSource(System.getProperties())); interpolator.addValueSource(new EnvarBasedValueSource()); return interpolator.interpolate(str); }
@Override protected Interpolator createInterpolator() { StringSearchInterpolator interpolator = new StringSearchInterpolator(); interpolator.setCacheAnswers( true ); return interpolator; }
/** * Entry point for recursive resolution of an expression and all of its * nested expressions. * * @todo Ensure unresolvable expressions don't trigger infinite recursion. */ public String interpolate( String input, RecursionInterceptor recursionInterceptor ) throws InterpolationException { try { return interpolate( input, recursionInterceptor, new HashSet() ); } finally { if ( !cacheAnswers ) { existingAnswers.clear(); } } }
public String resolve( final String value ) throws InterpolationException { if ( value == null || value.trim() .length() < 1 ) { return null; } if ( bootProps == null ) { if ( indyHome == null ) { return value; } else { bootProps = new Properties(); } } bootProps.setProperty( "indy.home", indyHome ); if ( interp == null ) { interp = new StringSearchInterpolator(); interp.addValueSource( new PropertiesBasedValueSource( bootProps ) ); } return interp.interpolate( value ); }
private StringSearchInterpolator getInterpolator() { final Properties props = new Properties(); props.setProperty( KeycloakConfig.KEYCLOAK_REALM, config.getRealm() ); props.setProperty( KeycloakConfig.KEYCLOAK_URL, config.getUrl() ); if ( config.getUiResource() != null ) { props.setProperty( KeycloakConfig.KEYCLOAK_UI_RESOURCE, config.getUiResource() ); } if ( config.getRealmPublicKey() != null ) { props.setProperty( KeycloakConfig.KEYCLOAK_REALM_PUBLIC_KEY, config.getRealmPublicKey() ); } final StringSearchInterpolator interpolator = new StringSearchInterpolator(); interpolator.addValueSource( new PropertiesBasedValueSource( props ) ); return interpolator; }
private void interpolate() throws Exception { Interpolator interpolator = new StringSearchInterpolator(); interpolator.addValueSource(new MapBasedValueSource(properties)); interpolator.addValueSource(new MapBasedValueSource(System.getProperties())); interpolator.addValueSource(new EnvarBasedValueSource()); for (Entry<String, String> entry : properties.entrySet()) { properties.put(entry.getKey(), interpolator.interpolate(entry.getValue())); } }
protected Interpolator createInterpolator() { StringSearchInterpolator interpolator = new StringSearchInterpolator(); interpolator.setCacheAnswers( true ); return interpolator; }