Class BaseConfiguration
- java.lang.Object
-
- org.apache.commons.configuration2.event.BaseEventSource
-
- org.apache.commons.configuration2.AbstractConfiguration
-
- org.apache.commons.configuration2.BaseConfiguration
-
- All Implemented Interfaces:
Cloneable,Configuration,EventSource,ImmutableConfiguration,SynchronizerSupport
- Direct Known Subclasses:
PropertiesConfiguration,XMLPropertiesConfiguration
public class BaseConfiguration extends AbstractConfiguration implements Cloneable
Basic configuration class. Stores the configuration data but does not provide any load or save functions. If you want to load your Configuration from a file use PropertiesConfiguration or XmlConfiguration. This class extends normal Java properties by adding the possibility to use the same key many times concatenating the value strings instead of overwriting them.
-
-
Constructor Summary
Constructors Constructor Description BaseConfiguration()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddPropertyDirect(String key, Object value)Adds a key/value pair to the map.protected voidclearInternal()Clears the whole configuration.protected voidclearPropertyDirect(String key)Clear a property in the configuration.Objectclone()Creates a copy of this object.protected booleancontainsKeyInternal(String key)check if the configuration contains the keyprotected Iterator<String>getKeysInternal()Get the list of the keys contained in the configuration repository.protected ObjectgetPropertyInternal(String key)Read property from underlying map.protected booleanisEmptyInternal()Check if the configuration is emptyprotected intsizeInternal()Actually calculates the size of this configuration.-
Methods inherited from class org.apache.commons.configuration2.AbstractConfiguration
addErrorLogListener, addProperty, addPropertyInternal, append, beginRead, beginWrite, clear, clearProperty, cloneInterpolator, containsKey, copy, endRead, endWrite, get, get, getArray, getArray, getBigDecimal, getBigDecimal, getBigInteger, getBigInteger, getBoolean, getBoolean, getBoolean, getByte, getByte, getByte, getCollection, getCollection, getConfigurationDecoder, getConversionHandler, getDouble, getDouble, getDouble, getDuration, getDuration, getEncodedString, getEncodedString, getFloat, getFloat, getFloat, getInt, getInt, getInteger, getInterpolator, getKeys, getKeys, getKeysInternal, getList, getList, getList, getList, getListDelimiterHandler, getLogger, getLong, getLong, getLong, getProperties, getProperties, getProperty, getShort, getShort, getShort, getString, getString, getStringArray, getSynchronizer, immutableSubset, initLogger, installInterpolator, interpolate, interpolate, interpolatedConfiguration, isEmpty, isScalarValue, isThrowExceptionOnMissing, lock, setConfigurationDecoder, setConversionHandler, setDefaultLookups, setInterpolator, setListDelimiterHandler, setLogger, setParentInterpolator, setPrefixLookups, setProperty, setPropertyInternal, setSynchronizer, setThrowExceptionOnMissing, size, subset, unlock
-
Methods inherited from class org.apache.commons.configuration2.event.BaseEventSource
addEventListener, clearErrorListeners, clearEventListeners, copyEventListeners, createErrorEvent, createEvent, fireError, fireEvent, getEventListenerRegistrations, getEventListeners, isDetailEvents, removeEventListener, setDetailEvents
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.commons.configuration2.ImmutableConfiguration
getEnum, getEnum
-
-
-
-
Constructor Detail
-
BaseConfiguration
public BaseConfiguration()
-
-
Method Detail
-
addPropertyDirect
protected void addPropertyDirect(String key, Object value)
Adds a key/value pair to the map. This routine does no magic morphing. It ensures the keylist is maintained- Specified by:
addPropertyDirectin classAbstractConfiguration- Parameters:
key- key to use for mappingvalue- object to store
-
getPropertyInternal
protected Object getPropertyInternal(String key)
Read property from underlying map.- Specified by:
getPropertyInternalin classAbstractConfiguration- Parameters:
key- key to use for mapping- Returns:
- object associated with the given configuration key.
-
isEmptyInternal
protected boolean isEmptyInternal()
Check if the configuration is empty- Specified by:
isEmptyInternalin classAbstractConfiguration- Returns:
trueif Configuration is empty,falseotherwise.
-
containsKeyInternal
protected boolean containsKeyInternal(String key)
check if the configuration contains the key- Specified by:
containsKeyInternalin classAbstractConfiguration- Parameters:
key- the configuration key- Returns:
trueif Configuration contain given key,falseotherwise.
-
clearPropertyDirect
protected void clearPropertyDirect(String key)
Clear a property in the configuration.- Specified by:
clearPropertyDirectin classAbstractConfiguration- Parameters:
key- the key to remove along with corresponding value.
-
clearInternal
protected void clearInternal()
Description copied from class:AbstractConfigurationClears the whole configuration. This method is called byclear()after some preparations have been made. This base implementation uses the iterator provided bygetKeys()to remove every single property. Subclasses should override this method if there is a more efficient way of clearing the configuration.- Overrides:
clearInternalin classAbstractConfiguration
-
sizeInternal
protected int sizeInternal()
Actually calculates the size of this configuration. This method is called bysize()with a read lock held. The base implementation provided here calculates the size based on the iterator returned bygetKeys(). Sub classes which can determine the size in a more efficient way should override this method. This implementation obtains the size directly from the map used as data store. So this is a rather efficient implementation.- Overrides:
sizeInternalin classAbstractConfiguration- Returns:
- the size of this configuration (i.e. the number of keys)
-
getKeysInternal
protected Iterator<String> getKeysInternal()
Get the list of the keys contained in the configuration repository.- Specified by:
getKeysInternalin classAbstractConfiguration- Returns:
- An Iterator.
-
clone
public Object clone()
Creates a copy of this object. This implementation will create a deep clone, i.e. the map that stores the properties is cloned, too. So changes performed at the copy won't affect the original and vice versa.- Overrides:
clonein classBaseEventSource- Returns:
- the copy
- Since:
- 1.3
-
-