List of usage examples for org.apache.commons.configuration MapConfiguration getInterpolator
public ConfigurationInterpolator getInterpolator()
ConfigurationInterpolator
object that manages the lookup objects for resolving variables. From source file:org.seedstack.seed.core.internal.application.ApplicationPlugin.java
private Configuration buildConfiguration(Props props, Props propsOverride, Map<String, Class<? extends StrLookup>> configurationLookups, String... profiles) { Map<String, String> finalConfiguration = new HashMap<String, String>(); Map<String, String> configurationMap = new HashMap<String, String>(); Map<String, String> configurationOverrideMap = new HashMap<String, String>(); // Extract props to maps props.extractProps(configurationMap, profiles); propsOverride.extractProps(configurationOverrideMap, profiles); // Put defaults to final configuration finalConfiguration.putAll(defaultConfiguration); // Put nominal to final configuration finalConfiguration.putAll(configurationMap); // Apply removal behavior Iterator<Map.Entry<String, String>> overrideIterator = configurationOverrideMap.entrySet().iterator(); while (overrideIterator.hasNext()) { String overrideKey = overrideIterator.next().getKey(); if (overrideKey.startsWith("-")) { finalConfiguration.remove(overrideKey.substring(1)); overrideIterator.remove();//from ww w . java 2 s. c o m } } // Put override to final configuration finalConfiguration.putAll(configurationOverrideMap); // Convert final configuration to an immutable Apache Commons Configuration MapConfiguration mapConfiguration = new MapConfiguration( new ImmutableMap.Builder<String, Object>().putAll(finalConfiguration).build()); // Register configuration lookups for (Entry<String, Class<? extends StrLookup>> configurationLookup : configurationLookups.entrySet()) { mapConfiguration.getInterpolator().registerLookup(configurationLookup.getKey(), buildStrLookup(configurationLookup.getValue(), mapConfiguration)); } return mapConfiguration; }
From source file:org.seedstack.seed.core.internal.application.SeedConfigLoader.java
private Configuration buildBootstrapConfiguration() { Set<String> resources = Sets.newHashSet(SEED_BOOTSTRAP_PROPS_PATH, SEED_BOOTSTRAP_PROPERTIES_PATH); MapConfiguration globalConfiguration = buildApplicationConfig(resources, null).getValue0(); globalConfiguration.getInterpolator().registerLookup("env", new EnvLookup()); return new MapConfiguration( new ImmutableMap.Builder<String, Object>().putAll(globalConfiguration.getMap()).build()); }
From source file:org.seedstack.seed.core.internal.SeedConfigLoader.java
private Configuration buildBootstrapConfiguration() { Set<String> resources = Sets.newHashSet(SEED_BOOTSTRAP_PROPS_PATH, SEED_BOOTSTRAP_PROPERTIES_PATH); MapConfiguration globalConfiguration = buildConfiguration(resources, null).getValue0(); globalConfiguration.getInterpolator().registerLookup("env", new EnvLookup()); return new MapConfiguration( new ImmutableMap.Builder<String, Object>().putAll(globalConfiguration.getMap()).build()); }