Type |
Changes |
By |
 |
Removed methods from ConfigurationConverter related to ExtendedProperties.
This class is no longer supported by recent versions of Commons
Collections. Fixes CONFIGURATION-591. |
oheger |
 |
Removed Serializable interface from all configuration implementations.
Some configuration classes declared this interface without being
actually serializable. Fixes CONFIGURATION-590. |
oheger |
 |
The name of the top-level package and the maven coordinates have been
changed to allow a coexistence of Commons Configuration 1.x with 2.0. Fixes CONFIGURATION-588. |
oheger |
 |
The event mechanism has been reworked. There is now a generic event
listener interface which can be used to receive notifications from
multiple types of event sources. Fixes CONFIGURATION-584. |
oheger |
 |
Fixed a StringIndexOutOfBoundsException in PropertiesConfigurationLayout
which was caused by lines containing only whitespace. Fixes CONFIGURATION-582. |
oheger |
 |
A migration guide has been created which supports when upgrading from
version 1.x to 2.0. Fixes CONFIGURATION-579. |
oheger |
 |
The user's guide has been fully reworked to cover all new and enhanced
features of version 2.0. Fixes CONFIGURATION-578. |
oheger |
 |
The dependency to Commons Collections is no longer needed. Fixes CONFIGURATION-577. |
oheger |
 |
A new abstract base class for hierarchical configurations was introduced
which supports arbitrary hierarchical data structures. The type of the
nodes used by the configuration can now be specified as a generic type
argument. This makes the integration of other hierarchical structures
easier. Fixes CONFIGURATION-576. |
oheger |
 |
Hierarchical configurations now operate on immutable structures.
Data is no longer represented by ConfigurationNode objects. The
ImmutableNode class now serves as data container. Fixes CONFIGURATION-575. |
oheger |
 |
XPathExpressionEngine can now deal with namespace prefixes in node and
attribute names. Fixes CONFIGURATION-573. |
oheger |
 |
When a CombinedConfiguration is cleared it removes itself as change
listener from all child configurations. This fixes a possible memory
leak. Fixes CONFIGURATION-572. |
oheger |
 |
Fixed a possible ConcurrentModificationException when a SystemConfiguration
instance is passed to the append() or copy() methods. Fixes CONFIGURATION-570. |
oheger |
 |
XMLBeanDeclaration now escapes node names before they are used to
determine nested properties. Fixes CONFIGURATION-567. Thanks to Shen liang. |
oheger |
 |
The DefaultExpressionEngine class is now immutable. An instance can be
shared between multiple configuration objects. Fixes CONFIGURATION-563. |
oheger |
 |
Improved the API of ExprLookup. Fixes CONFIGURATION-562. |
oheger |
 |
It is now possible to define default values for initialization
properties of configurations. Fixes CONFIGURATION-559. |
oheger |
 |
Fixed a bug in the handling of the xml:space attribute in
XMLConfiguration. The attribute is now also applied to the current
element, not only to sub elements. Fixes CONFIGURATION-555. |
oheger |
 |
BeanHelper is no longer a static utility class. Instances can be
created with a specific configuration of bean factories. There is still
a default instance which can be obtained via the BeanHelper.INSTANCE
field. Fixes CONFIGURATION-554. |
oheger |
 |
The code for accessing configuration files hs been reworked. Methods
related to locating configuration files have been moved from
ConfigurationUtils to a new FileLocatorUtils class. Customizable
strategy classes (implementing the new FileLocationStrategy) can be
used for searching for configuration files. Fixes CONFIGURATION-553. |
oheger |
 |
The data type conversion mechanism has been made extensible. There is a
new interface ConversionHandler which controls the data type conversions
available for a configuration object. By setting a custom implementation,
conversions can be adapted or extended. Fixes CONFIGURATION-551. |
oheger |
 |
Conversion to Character is now supported. Fixes CONFIGURATION-550. |
oheger |
 |
BeanHelper can now process BeanDefinitions initializing properties of
collection types of their target beans. Fixes CONFIGURATION-546. Thanks to Justin Couch. |
oheger |
 |
Added missing dependencies to build.xml. Fixes CONFIGURATION-544. Thanks to Oliver Kopp. |
oheger |
 |
The mechanism for synchronizing configurations has been completely
redesigned. It is now based on Synchronizer objects which can be
configured by client code. A new chapter was added to the user's guide
regarding thread-safety of configurations. Fixes CONFIGURATION-542. |
oheger |
 |
MapConfiguration now directly uses a Properties object passed to its
constructor as data store rather than copying it. This allows
SystemConfiguration to be connected to system properties; i.e.
changing a property through SystemConfiguration immediately affects
the corresponding system property. Fixes CONFIGURATION-540. |
oheger |
 |
Multi-file configurations are no longer restricted to XML configuration
files. Arbitrary file-based configurations are now supported. Fixes CONFIGURATION-541. |
oheger |
 |
The deprecated INIConfiguration class was removed.
HierarchicalINIConfiguration was renamed to INIConfiguration. Fixes CONFIGURATION-539. |
oheger |
 |
The deprecated ConfigurationFactory class was removed. Fixes CONFIGURATION-537. |
oheger |
 |
File-based configurations are now implemented in a different way.
The interfaces FileConfiguration and ReloadingStrategy have been
removed, also the base classes AbstractFileConfiguration and
AbstractHierarchicalFileConfiguration. They are replaced by the
FileBased interface and the FileHandler class which implements
central I/O functionality. Reloading is now in the responsibility of
configuration builders. Fixes CONFIGURATION-536. |
oheger |
 |
DatabaseConfiguration now provides get methods for querying its
properties defining the underlying database structures. Fixes CONFIGURATION-535. |
oheger |
 |
The includesAllowed property of PropertyConfiguration is now independent
from the existence of a base path. Fixes CONFIGURATION-534. |
oheger |
 |
DatabaseConfiguration now automatically converts CLOBs to strings if
they appear in property values. Fixes CONFIGURATION-533. |
oheger |
 |
Concurrent access to configurations and reloading have been completely
redesigned. Because reloading is now handled by configuration builders
there is no need to acquire a lock in order to protected against a
reload operations. Fixes CONFIGURATION-530. |
oheger |
 |
AbstractConfiguration.clearPropertyDirect() is now abstract. Fixes CONFIGURATION-527. Thanks to Matthias Richter. |
oheger |
 |
XMLPropertiesConfiguration now supports loading from and saving to DOM
nodes. Fixes CONFIGURATION-526. Thanks to Oliver Kopp. |
oheger |
 |
PropertiesConfiguration now keeps a comment at the bottom of a
properties file. A new footer property was added for reading and
writing this footer comment. Fixes CONFIGURATION-525. |
oheger |
 |
Interpolation now works correctly after a configuration was cloned.
The ConfigurationInterpolator instance is now cloned, too. Fixes CONFIGURATION-524. |
oheger |
 |
ConfigurationUtils.fileFromUrl() now correctly handles URL containing
encoded percent characters. Fixes CONFIGURATION-521. Thanks to Oliver Kopp. |
oheger |
 |
Support for reloading of configuration data has been reworked. Fixes CONFIGURATION-520. |
oheger |
 |
Configuration objects are now created via configuration builders. A new
API for configuration builders has been added. Fixes CONFIGURATION-519. |
oheger |
 |
Classes and interfaces related to interpolation have been slightly
reworked. ConfigurationInterpolator is now thread-safe. There are
multiple ways to define the ConfigurationInterpolator object to be
used by an AbstractConfiguration instance. Fixes CONFIGURATION-518. |
oheger |
 |
Hierarchical configurations now provide methods to obtain sub
configurations for all child elements of a given key. Fixes CONFIGURATION-517. |
oheger |
 |
PropertiesConfiguration no longer escapes double quotes on saving. Fixes CONFIGURATION-516. |
oheger |
 |
The visibility of some internal methods of PropertiesConfiguration.PropertiesWriter
has been increased to protected. This simplifies the implementation of
a custom escaping strategy. Fixes CONFIGURATION-515. |
oheger |
 |
Bean declarations now support constructor invocations. Fixes CONFIGURATION-514. |
oheger |
 |
HierarchicalConfiguration is now an interface. The base implementation
class is named BaseHierarchicalConfiguration. Fixes CONFIGURATION-513. |
oheger |
 |
It is now possible to obtain an immutable view on a Configuration or
HierarchicalConfiguration object. New interfaces,
ImmutableConfiguration, and ImmutableHierarchicalConfiguration have
been introduced. Fixes CONFIGURATION-512. |
oheger |
 |
Generic get() methods have been added to the Configuration interface.
These methods expect a target class and try to convert the value of
the specified property to this target class. Fixes CONFIGURATION-508. |
oheger |
 |
Removed obsolete nested classes Node and NodeVisitor of
HierarchicalConfiguration. The related deprecated class
ConfigurationKey was removed, too. Fixes CONFIGURATION-506. |
oheger |
 |
XMLConfiguration no longer supports attributes with multiple values or
list delimiter parsing in attributes. This feature was complex and
error prone and brought little value to the user. Fixes CONFIGURATION-505. |
oheger |
 |
SubnodeConfiguration now provides a new method for clearing it and
removing its root node from the parent configuration. The method
HierarchicalConfiguration.configurationsAt() now returns a list
of SubnodeConfiguration so that it is easier to make direct use of
this feature. Fixes CONFIGURATION-504. |
oheger |
 |
XMLConfiguration now adds attributes of elements defining a list to
all list nodes. Fixes CONFIGURATION-500. |
oheger |
 |
Concurrent access to configurations and reloading have been completely
redesigned. This should reduce the amount of synchronization. Fixes CONFIGURATION-496. |
oheger |
 |
Removed some static fields for specifying global default values.
Using static fields in this way is thread-hostile. There are now
alternatives for setting default values. Fixes CONFIGURATION-486. |
oheger |
 |
Updated dependency to Commons Lang from version 2.6 to 3.1. Fixes CONFIGURATION-462. |
oheger |
 |
EventSource is now an interface. With BaseEventSource there is a
default implementation. Fixes CONFIGURATION-419. |
oheger |
 |
The handling of list delimiters and their escape characters has been
reworked. A new ListDelimiterHandler interface was introduced allowing
applications to customize the treatment of list delimiters. Fixes CONFIGURATION-418. |
oheger |
 |
Concurrent access to configurations has been reworked. Fixes CONFIGURATION-330. |
oheger |
 |
With the new reloading mechanism automatic and periodic reloading checks
can be performed. Fixes CONFIGURATION-204. |
oheger |
 |
Reloading checks can now be performed in a background thread. Fixes CONFIGURATION-202. |
oheger |
 |
It is now possible to define the strategy used for locating
configuration files. Fixes CONFIGURATION-153. |
oheger |
 |
Reloading can no longer corrupt a configuration instance. This is now
handled by a configuration builder; the original configuration instance
is not modified. Fixes CONFIGURATION-136. |
oheger |
 |
It is now possible to influence the conversion from a container object
(a collection or an array) to a single value (e.g. what is returned by
getString() if the current property has multiple values). Per default,
the first value is returned. By overriding methods of the
configuration's ConversionHandler, this behavior can be changed. Fixes CONFIGURATION-26. |
oheger |