Downloads Source Javadoc
Author: Unspecified
Home Page:
Version: Unspecified
Release Tag: Unknown
Release Date: Unknown
JVM Required: Unspecified
License: Unspecified
Categories: None
Dependencies: No dependencies
Externals: None

Sub-framework for managing persistent objects - those that can be stored within a file system or transmitted over a network. Internally, a persistent object is essentially just a changeable one for which readers and writers have been registered. After explaining the basic typing concepts for persistent objects, and some interface considerations, we explain the approach this package takes to supporting persistence.

Object Typing Concepts

To understand this package, you have to comprehend three notions of 'type' for a persistent object.
  1. The implementation type - synonymous with the Java class used to represent the persistent object during execution.
  2. The external type -- the format in which the persistent object was (or will be) represented in the file system. This type is represented by a Java class defining a reader/writer pair, which implicitly define a file format.
  3. The file type, a somewhat confusing term synomymous in this case with file extension -- the list of characters after some dot in the file name. For simplicity, this version of the package assumes the last dot, but if we were ever to handle UNIX .tar.gz files, that might require some prior dot instead.
  4. The file filter type -- the list of file types expected by a specific file filter in the user interface. There are two special cases:
In an ideal world there would be a one-to-one correspondence between these things. Unfortunately, this turns out not to be the case.

Interface Considerations

Swing provides a JFileChooser class, and an ExampleFileFilter class, that make it easy to associate a set of file filters with a file choice dialog, where each filter can recognize an arbitrary list of extensions, and the user can choose which specific filter to apply.



The following page lists the available downloads for the release of package 'org.gjt.qcis.persist' tagged 'Unknown'. If you need to work with releases other than 'Unknown', you will need to use the anonymous CVS server to access them.