Home
Name Modified Size InfoDownloads / Week
jfig-2.4.1 2016-04-22
jfig-2.4.0 2014-12-30
jfig-2.3.1 2014-04-24
jfig-2.3.0 2013-11-01
jfig-2.2.3 2013-10-30
jfig-2.2.2 2013-05-25
jfig-2.2.1 2013-05-10
jfig-2.2.0 2013-05-01
jfig-2.1.1 2013-04-24
jfig-2.1.0 2013-04-16
jfig-2.0.0 2013-03-20
jfig-1.5.2 2005-03-18
jfig-1.5.0 2005-01-04
jfig-1.4.2 2004-05-22
jfig-1.4.1 2004-02-05
README.txt 2016-04-22 5.4 kB
JFig 2.x ReadMe.docx 2016-04-22 21.9 kB
JFig 2.x ReadMe.txt 2016-04-22 5.4 kB
Totals: 18 Items   32.7 kB 0
JFig 2.0, 2.1, 2.2, 2.3, 2.3.1 and 2.4.0 Updates
New Features:
* The JFig entry xml node has been enhanced to include several new attributes.
o A comment attribute to add comments for an entry
o An isActive attribute to inactivate an entry
o An isHidden attribute to control printing of values (for not printing passwords)
o An isPropery attribute to export a key/value as a Java Property. This is in addition to the previously existing "property" section way of exporting properties.

<entry key="myKey" value="myValue" comment="this is my key" isHidden="true"/>

<entry key="activeKey" value="activeValue" comment="this is my activeKey" isActive="false"/>

        <entry key="myProperty" value="myPropertyValue" isProperty="true" />


* Track the filenames that affected each entry.
As JFig parses each config file, add the current filename to a list on each JFig Entry object. This list is available for display from the JFig.print(true) command. The "true" parameter gives detailed printing.

* JFig print to show new options
The JFig print method now has an optional boolean flag to print a JFig entry with all its attributes in addition to the key/value pairs. These additional attributes are. comments,, isActive, and isHidden. It will also display the configuration files that were involved in setting or changing the value of a JFig entry. The format of the new method is:

JFig.print(true);

The previous method declaration, JFig.print(), defaults to JFig.print(false). It prints just the key 
and the value as before.

* Add toHtmlString() to JFigIF interface
Return the contents of the dictionary formatted in HTML

* Changes to how JFig looks for files

By default, the JFigLocator so it will look first in the file system then the classpath for configuration files. The user may control where in the file system to look. This may be explicitly defined in the JFig startup properties as jfig.location=BOTH or config.location=BOTH (see "New startup property definitions" for more on this.)

* New startup property definitions 
* jfig.location
* jfig.filename
These replace the original config.location and config.filename. The older property names will continue to work.

* jfig.directory
Specifies a directory within the file system.

* Spring property resolver in the distribution
The JFigSpringConfigurer allows the user to set spring values from values defined in JFig. This way, Spring can dynamically start up with different values depending on the JFig configuration files. More details will be provided in the online documentation.


* Support for multiple JFig instances
Users may specify an explicit JFig instance name at initialization. They may continue to reference that instance by specifying the name in the JFig.getInstance(<name>) calls. For example:
Call initialize with an explicit name:  
	JFig.initialize("myName);
Access this instance by specifying the same name: 	JFig.getInstance("myName").getValue("aSection", "aKey", "defaultValue);

* Separate instance per class loader
This is handled internally. The user does not have to do anything for this feature.

* User may specify the characters or the regular expression used to define the JFig substitution format.
Normal substitution is defined usingthe following format:
<entry key="myKey" value="[otherSection]{otherValue}"/>

Users may now change the delimetrs([, ], {. }) with the following methods:

JFigConstants.setSECTION_START_DELIMITER(delimiter);
JFigConstants.setSECTION_END_DELIMITER(delimiter);
JFigConstants.setKEY_START_DELIMITER(delimiter);
JFigConstants.setKEY_END_DELIMITER(delimiter);

For example:
JFigConstants.setSECTION_START_DELIMITER("#");
JFigConstants.setSECTION_END_DELIMITER("#");
<entry key="myKey" value="#otherSection#{otherValue}"/>

For more flexibility, users may change the entire regular expression:
JFigConstants.setRegexSubstitution(Pattern pattern);

* Use current directory as default directory when looking for config files in the file system. (2.4.0)
The current directory where JFig is started will be the default directory if no directory is explicitly requested using the -Djfig.directory property. By default, JFig will look for files in this directory, then in the classpath.


Bug Fixes
* getSectionAsProperties() throws NullPointerException when supplying a non-existent file name.
* UnknownHostException on getHostName() not handled correctly; throws NullPointerException
   * getSection methods return sorted values. Fix to retain original order. Sort when printing. (2.2)
   * JFigLocator.isValidLocaion was not using the passed parameter for its comparison; was using configFileLocation
* When an entry is updated by a substitution value, add fileNames from the substituting entry to the list of "affecting" file names (2.3.1)
* Add getEntry(section, key) method to JFigIF so users can get an Entry object (2.3.1)
* JFigLocator.initializeConfigDirectory() use File.separator.equals("/"), not == (2.4.1)
* JFigPaarser.processIncludes() do not create new parser. Loses previously parsed files and can cause recursion error. (2.4.1)

Infrastructure
* Java 1.6 upgrade
* Maven builds
* Refactoring
o Separate JFig (static methods) and JFigImpl (JFigIF implementer) classes (2.2.0)
o Separate Resolver from Parser class
o Much more
* Test cases for all new features
�

Source: README.txt, updated 2016-04-22