Package org.refcodes.configuration
Class PolyglotProperties
- java.lang.Object
-
- org.refcodes.configuration.AbstractPropertiesDecorator<T>
-
- org.refcodes.configuration.AbstractResourcePropertiesDecorator<ResourceProperties>
-
- org.refcodes.configuration.PolyglotProperties
-
- All Implemented Interfaces:
Properties
,ResourceProperties
,org.refcodes.mixin.DelimiterAccessor
,org.refcodes.mixin.Dumpable
,org.refcodes.mixin.TypeAccessor<java.lang.String>
,org.refcodes.structure.CanonicalMap
,org.refcodes.structure.Containable
,org.refcodes.structure.Dictionary<java.lang.String,T>
,org.refcodes.structure.Keys<java.lang.String,T>
,org.refcodes.structure.PathMap<java.lang.String>
,org.refcodes.structure.PropertiesAccessorMixin
public class PolyglotProperties extends AbstractResourcePropertiesDecorator<ResourceProperties> implements ResourceProperties
Implementation of theResourceProperties
interface with support of so called "PolyglotProperties
" (or just "properties"). ForPolyglotProperties
, see "https://en.wikipedia.org/wiki/.properties".
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
PolyglotProperties.PolyglotPropertiesFactory
ThePolyglotProperties.PolyglotPropertiesFactory
is a meta factory using a collection ofResourcePropertiesFactory
instances to deliverResourceProperties
instances.-
Nested classes/interfaces inherited from interface org.refcodes.structure.CanonicalMap
org.refcodes.structure.CanonicalMap.CanonicalMapBuilder, org.refcodes.structure.CanonicalMap.MutableCanonicalMap
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.DelimiterAccessor
org.refcodes.mixin.DelimiterAccessor.DelimiterBuilder<B extends org.refcodes.mixin.DelimiterAccessor.DelimiterBuilder<B>>, org.refcodes.mixin.DelimiterAccessor.DelimiterMutator, org.refcodes.mixin.DelimiterAccessor.DelimiterProperty
-
Nested classes/interfaces inherited from interface org.refcodes.structure.Dictionary
org.refcodes.structure.Dictionary.MutableDictionary<K extends java.lang.Object,V extends java.lang.Object>
-
Nested classes/interfaces inherited from interface org.refcodes.structure.Keys
org.refcodes.structure.Keys.MutableKeys<K extends java.lang.Object,V extends java.lang.Object>, org.refcodes.structure.Keys.MutableValues<K extends java.lang.Object,V extends java.lang.Object>
-
Nested classes/interfaces inherited from interface org.refcodes.structure.PathMap
org.refcodes.structure.PathMap.MutablePathMap<T extends java.lang.Object>, org.refcodes.structure.PathMap.PathMapBuilder<T extends java.lang.Object>
-
Nested classes/interfaces inherited from interface org.refcodes.configuration.Properties
Properties.MutableProperties, Properties.PropertiesBuilder
-
Nested classes/interfaces inherited from interface org.refcodes.structure.PropertiesAccessorMixin
org.refcodes.structure.PropertiesAccessorMixin.PropertiesBuilderMixin<T extends java.lang.Object>, org.refcodes.structure.PropertiesAccessorMixin.PropertiesMixin, org.refcodes.structure.PropertiesAccessorMixin.PropertiesMutatorMixin
-
Nested classes/interfaces inherited from interface org.refcodes.configuration.ResourceProperties
ResourceProperties.MutableResoureProperties, ResourceProperties.ResourcePropertiesBuilder
-
-
Field Summary
-
Fields inherited from interface org.refcodes.configuration.Properties
DEFAULT_COMMENT
-
Fields inherited from interface org.refcodes.configuration.ResourceProperties
VALUE_ATTRIBUTES
-
-
Constructor Summary
Constructors Constructor Description PolyglotProperties(java.io.File aFile)
Loads thePolyglotProperties
from the givenFile
.PolyglotProperties(java.io.File aFile, char... aDelimiters)
Loads thePolyglotProperties
from the givenFile
.PolyglotProperties(java.io.File aFile, org.refcodes.runtime.ConfigLocator aConfigLocator)
Loads or seeks thePolyglotProperties
from the givenFile
.PolyglotProperties(java.io.File aFile, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters)
Loads or seeks thePolyglotProperties
from the givenFile
.PolyglotProperties(java.io.InputStream aInputStream)
Reads thePolyglotProperties
from the givenInputStream
.PolyglotProperties(java.io.InputStream aInputStream, char... aDelimiters)
Reads thePolyglotProperties
from the givenInputStream
.PolyglotProperties(java.lang.Class<?> aResourceClass, java.lang.String aFilePath)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(java.lang.Class<?> aResourceClass, java.lang.String aFilePath, char... aDelimiters)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(java.lang.Class<?> aResourceClass, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(java.lang.Class<?> aResourceClass, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(java.lang.Object aObj)
Create aPolyglotProperties
instance containing the elements as ofPathMap.MutablePathMap.insert(Object)
using the default path delimiter "/" (Delimiter.PATH
) for the path declarations: "Inspects the given object and adds all elements found in the given object.PolyglotProperties(java.lang.String aFilePath)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(java.lang.String aFilePath, char... aDelimiters)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(java.net.URL aUrl)
Loads thePolyglotProperties
from the givenURL
.PolyglotProperties(java.net.URL aUrl, char... aDelimiters)
Loads thePolyglotProperties
from the givenURL
.PolyglotProperties(java.util.Map<?,?> aProperties)
Create aPolyglotProperties
instance containing the elements of the providedMap
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarationsPolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.File aFile)
Loads thePolyglotProperties
from the givenFile
.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.File aFile, char... aDelimiters)
Loads thePolyglotProperties
from the givenFile
.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.File aFile, org.refcodes.runtime.ConfigLocator aConfigLocator)
Loads or seeks thePolyglotProperties
from the givenFile
.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.File aFile, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters)
Loads or seeks thePolyglotProperties
from the givenFile
.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.InputStream aInputStream)
Reads thePolyglotProperties
from the givenInputStream
.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.InputStream aInputStream, char... aDelimiters)
Reads thePolyglotProperties
from the givenInputStream
.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Class<?> aResourceClass, java.lang.String aFilePath)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Class<?> aResourceClass, java.lang.String aFilePath, char... aDelimiters)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Class<?> aResourceClass, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Class<?> aResourceClass, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Object aObj)
Create aPolyglotProperties
instance containing the elements as ofPathMap.MutablePathMap.insert(Object)
using the default path delimiter "/" (Delimiter.PATH
) for the path declarations: "Inspects the given object and adds all elements found in the given object.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.String aFilePath)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.String aFilePath, char... aDelimiters)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters)
Loads thePolyglotProperties
from the given file's path.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.net.URL aUrl)
Loads thePolyglotProperties
from the givenURL
.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.net.URL aUrl, char... aDelimiters)
Loads thePolyglotProperties
from the givenURL
.PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.util.Map<?,?> aProperties)
Create aPolyglotProperties
instance containing the elements of the providedMap
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarationsPolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, Properties aProperties)
Create aPolyglotProperties
instance containing the elements of the providedProperties
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarationsPolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, Properties.PropertiesBuilder aProperties)
Create aPolyglotProperties
instance containing the elements of the providedProperties.PropertiesBuilder
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarationsPolyglotProperties(Properties aProperties)
Create aPolyglotProperties
instance containing the elements of the providedProperties
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarationsPolyglotProperties(Properties.PropertiesBuilder aProperties)
Create aPolyglotProperties
instance containing the elements of the providedProperties.PropertiesBuilder
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarations
-
Method Summary
-
Methods inherited from class org.refcodes.configuration.AbstractPropertiesDecorator
containsKey, get, getDelimiter, getProperties, isEmpty, keySet, retrieveFrom, retrieveTo, setProperties, size, toDataStructure, values
-
Methods inherited from class org.refcodes.configuration.AbstractResourcePropertiesDecorator
reload, reload, toSerialized, toSerialized
-
Methods inherited from interface org.refcodes.structure.CanonicalMap
getBoolean, getBoolean, getBooleanOr, getBooleanOr, getByte, getByte, getByteOr, getByteOr, getCharacter, getCharacter, getCharacterOr, getCharacterOr, getDouble, getDouble, getDoubleOr, getDoubleOr, getFloat, getFloat, getFloatOr, getFloatOr, getInteger, getInteger, getIntegerOr, getIntegerOr, getLong, getLong, getLongOr, getLongOr, getShort, getShort, getShortOr, getShortOr, toInstance, toInstance, toMap, toProperties, toType, toType
-
Methods inherited from interface org.refcodes.structure.Keys
containsKey, get, getOr, keySet, use, values
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.refcodes.structure.PathMap
children, children, children, children, children, children, containsKey, containsKey, containsKey, dirs, dirs, dirs, dirs, dirs, dirs, findPaths, fromExternalPath, get, get, get, getArray, getArray, getArray, getArray, getArray, getArrayIndexes, getArrayIndexes, getArrayIndexes, getArrayIndexes, getArrayIndexes, getDirAt, getDirAt, getDirAt, getDirAt, getDirIndexes, getDirIndexes, getDirIndexes, getDirIndexes, getDirIndexes, getRootPath, getValueAt, getValueAt, getValueAt, getValueAt, getValueAt, getValueAt, hasChildren, hasChildren, hasChildren, hasChildren, hasChildren, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasParentPath, hasPath, hasPath, hasPath, hasPath, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, isArray, isArray, isArray, isArray, isArray, isArray, isArrayIndex, isArrayIndex, isArrayIndex, isArrayIndex, isArrayIndex, isArrayIndex, isChild, isChild, isChild, isChild, isDir, isDir, isDir, isDir, isDir, isDirIndex, isDirIndex, isDirIndex, isDirIndex, isDirIndex, isLeaf, isLeaf, isLeaf, isLeaf, isLeaf, isRootPath, keySet, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, leaves, leaves, leaves, leaves, leaves, leaves, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, paths, paths, paths, paths, paths, paths, queryPaths, queryPaths, queryPaths, queryPaths, queryPaths, sortedKeys, toDataStructure, toDataStructure, toExternalPath, toLeaf, toMap, toNormalizedPath, toParentPath, toPath, toPath, toPath, toPathElements, toPathList, toPathStack, toPropertyPath
-
Methods inherited from interface org.refcodes.configuration.Properties
containsValue, getDelimiter, getDirAt, getDirAt, getType, query, query, query, query, queryBetween, queryBetween, queryBetween, queryBetween, queryBetween, queryFrom, queryFrom, queryFrom, queryFrom, queryFrom, queryTo, queryTo, queryTo, queryTo, queryTo, retrieveBetween, retrieveBetween, retrieveBetween, retrieveBetween, retrieveBetween, retrieveFrom, retrieveFrom, retrieveFrom, retrieveFrom, retrieveFrom, retrieveTo, retrieveTo, retrieveTo, retrieveTo, retrieveTo
-
Methods inherited from interface org.refcodes.structure.PropertiesAccessorMixin
asArray, asArray, asArray, asArray, asBooleanArray, asBooleanArray, asBooleanArray, asBooleanArray, asByteArray, asByteArray, asByteArray, asByteArray, asCharacterArray, asCharacterArray, asCharacterArray, asCharacterArray, asDoubleArray, asDoubleArray, asDoubleArray, asDoubleArray, asFloatArray, asFloatArray, asFloatArray, asFloatArray, asIntegerArray, asIntegerArray, asIntegerArray, asIntegerArray, asLongArray, asLongArray, asLongArray, asLongArray, asShortArray, asShortArray, asShortArray, asShortArray, getBoolean, getBoolean, getBooleanOr, getBooleanOr, getByte, getByte, getByteOr, getByteOr, getCharacter, getCharacter, getCharacterOr, getCharacterOr, getDouble, getDouble, getDoubleOr, getDoubleOr, getFloat, getFloat, getFloatOr, getFloatOr, getInteger, getInteger, getIntegerOr, getIntegerOr, getLong, getLong, getLongOr, getLongOr, getShort, getShort, getShortOr, getShortOr
-
Methods inherited from interface org.refcodes.configuration.ResourceProperties
reload, reload, toSerialized, toSerialized
-
-
-
-
Constructor Detail
-
PolyglotProperties
public PolyglotProperties(java.lang.Object aObj)
Create aPolyglotProperties
instance containing the elements as ofPathMap.MutablePathMap.insert(Object)
using the default path delimiter "/" (Delimiter.PATH
) for the path declarations: "Inspects the given object and adds all elements found in the given object. Elements of typeMap
,Collection
and arrays are identified and handled as of their type: The path for each value in aMap
is appended with its according key. The path for each value in aCollection
or array is appended with its according index of occurrence (in case of aList
or an array, its actual index). In case of reflection, the path for each member is appended with its according mamber's name. All elements (e.g. the members and values) are inspected recursively which results in the according paths of the terminating values."- Parameters:
aObj
- The object from which the elements are to be added.
-
PolyglotProperties
public PolyglotProperties(Properties aProperties)
Create aPolyglotProperties
instance containing the elements of the providedProperties
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarations- Parameters:
aProperties
- the properties to be added.
-
PolyglotProperties
public PolyglotProperties(Properties.PropertiesBuilder aProperties)
Create aPolyglotProperties
instance containing the elements of the providedProperties.PropertiesBuilder
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarations- Parameters:
aProperties
- the properties to be added.
-
PolyglotProperties
public PolyglotProperties(java.util.Map<?,?> aProperties)
Create aPolyglotProperties
instance containing the elements of the providedMap
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarations- Parameters:
aProperties
- the properties to be added.
-
PolyglotProperties
public PolyglotProperties(java.io.File aFile) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the givenFile
.- Parameters:
aFile
- TheFile
from which to load the properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.io.File aFile, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the givenFile
.- Parameters:
aFile
- TheFile
from which to load the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.io.File aFile, org.refcodes.runtime.ConfigLocator aConfigLocator) throws java.io.IOException, java.text.ParseException
Loads or seeks thePolyglotProperties
from the givenFile
. A providedConfigLocator
describes the locations to additional crawl for the desired file.- Parameters:
aFile
- TheFile
from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.io.File aFile, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads or seeks thePolyglotProperties
from the givenFile
. A providedConfigLocator
describes the locations to additional crawl for the desired file.- Parameters:
aFile
- TheFile
from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aDelimiters
- The path delimiters to be used when parsing the source's properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.lang.String aFilePath) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path.- Parameters:
aFilePath
- The path to the file from which to load the properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.lang.String aFilePath, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path.- Parameters:
aFilePath
- The path to the file from which to load the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.lang.Class<?> aResourceClass, java.lang.String aFilePath) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path.- Parameters:
aResourceClass
- The class which's class loader is to take care of loading the properties (from inside a JAR).aFilePath
- The file path of the class's resources from which to load the properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.lang.Class<?> aResourceClass, java.lang.String aFilePath, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path.- Parameters:
aResourceClass
- The class which's class loader is to take care of loading the properties (from inside a JAR).aFilePath
- The file path of the class's resources from which to load the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path. A providedConfigLocator
describes the locations to additional crawl for the desired file.- Parameters:
aFilePath
- The path to the file from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path. A providedConfigLocator
describes the locations to additional crawl for the desired file.- Parameters:
aFilePath
- The path to the file from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aDelimiters
- The path delimiters to be used when parsing the source's properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.lang.Class<?> aResourceClass, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path. A providedConfigLocator
describes the locations to additional crawl for the desired file. Finally (if nothing else succeeds) the properties are loaded by the provided class's class loader which takes care of loading the properties (in case the file path is a relative path, also the absolute path with a prefixed path delimiter "/" is probed).- Parameters:
aResourceClass
- The class which's class loader is to take care of loading the properties (from inside a JAR).aFilePath
- The file path of the class's resources from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.lang.Class<?> aResourceClass, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path. A providedConfigLocator
describes the locations to additional crawl for the desired file. Finally (if nothing else succeeds) the properties are loaded by the provided class's class loader which takes care of loading the properties (in case the file path is a relative path, also the absolute path with a prefixed path delimiter "/" is probed).- Parameters:
aResourceClass
- The class which's class loader is to take care of loading the properties (from inside a JAR).aFilePath
- The file path of the class's resources from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aDelimiters
- The path delimiters to be used when parsing the source's properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.net.URL aUrl) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the givenURL
.- Parameters:
aUrl
- TheURL
from which to read the properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.net.URL aUrl, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the givenURL
.- Parameters:
aUrl
- TheURL
from which to read the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.io.InputStream aInputStream) throws java.io.IOException, java.text.ParseException
Reads thePolyglotProperties
from the givenInputStream
.- Parameters:
aInputStream
- TheInputStream
from which to read the properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(java.io.InputStream aInputStream, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Reads thePolyglotProperties
from the givenInputStream
.- Parameters:
aInputStream
- TheInputStream
from which to read the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Object aObj)
Create aPolyglotProperties
instance containing the elements as ofPathMap.MutablePathMap.insert(Object)
using the default path delimiter "/" (Delimiter.PATH
) for the path declarations: "Inspects the given object and adds all elements found in the given object. Elements of typeMap
,Collection
and arrays are identified and handled as of their type: The path for each value in aMap
is appended with its according key. The path for each value in aCollection
or array is appended with its according index of occurrence (in case of aList
or an array, its actual index). In case of reflection, the path for each member is appended with its according mamber's name. All elements (e.g. the members and values) are inspected recursively which results in the according paths of the terminating values."- Parameters:
aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.aObj
- The object from which the elements are to be added.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, Properties aProperties)
Create aPolyglotProperties
instance containing the elements of the providedProperties
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarations- Parameters:
aProperties
- the properties to be added.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, Properties.PropertiesBuilder aProperties)
Create aPolyglotProperties
instance containing the elements of the providedProperties.PropertiesBuilder
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarations- Parameters:
aProperties
- the properties to be added.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.util.Map<?,?> aProperties)
Create aPolyglotProperties
instance containing the elements of the providedMap
instance using the default path delimiter "/" (Delimiter.PATH
) for the path declarations- Parameters:
aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.aProperties
- the properties to be added.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.File aFile) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the givenFile
.- Parameters:
aFile
- TheFile
from which to load the properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.File aFile, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the givenFile
.- Parameters:
aFile
- TheFile
from which to load the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.File aFile, org.refcodes.runtime.ConfigLocator aConfigLocator) throws java.io.IOException, java.text.ParseException
Loads or seeks thePolyglotProperties
from the givenFile
. A providedConfigLocator
describes the locations to additional crawl for the desired file.- Parameters:
aFile
- TheFile
from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.File aFile, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads or seeks thePolyglotProperties
from the givenFile
. A providedConfigLocator
describes the locations to additional crawl for the desired file.- Parameters:
aFile
- TheFile
from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aDelimiters
- The path delimiters to be used when parsing the source's properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.String aFilePath) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path.- Parameters:
aFilePath
- The path to the file from which to load the properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.String aFilePath, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path.- Parameters:
aFilePath
- The path to the file from which to load the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Class<?> aResourceClass, java.lang.String aFilePath) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path.- Parameters:
aResourceClass
- The class which's class loader is to take care of loading the properties (from inside a JAR).aFilePath
- The file path of the class's resources from which to load the properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Class<?> aResourceClass, java.lang.String aFilePath, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path.- Parameters:
aResourceClass
- The class which's class loader is to take care of loading the properties (from inside a JAR).aFilePath
- The file path of the class's resources from which to load the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path. A providedConfigLocator
describes the locations to additional crawl for the desired file.- Parameters:
aFilePath
- The path to the file from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path. A providedConfigLocator
describes the locations to additional crawl for the desired file.- Parameters:
aFilePath
- The path to the file from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aDelimiters
- The path delimiters to be used when parsing the source's properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Class<?> aResourceClass, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path. A providedConfigLocator
describes the locations to additional crawl for the desired file. Finally (if nothing else succeeds) the properties are loaded by the provided class's class loader which takes care of loading the properties (in case the file path is a relative path, also the absolute path with a prefixed path delimiter "/" is probed).- Parameters:
aResourceClass
- The class which's class loader is to take care of loading the properties (from inside a JAR).aFilePath
- The file path of the class's resources from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.lang.Class<?> aResourceClass, java.lang.String aFilePath, org.refcodes.runtime.ConfigLocator aConfigLocator, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the given file's path. A providedConfigLocator
describes the locations to additional crawl for the desired file. Finally (if nothing else succeeds) the properties are loaded by the provided class's class loader which takes care of loading the properties (in case the file path is a relative path, also the absolute path with a prefixed path delimiter "/" is probed).- Parameters:
aResourceClass
- The class which's class loader is to take care of loading the properties (from inside a JAR).aFilePath
- The file path of the class's resources from which to load the properties.aConfigLocator
- TheConfigLocator
describes the locations to additional crawl for the desired file.aDelimiters
- The path delimiters to be used when parsing the source's properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.net.URL aUrl) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the givenURL
.- Parameters:
aUrl
- TheURL
from which to read the properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.net.URL aUrl, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Loads thePolyglotProperties
from the givenURL
.- Parameters:
aUrl
- TheURL
from which to read the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.InputStream aInputStream) throws java.io.IOException, java.text.ParseException
Reads thePolyglotProperties
from the givenInputStream
.- Parameters:
aInputStream
- TheInputStream
from which to read the properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
PolyglotProperties
public PolyglotProperties(PolyglotProperties.PolyglotPropertiesFactory aPropertiesFactory, java.io.InputStream aInputStream, char... aDelimiters) throws java.io.IOException, java.text.ParseException
Reads thePolyglotProperties
from the givenInputStream
.- Parameters:
aInputStream
- TheInputStream
from which to read the properties.aDelimiters
- The path delimiters to be used when parsing the source's properties.aPropertiesFactory
- The factory to use when constructingResourceProperties
instances.- Throws:
java.io.IOException
- thrown in case accessing or processing the properties file failed.java.text.ParseException
- Signals that an error has been reached unexpectedly while parsing the data to be loaded.
-
-