Home
Name Modified Size Downloads / Week Status
Totals: 8 Items   7.1 kB 3
FreezeDry_v0.2.7 2013-11-05 3 weekly downloads
FreezeDry_v0.2.4 2012-11-06 1 weekly downloads
FreezeDry_v0.2.3 2012-10-10 1 weekly downloads
FreezeDry_v0.2.2 2012-07-29 1 weekly downloads
FreezeDry_v0.2.1 2012-04-06 3 weekly downloads
FreezeDry_v0.2.0 2012-04-04 1 weekly downloads
FreezeDry_v0.1.0 2012-03-05 1 weekly downloads
README.txt 2013-10-06 7.1 kB 33 weekly downloads
----------------------------------------------------------------------------------- Website Has Documentation ----------------------------------------------------------------------------------- Please see the Website (http://robphilipp.github.io/freezedry) for documentation. 1. The "Overview Guide" page describes the framework and its usage. 2. The "Quick Start" page describes the various files, which ones to use, how to get running in Eclipse ----------------------------------------------------------------------------------- File Overview and Directories ----------------------------------------------------------------------------------- The directories provide three options for downloading FreezeDry. All options provide a "log4j.xml" configuration file that may be used if you want to use logging. 1. A JAR containing all the dependencies conveniently packaged into one JAR file. This is found in the directory "single_jar". 2. A set of JAR files. The FreezeDry_vx.x.x.jar contains the FreezeDry framework. The additional JAR files are the require dependencies. 3. The source code and an Ant build.xml file for building the source code, and creating the release package. The source code comes in a zip file, and starting with version 0.2.0 also has the directories for individual file downloads. ----------------------------------------------------------------------------------- Changes from version 0.2.3 to version 0.2.4 ----------------------------------------------------------------------------------- Mainly bug fix related to inheritance, completed TODO for setting the persist names of map elements, added ability to specify that a field is ignored (i.e. not persisted), and added test cases. 1. When using @PersistMap with one or both of the options: * keyPersistName * valuePersistName the java.lang.Map was not reconstructed properly from its persisted state. I finished a "TODO" that allows you to use the persistence name for the key and value. 2. Fixed bug where the fields from the ancestor objects (parent and parent's parent, etc) where not getting persisted. 3. Added an ignore option to the @Persist annotation that takes a boolean value of true or false. If the option is set to true, the FreezeDry will ignore that field. 4. Added test cases to the unit tests. ----------------------------------------------------------------------------------- Changes from version 0.2.2 to version 0.2.3 ----------------------------------------------------------------------------------- Mainly provided fixes that allow FreezeDry to be use more effectively as a serialization engine. Mostly this work was done for the Diffusive project. 1. Provided the capability to persist arrays as top level objects. For example, if you would like to directly persist an int[][] (i.e. not a field in some other class) you can now do this. 2. Fixed a minor issue where primitive types were being automatically wrapped in their Java types when specifying their names as a type attribute or as the element names. For example, a double element had its type attribute or name set to Double instead of double. ----------------------------------------------------------------------------------- Changes from version 0.2.1 to version 0.2.2 ----------------------------------------------------------------------------------- 1. Removed the restriction that the persisted class requires a no-arg constructor. 2. Fixed bug the prevented Java types from being persisted as the top level element. 3. Added a Char/char node builded (was missing before, oversight) 4. Updated code so that "static final" fields are persisted by default, and are never set based on the persisted value (if the value is persisted). static final fields take their value from the class' source code. 5. Small bug fixes. ----------------------------------------------------------------------------------- Changes from version 0.2.0 to version 0.2.1 ----------------------------------------------------------------------------------- 1. Fixed a small bug in the KeyValuePersistence class. The method to return the PersistenceBuider returned it from the PersistenceWriter. Modifying the mapping for the PersistenceRenderers in that PersistenceBuilder only applied to the builder for that writer. It did not modify the builder for the PersistenceReader. The PersistenceBuilder for the reader then used a different mapping, in some cases causing errors. This was a disconnect. Renamed the method, and now the user must explicitly set both (until I can find a better solution). ----------------------------------------------------------------------------------- Changes from version 0.1.0 to version 0.2.0 ----------------------------------------------------------------------------------- 1. In preparation for DynamoDB persistence, added a key-value reader and writer and all the code necessary to convert the semantic model into key-value pairs, and parse key-value pairs into the semantic model. The key-value code, found in the "keyvalue" package also contains Renderers and Decorators that allow a fair amount of easy customization. The Renderers are similar to the NodeBuilder except that they work on converting between InfoNodes and key-value pairs. The Decorators provide a convenient way to decorate items. For example, if a key or value is a String, then by default it would be decorated (and undecorated) by surrounding the string with quotes, by the StringDecorator. Renderers and Decorators can be extended to alter the behavior of the default FreezeDry. For example, the FlatteningCollectionRenderer changes the default behavior of the CollectionRenderer. 2. Added Persistence classes as a convenience. Now you can persist objects and reconstitute them from their persisted form through the use of the Persistence classes. For example, there is an XmlPersistence, a JsonPersistence, and a KeyValuePersistence. In the FreezeDryCloud project (to be added shortly) there are Persistence classes to persist directly to S3 buckets. These can easily be extended. And the previous approach of using the PersistenceEngine is still available. 3. Renamed the persistence readers and writers to PersistenceReader and PersistenceWriter to avoid confusion with java.io.Reader and java.io.Writer. 4. Changed the signature of the PersistenceReader to use java.io.Reader instead of the InputStream. And changed the signature of the PersistenceWriter to use the java.io.Writer instead of the PrintWriter. 5. Changed the InfoNode to implement Copyable< InfoNode > and provide a deep copy of the semantic model (i.e. the subtree of the InfoNode on which the copy is requested). 6. Refactored code to clean it up and remove repeated code or generalize patterns. 7. Fixed several bugs related to annotations, arrays of arrays. 8. Added test cases.
Source: README.txt, updated 2013-10-06