Class ConfigurationOverrideMultiplexerImpl
java.lang.Object
org.apache.sling.caconfig.impl.override.ConfigurationOverrideMultiplexerImpl
- All Implemented Interfaces:
ConfigurationOverrideMultiplexer,RankedServices.ChangeListener
public class ConfigurationOverrideMultiplexerImpl
extends Object
implements ConfigurationOverrideMultiplexer, RankedServices.ChangeListener
Detects all
ConfigurationOverrideProvider implementations in the container
and consolidates their result based on service ranking.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidvoidchanged()If a provider is added or removed parse and collect all overrides again (to ensure correct overall order is preserved).booleanisAllOverridden(@NotNull String contextPath, @NotNull String configName) Checks if the whole configuration for the given context path and name is overridden.overrideProperties(@NotNull String contextPath, @NotNull String configName, @NotNull Map<String, Object> properties) Override properties for given context path and configuration name.overrideProperties(@NotNull String contextPath, @NotNull String configName, @Nullable Resource configResource) Override properties in given configuration resource (if any overrides are defined).overrideProperties(@NotNull String contextPath, @NotNull String configName, @Nullable Resource configResource, @NotNull ResourceResolver resourceResolver) Override properties in given configuration resource (if any overrides are defined).protected void
-
Constructor Details
-
ConfigurationOverrideMultiplexerImpl
public ConfigurationOverrideMultiplexerImpl()
-
-
Method Details
-
bindConfigurationOverrideProvider
protected void bindConfigurationOverrideProvider(ConfigurationOverrideProvider item, Map<String, Object> props) -
unbindConfigurationOverrideProvider
protected void unbindConfigurationOverrideProvider(ConfigurationOverrideProvider item, Map<String, Object> props) -
isAllOverridden
public boolean isAllOverridden(@NotNull @NotNull String contextPath, @NotNull @NotNull String configName) Description copied from interface:ConfigurationOverrideMultiplexerChecks if the whole configuration for the given context path and name is overridden.- Specified by:
isAllOverriddenin interfaceConfigurationOverrideMultiplexer- Parameters:
contextPath- Context pathconfigName- Config name- Returns:
- true if the whole configuration is overridden.
-
overrideProperties
public Map<String,Object> overrideProperties(@NotNull @NotNull String contextPath, @NotNull @NotNull String configName, @NotNull @NotNull Map<String, Object> properties) Description copied from interface:ConfigurationOverrideMultiplexerOverride properties for given context path and configuration name.- Specified by:
overridePropertiesin interfaceConfigurationOverrideMultiplexer- Parameters:
contextPath- Path of context resource for which configuration was resolvedconfigName- Configuration nameproperties- Resolved configuration properties- Returns:
- Overwritten or replaced properties - or null if no override took place
-
overrideProperties
public Resource overrideProperties(@NotNull @NotNull String contextPath, @NotNull @NotNull String configName, @Nullable @Nullable Resource configResource) Description copied from interface:ConfigurationOverrideMultiplexerOverride properties in given configuration resource (if any overrides are defined).- Specified by:
overridePropertiesin interfaceConfigurationOverrideMultiplexer- Parameters:
contextPath- Context pathconfigName- Configuration nameconfigResource- Resolved configuration resource- Returns:
- Resource with overwritten configuration properties - or original configuration resource if no override took place
-
overrideProperties
public Resource overrideProperties(@NotNull @NotNull String contextPath, @NotNull @NotNull String configName, @Nullable @Nullable Resource configResource, @NotNull @NotNull ResourceResolver resourceResolver) Description copied from interface:ConfigurationOverrideMultiplexerOverride properties in given configuration resource (if any overrides are defined).- Specified by:
overridePropertiesin interfaceConfigurationOverrideMultiplexer- Parameters:
contextPath- Context pathconfigName- Configuration nameconfigResource- Resolved configuration resourceresourceResolver- Resource resolver- Returns:
- Resource with overwritten configuration properties - or original configuration resource if no override took place
-
changed
public void changed()If a provider is added or removed parse and collect all overrides again (to ensure correct overall order is preserved).- Specified by:
changedin interfaceRankedServices.ChangeListener
-