Interface ConfigResolver


public interface ConfigResolver
Implement this interface and provide an instance to ConfigResolveOptions.appendResolver() to provide custom behavior when unresolved substitutions are encountered during resolution.
Since:
1.3.2
  • Method Summary

    Modifier and Type
    Method
    Description
    lookup(String path)
    Returns the value to substitute for the given unresolved path.
    Returns a new resolver that falls back to the given resolver if this one doesn't provide a substitution itself.
  • Method Details

    • lookup

      ConfigValue lookup(String path)
      Returns the value to substitute for the given unresolved path. To get the components of the path use ConfigUtil.splitPath(String). If a non-null value is returned that value will be substituted, otherwise resolution will continue to consider the substitution as still unresolved.
      Parameters:
      path - the unresolved path
      Returns:
      the value to use as a substitution or null
    • withFallback

      ConfigResolver withFallback(ConfigResolver fallback)
      Returns a new resolver that falls back to the given resolver if this one doesn't provide a substitution itself. It's important to handle the case where you already have the fallback with a "return this", i.e. this method should not create a new object if the fallback is the same one you already have. The same fallback may be added repeatedly.
      Parameters:
      fallback - the previous includer for chaining
      Returns:
      a new resolver