public static class Config.Builder
extends java.lang.Object
| Constructor and Description |
|---|
Builder() |
| Modifier and Type | Method and Description |
|---|---|
IConfig |
anyOf(IConfig... sources) |
IConfig |
defaults() |
<T> T |
get(java.lang.Class<T> clazz)
Loads settings for specified interface.
|
Config.Builder |
substitute(IConfig substitution) |
Config.Builder |
substitute(java.util.Map<java.lang.String,java.lang.String> substitution) |
Config.Builder |
substituteEnv() |
Config.Builder |
substituteJvm() |
IMutableConfig |
track(java.lang.Class<?> clazz) |
IMutableConfig |
track(java.io.File file) |
IMutableConfig |
track(java.nio.file.Path file) |
IMutableConfig |
track(java.lang.String resourceName) |
IMutableConfig |
track(java.lang.String resourceName,
java.lang.ClassLoader classLoader) |
IConfig |
use(java.lang.Class<?> clazz)
Builds a config reader from .properties file which location is specified by annotations in the given class.
|
IConfig |
use(java.io.File file)
Builds a config reader from .properties file specified by File object.
|
IConfig |
use(java.nio.file.Path file)
Builds a config reader from .properties file specified by Path object.
|
IConfig |
use(java.lang.String resourceName)
Builds a config reader from .properties file located in class path resources.
|
IConfig |
use(org.xblackcat.sjpu.util.function.SupplierEx<java.io.InputStream,java.io.IOException> inputStreamSupplier)
Builds a config reader from .properties file located in class path resources.
|
IConfig |
use(java.net.URL url)
Builds a config reader from .properties file specified by url.
|
IConfig |
useEnv() |
IConfig |
useJvm() |
Config.Builder |
with(java.lang.String prefix,
java.util.function.UnaryOperator<java.lang.String> valueHandler)
Register a value processor.
|
public Config.Builder with(java.lang.String prefix, java.util.function.UnaryOperator<java.lang.String> valueHandler)
prefix - valueHandler - public Config.Builder substituteEnv()
public Config.Builder substituteJvm()
public Config.Builder substitute(java.util.Map<java.lang.String,java.lang.String> substitution)
public Config.Builder substitute(IConfig substitution)
public IConfig use(java.io.File file)
file - .properties file.public IConfig defaults()
public IConfig use(java.nio.file.Path file)
file - .properties file.public IConfig use(java.net.URL url)
url - url to .properties file.public IConfig use(java.lang.String resourceName)
resourceName - resource name.public IConfig use(org.xblackcat.sjpu.util.function.SupplierEx<java.io.InputStream,java.io.IOException> inputStreamSupplier)
inputStreamSupplier - input stream provider with all thepublic IConfig useEnv()
public IConfig useJvm()
public IConfig use(java.lang.Class<?> clazz) throws SettingsException
clazz - class annotated with @SettingsSource annotation.SettingsException - if interface methods are not annotated or interface is not annotated with
@SettingsSourcepublic <T> T get(java.lang.Class<T> clazz)
throws SettingsException
If specified class marked with Optional annotation a null value will be
returned in case when required resource is not exists.
T - target interface for holding settings.clazz - target interface class for holding settings.SettingsException - if interface methods are not annotated or interface is not annotated with
@SettingsSourcepublic IMutableConfig track(java.lang.Class<?> clazz) throws SettingsException, java.io.IOException, java.lang.UnsupportedOperationException
SettingsExceptionjava.io.IOExceptionjava.lang.UnsupportedOperationExceptionpublic IMutableConfig track(java.lang.String resourceName) throws java.io.IOException, java.lang.UnsupportedOperationException
java.io.IOExceptionjava.lang.UnsupportedOperationExceptionpublic IMutableConfig track(java.lang.String resourceName, java.lang.ClassLoader classLoader) throws java.io.IOException, java.lang.UnsupportedOperationException
java.io.IOExceptionjava.lang.UnsupportedOperationExceptionpublic IMutableConfig track(java.nio.file.Path file) throws java.io.IOException, java.lang.UnsupportedOperationException
java.io.IOExceptionjava.lang.UnsupportedOperationExceptionpublic IMutableConfig track(java.io.File file) throws java.io.IOException, java.lang.UnsupportedOperationException
java.io.IOExceptionjava.lang.UnsupportedOperationException