Class HierarchicalBuilderParametersImpl

All Implemented Interfaces:
Cloneable, BasicBuilderProperties<BasicBuilderParameters>, BuilderParameters, FileBasedBuilderProperties<FileBasedBuilderParametersImpl>, HierarchicalBuilderProperties<HierarchicalBuilderParametersImpl>
Direct Known Subclasses:
INIBuilderParametersImpl, XMLBuilderParametersImpl

A specialized parameters object for hierarchical configurations.

This class defines special properties for hierarchical configurations. Because most hierarchical configurations are file-based configurations this class extends FileBasedBuilderParametersImpl.

Since:
2.0
  • Constructor Details

  • Method Details

    • inheritFrom

      public void inheritFrom(Map<String,?> source)
      Inherits properties from the specified map. This can be used for instance to reuse parameters from one builder in another builder - also in parent-child relations in which a parent builder creates child builders. The purpose of this method is to let a concrete implementation decide which properties can be inherited. Because parameters are basically organized as a map it would be possible to simply copy over all properties from the source object. However, this is not appropriate in all cases. For instance, some properties - like a ConfigurationInterpolator - are tightly connected to a configuration and cannot be reused in a different context. For other properties, e.g. a file name, it does not make sense to copy it. Therefore, an implementation has to be explicit in the properties it wants to take over. This implementation takes some properties defined in this class into account. This implementation copies some more properties defined by this class.
      Overrides:
      inheritFrom in class FileBasedBuilderParametersImpl
      Parameters:
      source - the source properties to inherit from
    • setExpressionEngine

      Sets the ExpressionEngine to be used when querying the configuration. This implementation stores the expression engine in the internal parameters map.
      Specified by:
      setExpressionEngine in interface HierarchicalBuilderProperties<HierarchicalBuilderParametersImpl>
      Parameters:
      engine - the ExpressionEngine
      Returns:
      a reference to this object for method chaining