Package org.eclipse.rdf4j.rio
Class RioConfig
- java.lang.Object
-
- org.eclipse.rdf4j.rio.RioConfig
-
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
ParserConfig
,WriterConfig
public class RioConfig extends Object implements Serializable
Superclass forParserConfig
andWriterConfig
.A RioConfig is a container for several
RioSetting
objects, each of which has a default value. You can override the default value for aRioSetting
in one of two ways:- You can programmatically set its value using
set(RioSetting, Object)
- You can set a Java system property (e.g. by means of a
-D
jvm command line switch). The property name should corresponds to thekey
of the setting. Note that this method is not supported by every type ofRioSetting
: boolean values, strings, and numeric (long) values are supported, but more complex types are not
- Author:
- Peter Ansell
- See Also:
RioSetting
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected org.slf4j.Logger
log
protected ConcurrentMap<RioSetting<Object>,Object>
settings
A map containing mappings from settings to their values.protected ConcurrentMap<RioSetting<Object>,Object>
systemPropertyCache
A map containing mappings from settings to system properties that have been discovered since the last call touseDefaults()
.
-
Constructor Summary
Constructors Constructor Description RioConfig()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> T
get(RioSetting<T> setting)
Return the value for a givenRioSetting
or the default value if it has not been set.<T> boolean
isSet(RioSetting<T> setting)
Checks for whether aRioSetting
has been explicitly set by a user.<T> RioConfig
set(RioSetting<T> setting, T value)
Sets aRioSetting
to have a new value.RioConfig
useDefaults()
Resets all settings back to their default values.
-
-
-
Field Detail
-
settings
protected final ConcurrentMap<RioSetting<Object>,Object> settings
A map containing mappings from settings to their values.
-
systemPropertyCache
protected final ConcurrentMap<RioSetting<Object>,Object> systemPropertyCache
A map containing mappings from settings to system properties that have been discovered since the last call touseDefaults()
.
-
log
protected final org.slf4j.Logger log
-
-
Method Detail
-
get
public <T> T get(RioSetting<T> setting)
Return the value for a givenRioSetting
or the default value if it has not been set.- Parameters:
setting
- TheRioSetting
to fetch a value for.- Returns:
- The value for the parser setting, or the default value if it is not set.
-
set
public <T> RioConfig set(RioSetting<T> setting, T value)
Sets aRioSetting
to have a new value. If the value is null, the parser setting is removed and the default will be used instead.- Parameters:
setting
- The setting to set a new value for.value
- The value for the parser setting, or null to reset the parser setting to use the default value.- Returns:
- Either a copy of this config, if it is immutable, or this object, to allow chaining of method calls.
-
isSet
public <T> boolean isSet(RioSetting<T> setting)
Checks for whether aRioSetting
has been explicitly set by a user.A setting can be set via
set(RioSetting, Object)
, or via use of a system property.- Parameters:
setting
- The setting to check for.- Returns:
- True if the setting has been explicitly set, or false otherwise.
-
useDefaults
public RioConfig useDefaults()
Resets all settings back to their default values.- Returns:
- Either a copy of this config, if it is immutable, or this object, to allow chaining of method calls.
-
-