Package com.typesafe.config

## Class ConfigParseOptions

- java.lang.Object
- - com.typesafe.config.ConfigParseOptions

    public final class ConfigParseOptions
    extends java.lang.Object

A set of options related to parsing.

This object is immutable, so the "setters" return a new object.

Here is an example of creating a custom `ConfigParseOptions`:

         ConfigParseOptions options = ConfigParseOptions.defaults()
             .setSyntax(ConfigSyntax.JSON)
             .setAllowMissing(false)

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`ConfigParseOptions` `appendIncluder​(ConfigIncluder includer)` Appends a `ConfigIncluder` which customizes how includes are handled.
`static ConfigParseOptions` `defaults()` Gets an instance of `ConfigParseOptions` with all fields set to the default values.
`boolean` `getAllowMissing()` Gets the current "allow missing" flag.
`java.lang.ClassLoader` `getClassLoader()` Get the class loader; never returns `null`, if the class loader was unset, returns `Thread.currentThread().getContextClassLoader()`.
`ConfigIncluder` `getIncluder()` Gets the current includer (will be null for the default includer).
`java.lang.String` `getOriginDescription()` Gets the current origin description, which may be null for "automatic".
`ConfigSyntax` `getSyntax()` Gets the current syntax option, which may be null for "any".
`ConfigParseOptions` `prependIncluder​(ConfigIncluder includer)` Prepends a `ConfigIncluder` which customizes how includes are handled.
`ConfigParseOptions` `setAllowMissing​(boolean allowMissing)` Set to false to throw an exception if the item being parsed (for example a file) is missing.
`ConfigParseOptions` `setClassLoader​(java.lang.ClassLoader loader)` Set the class loader.
`ConfigParseOptions` `setIncluder​(ConfigIncluder includer)` Set a `ConfigIncluder` which customizes how includes are handled.
`ConfigParseOptions` `setOriginDescription​(java.lang.String originDescription)` Set a description for the thing being parsed.
`ConfigParseOptions` `setSyntax​(ConfigSyntax syntax)` Set the file format.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### defaults

    public static ConfigParseOptions defaults()

Gets an instance of `ConfigParseOptions` with all fields set to the default values. Start with this instance and make any changes you need.

Returns:
  the default parse options

#### setSyntax

    public ConfigParseOptions setSyntax​(ConfigSyntax syntax)

Set the file format. If set to null, try to guess from any available filename extension; if guessing fails, assume `ConfigSyntax.CONF`.

Parameters:
  `syntax` - a syntax or `null` for best guess
Returns:
  options with the syntax set

#### getSyntax

    public ConfigSyntax getSyntax()

Gets the current syntax option, which may be null for "any".

Returns:
  the current syntax or null

#### setOriginDescription

    public ConfigParseOptions setOriginDescription​(java.lang.String originDescription)

Set a description for the thing being parsed. In most cases this will be set up for you to something like the filename, but if you provide just an input stream you might want to improve on it. Set to null to allow the library to come up with something automatically. This description is the basis for the `ConfigOrigin` of the parsed values.

Parameters:
  `originDescription` - description to put in the `ConfigOrigin`
Returns:
  options with the origin description set

#### getOriginDescription

    public java.lang.String getOriginDescription()

Gets the current origin description, which may be null for "automatic".

Returns:
  the current origin description or null

#### setAllowMissing

    public ConfigParseOptions setAllowMissing​(boolean allowMissing)

Set to false to throw an exception if the item being parsed (for example a file) is missing. Set to true to just return an empty document in that case. Note that this setting applies on only to fetching the root document, it has no effect on any nested includes.

Parameters:
  `allowMissing` - true to silently ignore missing item
Returns:
  options with the "allow missing" flag set

#### getAllowMissing

    public boolean getAllowMissing()

Gets the current "allow missing" flag.

Returns:
  whether we allow missing files

#### setIncluder

    public ConfigParseOptions setIncluder​(ConfigIncluder includer)

Set a `ConfigIncluder` which customizes how includes are handled. null means to use the default includer.

Parameters:
  `includer` - the includer to use or null for default
Returns:
  new version of the parse options with different includer

#### prependIncluder

    public ConfigParseOptions prependIncluder​(ConfigIncluder includer)

Prepends a `ConfigIncluder` which customizes how includes are handled. To prepend your includer, the library calls `ConfigIncluder.withFallback(com.typesafe.config.ConfigIncluder)` on your includer to append the existing includer to it.

Parameters:
  `includer` - the includer to prepend (may not be null)
Returns:
  new version of the parse options with different includer

#### appendIncluder

    public ConfigParseOptions appendIncluder​(ConfigIncluder includer)

Appends a `ConfigIncluder` which customizes how includes are handled. To append, the library calls `ConfigIncluder.withFallback(com.typesafe.config.ConfigIncluder)` on the existing includer.

Parameters:
  `includer` - the includer to append (may not be null)
Returns:
  new version of the parse options with different includer

#### getIncluder

    public ConfigIncluder getIncluder()

Gets the current includer (will be null for the default includer).

Returns:
  current includer or null

#### setClassLoader

    public ConfigParseOptions setClassLoader​(java.lang.ClassLoader loader)

Set the class loader. If set to null, `Thread.currentThread().getContextClassLoader()` will be used.

Parameters:
  `loader` - a class loader or `null` to use thread context class loader
Returns:
  options with the class loader set

#### getClassLoader

    public java.lang.ClassLoader getClassLoader()

Get the class loader; never returns `null`, if the class loader was unset, returns `Thread.currentThread().getContextClassLoader()`.

Returns:
  class loader to use