Release History

VersionDateDescription
1.0 IN CVS
1.0-rc2 2004-09-24
1.0-rc1 2004-08-14

Get the RSS feed of the last changes

Release 1.0 - IN CVS

TypeChangesBy
fix The getStringArray() method in CompositeConfiguration now interpotales the strings. Fixes 29616 . ebourg
fix SubsetConfiguration now shares the "throwExceptionOnMissing" property with its parent. Fixes 31540 . ebourg
fix Removed "file:" at the beginning of the base path when calling setFile() on a FileConfiguration. This prevented auto saving an XMLConfiguration loaded from a File (issue reported by Mark Roth). ebourg
update All NamingEnumerations in JNDIConfiguraiton are now properly closed (Suggested by Eric Jung). ebourg
fix Properties added to an XMLConfiguration are no longer duplicated in the resulting XML file. Fixes 30799 . ebourg

Release 1.0-rc2 - 2004-09-24

TypeChangesBy
update Unified the mechanisms for loading and saving file based configurations. PropertiesConfiguration, XMLConfiguration and HierarchicalXMLConfiguration now implement the same FileConfiguration interface. BasePathLoader, BasePathConfiguration, ClassPropertiesConfiguration and BasePropertiesConfiguration have been removed. ebourg
fix Replaced the calls to Boolean.booleanValue(boolean) in AbstractConfiguration and ConfigurationDynaBean to be Java 1.3 compatible. Fixes 31346 . ebourg
fix Changing the prefix of a JNDIConfiguration will now reset the base context used. Fixes 31345 . ebourg
add The context used by JNDIConfiguration can be specified in its constructor or through the setContext() method. The context can be accessed with the getContext() method which is now public. Thanks to Eric Jung . ebourg
add Make the behaviour on missing properties for the get methods that return objects configurable. A property throwExceptionOnMissingcan be set and then the getters throw an NoSuchElementException. The old default behaviour of returning a nullvalue has been restored. henning
add Allow configurations extending AbstractConfiguration to change the delimiter used from "," to something else. Fixes 29714 . epugh
fix PropertiesConfiguration.save() method has issues with preserving the filename epugh
fix Test cases for HierarchicalConfigurationXMLReader stores comments as text nodes Fixes 30597 . Thanks to Mark Woodman . epugh
fix Clarify for ConfigurationDynaBean that the get method should throw an illegalArgumentException if there is no property specified. Fixes 30545 . Thanks to Ricardo Gladwell . epugh
fix Fixed a ClassCastException when adding a non String property to an XMLConfiguration. Fixes 30839 . ebourg
fix Fixed the handling of attribute properties by HierarchicalConfigurationConverter. Fixes 30655 . Thanks to Oliver Heger . ebourg
fix Fixed a ClassCastException thrown on adding a non string property in a DatabaseConfiguration. Fixes 30676 . ebourg
add Bring back the getVector() methods in the Configuration interface. These methods are needed for " drop-on " replacement of the various pre-1.0 commons-configuration snapshots and are already deprecated. These methods will be removed for 1.1. henning

Release 1.0-rc1 - 2004-08-14

TypeChangesBy
add HierarchicalConfigurationXMLReader stores comments as text nodes Fixes 30597 . Thanks to Oliver Heger . epugh
add project.xml contains bad dependencies Fixes 30648 . Thanks to Ricardo Gladwell . epugh
add clearXmlProperty doesn't remove list properties completely Fixes 30234 . Thanks to Brent Worden . epugh
add new ConfigurationDynaBean Fixes 30545 . Thanks to Ricardo Gladwell . epugh
add new ConfigurationMap and ConfigurationSet Fixes 29611 . Thanks to Ricardo Gladwell . epugh
fix Problem adding property XMLConfiguration Fixes 30598 . Thanks to Ricardo Gladwell . epugh
remove ConfigurationXMLDocument removed until post 1.0. epugh
fix DatabaseConfiguration doesn't support List properties. Fixes 29734 . epugh
fix Fixed several bugs related to XMLConfiguration:
  • 30074 - Can't add a new property as an attribute in XMLConfiguration
  • 30205 - XMLConfiguration doesn't support attribute names with a dot
  • 30209 - XMLConfiguration doesn't ignore comments
  • 30212 - XMLConfiguration.save() doesn't escape reserved characters
ebourg
add Added save methods in XMLConfiguration similar to PropertiesConfiguration to save the configur ation to another file (bug 29721). ebourg
update Removed the DOM4J implementations in favor of the DOM ones. DOMConfiguration has been renamed to XMLConfiguration, and HierarchicalDOMConfiguration to HierarchicalXMLConfiguration. The elements parsed by the ConfigurationFactory have been changed accordingly. ebourg
add Added a save() method to PropertiesConfiguration and save(Writer out), save(OutputStream out), save(OutputStream out, String encoding) to BasePropertiesConfiguration. ebourg
fix List values are now properly stored as comma separated values in the Properties object returned by ConfigurationConverter.getProperties() (Bug 29607) ebourg
update Introduced a ConversionException thrown when the value of a property is not compatible the type requested. It replaces the ClassCastException and the NumberFormatException thrown previously. ebourg
fix Tokens like ${ref} in a PropertyConfiguration are now properly saved (Bug 29366). ebourg
fix The getList() method of a CompositeConfiguration now returns the list composed of the elements in the first matching configuration and the additional elements found in the in memory configuration (Bug 28660). ebourg
fix SubsetConfiguration returns a List on getList(). AbstractConfiguration wouldn't properly deal with a List, only with a Container for getList()! Thanks to jschaible for the unit test. epugh
add Direct support of XML via DOM. New classes DOMConfiguration and HierarchicalDOMConfiguration. jschaible
update Update build to not include test configuration files in resulting jar. jschaible
update Refactored JNDIConfiguration to use AbstractConfiguration. ebourg
update Fixed bug 27427 by refactoring out the subset logic into a SubsetConfiguration. ebourg
fix Reapply the ConfigurationXMLDocument that went missing during migration out of sandbox. oheger
update Apply ASL 2.0 license. Thanks to Jeff Painter for scripting the conversion! epugh
add Changed CompositeConfiguration to extend from AbstractConfiuration. This means that the behavior of CompositeConfiguration is much similar to others like PropertiesConfiguration in handling of missing keys, interpolation, etc.. Previously CompositeConfiguration had quite a few differences. epugh
update Removed "defaults" from BaseConfiguration. Defaults are now done via using a CompositeConfiguration, either directly or via a ConfigurationFactory. if you want to save changes made to a Configuration, then you use a CompositeConfiguration and get back the inMemoryConfiguration that has the delta of changes. Added a bit of documentation on this. epugh
update Bugzilla 16504 Enhancement: Configuration Comparator epugh
update Bugzilla 26694 (BaseConfiguration: containsKey ignores default properties). I have changed it so that now the defaults are paid attention to. epugh
add The Configuration interface now supports BigDecimal and BigInteger numbers. ebourg
add ConfigurationException is now thrown by public met hods instead of Exception or IOException or whatnot. epugh
add For configuration based on properties files, allow characters like \n etc to be escaped and unescaped. ebourg
add New DatabaseConfiguration that uses a database to store the properties. It supports 2 table structures :
  • one table per configuration (2 colums key/value)
  • one table for multiple configurations (2 columns key/value + 1 column for the name of the configuration)
ebourg
add ConfigurationFactory now supports the hierarchicalDom4j element in configuration definition file oheger
update Change all Vector objects to List objects. ebourg
add ConfigurationFactory now supports two types of properties files, additional and override. Additional properties add each other together. Override override each other. This allows you to have a single property that is either aggregated from a number of sources, or have a property that is overridden according to a specific order of sources. oheger
update AbstractConfiguration addProperty now delegates to an abstract addPropertyDirect implemented by BaseConfiguration. oheger
update Changed getString() method to throw a NoSuchElementException instead of "" if the configuration property doesn't exist. kshaposhnikov
add Added AbstractConfiguration to make it easier to create subclasses by only having to implement the methods required. kshaposhnikov
fix ClassPropertiesConfiguration Ad ditions
  • Use the classloader of class that is provided by the constructor.
  • Add a constructor that indicates whether to use relative or absolute.
  • Change getPropertyStream to utilize the relative or absolute flag.
  • Add a test case that checks that absolute paths work.
bdunbar
fix JNDIConfiguration.getKeys() AdditionThe JNDIConfiguration.getKeys() method was returning an unsupported operation error. However, this is an important method to have supported. epugh
fix CompositeConfiguration.getKeys() FixThe CompositeConfiguration.getKeys() method was returning an unordered list of configuration values. However, many apps expect the order that keys are returned to be the order they are added into the properties file. epugh