Class/Object

org.ekrich.config.impl

AbstractConfigObject

Related Docs: object AbstractConfigObject | package impl

Permalink

abstract class AbstractConfigObject extends AbstractConfigValue with ConfigObject with Container

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AbstractConfigObject
  2. Container
  3. ConfigObject
  4. Map
  5. AbstractConfigValue
  6. MergeableValue
  7. ConfigValue
  8. ConfigMergeable
  9. AnyRef
  10. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AbstractConfigObject(_origin: ConfigOrigin)

    Permalink

Abstract Value Members

  1. abstract def containsKey(arg0: Any): Boolean

    Permalink
    Definition Classes
    Map
  2. abstract def containsValue(arg0: Any): Boolean

    Permalink
    Definition Classes
    Map
  3. abstract def entrySet(): Set[Entry[String, ConfigValue]]

    Permalink
    Definition Classes
    Map
  4. abstract def get(key: Any): AbstractConfigValue

    Permalink

    Gets a ConfigValue at the given key, or returns null if there is no value.

    Gets a ConfigValue at the given key, or returns null if there is no value. The returned ConfigValue may have ConfigValueType#NULL or any other type, and the passed-in key must be a key in this object (rather than a path expression).

    key

    key to look up

    returns

    the value at the key or null if none

    Definition Classes
    AbstractConfigObjectConfigObject → Map
  5. abstract def hasDescendant(descendant: AbstractConfigValue): Boolean

    Permalink

    Super-expensive full traversal to see if descendant is anywhere underneath this container.

    Super-expensive full traversal to see if descendant is anywhere underneath this container.

    Definition Classes
    Container
  6. abstract def isEmpty(): Boolean

    Permalink
    Definition Classes
    Map
  7. abstract def keySet(): Set[String]

    Permalink
    Definition Classes
    Map
  8. abstract def newCopy(status: ResolveStatus, origin: ConfigOrigin): AbstractConfigObject

    Permalink
    Attributes
    protected
  9. abstract def replaceChild(child: AbstractConfigValue, replacement: AbstractConfigValue): AbstractConfigValue

    Permalink

    Replace a child of this value.

    Replace a child of this value. CAUTION if replacement is null, delete the child, which may also delete the parent, or make the parent into a non-container.

    Definition Classes
    Container
  10. abstract def size(): Int

    Permalink
    Definition Classes
    Map
  11. abstract def unwrapped: Map[String, AnyRef]

    Permalink

    Recursively unwraps the object, returning a map from String to whatever plain Java values are unwrapped from the object's values.

    Recursively unwraps the object, returning a map from String to whatever plain Java values are unwrapped from the object's values.

    returns

    a java.util.Map containing plain Java objects

    Definition Classes
    ConfigObjectConfigValue
  12. abstract def values(): Collection[ConfigValue]

    Permalink
    Definition Classes
    Map
  13. abstract def withOnlyKey(key: String): AbstractConfigObject

    Permalink

    Clone the object with only the given key (and its children) retained; all sibling keys are removed.

    Clone the object with only the given key (and its children) retained; all sibling keys are removed.

    key

    key to keep

    returns

    a copy of the object minus all keys except the one specified

    Definition Classes
    AbstractConfigObjectConfigObject
  14. abstract def withValue(key: String, value: ConfigValue): AbstractConfigObject

    Permalink

    Returns a ConfigObject based on this one, but with the given key set to the given value.

    Returns a ConfigObject based on this one, but with the given key set to the given value. Does not modify this instance (since it's immutable). If the key already has a value, that value is replaced. To remove a value, use ConfigObject#withoutKey.

    key

    key to add

    value

    value at the new key

    returns

    the new instance with the new map entry

    Definition Classes
    AbstractConfigObjectConfigObject
  15. abstract def withoutKey(key: String): AbstractConfigObject

    Permalink

    Clone the object with the given key removed.

    Clone the object with the given key removed.

    key

    key to remove

    returns

    a copy of the object minus the specified key

    Definition Classes
    AbstractConfigObjectConfigObject

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val _origin: ConfigOrigin

    Permalink
    Definition Classes
    AbstractConfigValue
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def atKey(key: String): SimpleConfig

    Permalink

    Places the value inside a Config at the given key.

    Places the value inside a Config at the given key. See also ConfigValue#atPath.

    key

    key to store this value at.

    returns

    a Config instance containing this value at the given key.

    Definition Classes
    AbstractConfigValueConfigValue
  7. def atPath(pathExpression: String): SimpleConfig

    Permalink

    Places the value inside a Config at the given path.

    Places the value inside a Config at the given path. See also ConfigValue#atKey.

    returns

    a Config instance containing this value at the given path.

    Definition Classes
    AbstractConfigValueConfigValue
  8. def canEqual(other: Any): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractConfigValue
  9. def clear(): Unit

    Permalink
    Definition Classes
    AbstractConfigObject → Map
  10. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def compute(arg0: String, arg1: BiFunction[_ >: String, _ >: ConfigValue, _ <: ConfigValue]): ConfigValue

    Permalink
    Definition Classes
    Map
  12. def computeIfAbsent(arg0: String, arg1: Function[_ >: String, _ <: ConfigValue]): ConfigValue

    Permalink
    Definition Classes
    Map
  13. def computeIfPresent(arg0: String, arg1: BiFunction[_ >: String, _ >: ConfigValue, _ <: ConfigValue]): ConfigValue

    Permalink
    Definition Classes
    Map
  14. def constructDelayedMerge(origin: ConfigOrigin, stack: List[AbstractConfigValue]): ConfigDelayedMergeObject

    Permalink
  15. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  16. def equals(other: Any): Boolean

    Permalink
    Definition Classes
    AbstractConfigValue → AnyRef → Any
  17. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. def forEach(arg0: BiConsumer[_ >: String, _ >: ConfigValue]): Unit

    Permalink
    Definition Classes
    Map
  19. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  20. def getOrDefault(arg0: Any, arg1: ConfigValue): ConfigValue

    Permalink
    Definition Classes
    Map
  21. def hashCode(): Int

    Permalink
    Definition Classes
    AbstractConfigValue → AnyRef → Any
  22. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  23. def merge(arg0: String, arg1: ConfigValue, arg2: BiFunction[_ >: ConfigValue, _ >: ConfigValue, _ <: ConfigValue]): ConfigValue

    Permalink
    Definition Classes
    Map
  24. def mergedWithNonObject(fallback: AbstractConfigValue): AbstractConfigValue

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractConfigValue
  25. final def mergedWithNonObject(stack: Collection[AbstractConfigValue], fallback: AbstractConfigValue): AbstractConfigValue

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractConfigValue
  26. def mergedWithObject(fallback: AbstractConfigObject): AbstractConfigObject

    Permalink
  27. final def mergedWithObject(stack: Collection[AbstractConfigValue], fallback: AbstractConfigObject): AbstractConfigValue

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractConfigValue
  28. def mergedWithTheUnmergeable(fallback: Unmergeable): AbstractConfigValue

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractConfigValue
  29. final def mergedWithTheUnmergeable(stack: Collection[AbstractConfigValue], fallback: Unmergeable): AbstractConfigValue

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractConfigValue
  30. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  31. def newCopy(origin: ConfigOrigin): AbstractConfigObject

    Permalink
  32. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  33. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  34. def origin: SimpleConfigOrigin

    Permalink

    The origin of the value (file, line number, etc.), for debugging and error messages.

    The origin of the value (file, line number, etc.), for debugging and error messages.

    returns

    where the value came from

    Definition Classes
    AbstractConfigValueConfigValue
  35. def put(arg0: String, arg1: ConfigValue): ConfigValue

    Permalink
    Definition Classes
    AbstractConfigObject → Map
  36. def putAll(arg0: Map[_ <: String, _ <: ConfigValue]): Unit

    Permalink
    Definition Classes
    AbstractConfigObject → Map
  37. def putIfAbsent(arg0: String, arg1: ConfigValue): ConfigValue

    Permalink
    Definition Classes
    Map
  38. def relativized(prefix: Path): AbstractConfigObject

    Permalink

    This is used when including one file in another; the included file is relativized to the path it's included into in the parent file.

    This is used when including one file in another; the included file is relativized to the path it's included into in the parent file. The point is that if you include a file at foo.bar in the parent, and the included file as a substitution ${a.b.c}, the included substitution now needs to be ${foo.bar.a.b.c} because we resolve substitutions globally only after parsing everything.

    returns

    value relativized to the given path or the same value if nothing to do

    Definition Classes
    AbstractConfigObjectAbstractConfigValue
  39. def remove(arg0: Any): ConfigValue

    Permalink
    Definition Classes
    AbstractConfigObject → Map
  40. def remove(arg0: Any, arg1: Any): Boolean

    Permalink
    Definition Classes
    Map
  41. final def render(options: ConfigRenderOptions): String

    Permalink

    Renders the config value to a string, using the provided options.

    Renders the config value to a string, using the provided options.

    If the config value has not been resolved (see Config.resolve()]]), it's possible that it can't be rendered as valid HOCON. In that case the rendering should still be useful for debugging but you might not be able to parse it. If the value has been resolved, it will always be parseable.

    If the config value has been resolved and the options disable all HOCON-specific features (such as comments), the rendering will be valid JSON. If you enable HOCON-only features such as comments, the rendering will not be valid JSON.

    options

    the rendering options

    returns

    the rendered value

    Definition Classes
    AbstractConfigValueConfigValue
  42. final def render: String

    Permalink

    Renders the config value as a HOCON string.

    Renders the config value as a HOCON string. This method is primarily intended for debugging, so it tries to add helpful comments and whitespace.

    If the config value has not been resolved (see Config.resolve()), it's possible that it can't be rendered as valid HOCON. In that case the rendering should still be useful for debugging but you might not be able to parse it. If the value has been resolved, it will always be parseable.

    This method is equivalent to render(ConfigRenderOptions.defaults()).

    returns

    the rendered value

    Definition Classes
    AbstractConfigValueConfigValue
  43. def render(sb: StringBuilder, indent: Int, atRoot: Boolean, options: ConfigRenderOptions): Unit

    Permalink
    Definition Classes
    AbstractConfigValue
  44. def replace(arg0: String, arg1: ConfigValue): ConfigValue

    Permalink
    Definition Classes
    Map
  45. def replace(arg0: String, arg1: ConfigValue, arg2: ConfigValue): Boolean

    Permalink
    Definition Classes
    Map
  46. def replaceAll(arg0: BiFunction[_ >: String, _ >: ConfigValue, _ <: ConfigValue]): Unit

    Permalink
    Definition Classes
    Map
  47. final def requireNotIgnoringFallbacks(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractConfigValue
  48. def resolveSubstitutions(context: ResolveContext, source: ResolveSource): ResolveResult[_ <: AbstractConfigObject]

    Permalink

    Called only by ResolveContext.resolve().

    Called only by ResolveContext.resolve().

    context

    state of the current resolve

    source

    where to look up values

    returns

    a new value if there were changes, or this if no changes

    Definition Classes
    AbstractConfigObjectAbstractConfigValue
  49. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  50. def toConfig: SimpleConfig

    Permalink

    Converts this object to a Config instance, enabling you to use path expressions to find values in the object.

    Converts this object to a Config instance, enabling you to use path expressions to find values in the object. This is a constant-time operation (it is not proportional to the size of the object).

    returns

    a Config with this object as its root

    Definition Classes
    AbstractConfigObjectConfigObject
  51. def toFallbackValue: AbstractConfigObject

    Permalink
  52. def toString(): String

    Permalink
    Definition Classes
    AbstractConfigValue → AnyRef → Any
  53. def valueType: ConfigValueType

    Permalink

    The ConfigValueType of the value; matches the JSON type schema.

    The ConfigValueType of the value; matches the JSON type schema.

    returns

    value's type

    Definition Classes
    AbstractConfigObjectConfigValue
  54. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  55. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  56. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  57. def withFallback(mergeable: ConfigMergeable): AbstractConfigObject

    Permalink

    Returns a new value computed by merging this value with another, with keys in this value "winning" over the other one.

    Returns a new value computed by merging this value with another, with keys in this value "winning" over the other one.

    This associative operation may be used to combine configurations from multiple sources (such as multiple configuration files).

    The semantics of merging are described in the spec for HOCON. Merging typically occurs when either the same object is created twice in the same file, or two config files are both loaded. For example:

    foo = { a: 42 }
    foo = { b: 43 }

    Here, the two objects are merged as if you had written:

    foo = { a: 42, b: 43 }

    Only ConfigObject and Config instances do anything in this method (they need to merge the fallback keys into themselves). All other values just return the original value, since they automatically override any fallback. This means that objects do not merge "across" non-objects; if you write object.withFallback(nonObject).withFallback(otherObject), then otherObjectwill simply be ignored. This is an intentional part of how merging works, because non-objects such as strings and integers replace (rather than merging with) any prior value:

    foo = { a: 42 }
    foo = 10

    Here, the number 10 "wins" and the value of foo would be simply 10. Again, for details see the spec.

    returns

    a new object (or the original one, if the fallback doesn't get used)

    Definition Classes
    AbstractConfigObjectConfigObjectAbstractConfigValueConfigValueConfigMergeable
  58. def withFallbacksIgnored(): AbstractConfigValue

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractConfigValue
  59. def withOrigin(origin: ConfigOrigin): AbstractConfigObject

    Permalink

    Returns a ConfigValue based on this one, but with the given origin.

    Returns a ConfigValue based on this one, but with the given origin. This is useful when you are parsing a new format of file or setting comments for a single ConfigValue.

    origin

    the origin set on the returned value

    returns

    the new ConfigValue with the given origin

    Definition Classes
    AbstractConfigObjectConfigObjectAbstractConfigValueConfigValue
    Since

    1.3.0

Inherited from Container

Inherited from ConfigObject

Inherited from Map[String, ConfigValue]

Inherited from AbstractConfigValue

Inherited from MergeableValue

Inherited from ConfigValue

Inherited from ConfigMergeable

Inherited from AnyRef

Inherited from Any

Ungrouped