OpenORB PersistentStateService
------------------------------

Version 1.4.0 - March, 28 2005 - PersistentStateService_1_4_0_RELEASE

- removed reference to the JDK tools.jar from build.xml
  to allow compilation on OSX

- Renamed "enum" variables to allow compilation on JDK 1.5

- Fixed ArrayIndexOutOfBoundsException in MemoryIterator.detach()

- After an SQL Exception the DB Connection is now tested by executing
  a select statement. By default that statement is "SELECT 1 + 1" but
  can be overwritten for Database engines (e.g. Oracle) that do not
  allow select statements without a from clause. The property to set 
  is "pss.Database.ConnectionTestSQL".
  
- Fixed memory leak in Database connector that occured when DB went down.
  Patch provided by Thomas Haug and Matthias Grosam (Siemens)

 
Version 1.4.0 BETA2 - July, 29 2004 - PersistentStateService_1_4_0_BETA2

- Fixed examples: org.openorb.pss.examples.
    memory.basic|transactional.*
    file.basic|transactional.*
    database.basic|transactional.*

- Fixed copy and paste bugs in examples and added loading of
  OTS profile so that the transactional examples will work.

- Fixed various warnings Eclipse 3.0M6 complained about.

- Added Eclipse project files (.project and .classpath)
  the project can now easily be imported by
      New->Project->Import From existing Source

- Placed compiler cache files in build directory, caches are now
  deleted by invoking the build target "clean"

- Added cachefile attribute to psdl ant task to allow the user to
  control the cachefile location (old behaviour and new default is
  to use the current directory)

Version 1.4.0 BETA1 - December, 19 2003 - PersistentStateService_1_4_0_BETA1

- Added a patch by Matthias Grosam to fix a memory leak when
  using database persistence
  (<Matthias _dot_ Grosam _dot ext _at_ med _dot_ siemens _dot_ de>).

- Use the new psdl2java ant task to compile the psdl files.

- Use the new idl2java ant task to compile the idl files.

- Added create-separate-main-jars build target so that the combined main jar
  can split into separate classes and config jars.

- Removed the setConfig scripts, use the updateConfig scripts
  from tools instead.

- Applied patch provided by Peter Wensing for incorrect arguments to
  constructors for FilePID and MemoryPID in files FileSession and
  MemorySession respectively.  Also fixed memory leak in FileSession
  by replacing use of marshalBuffers hashtable with a call to new
  operation getMarshalBuffer() in class CDROutputStream.

- Moved the examples into the correct package hierarchy:
     org.openorb.pss.examples.*

- Use NamingUtils.getTemporaryDir() to create temporary datastore
  directory. Files will be written into directory
  ".OpenORB/Default_PSS_Store" in one of the following root directories:
  (1) TCOO_HOME (System property="openorb.home.path")
  (2) User's home directory (System property="user.home")
  (3) Current directory
  The temporary directory will be created if not already existing.
  If unable to find/create, the next directory in the list is tried.

- Modified DatabaseWrapper, FileWrapper, and MemoryWrapper so that
  synchronization logic is thread safe.

- Moved build script logic into Ant files.

- Added an Ant Task psdl2java, very similar (and inherited) from
  the idl2java task. Does dependency checking as well.

- Modified pss.xml to allow PSS usage without prior configuration.
  The folder and the name of the data store are using default names
  now. Patch by Tony Thompson (tony _dot_ thompson _at_ stone
  _dash_ ware _dot_ com).

- Modified DatabaseWrapper, FileWrapper, and MemoryWrapper so that
  synchronized blocks protect access to _incarnations member in
  generated code.

- Move the jars into the lib folder instead of the dist folder now.

- Added shell scripts for setting the environment and for the
  PsdlCompiler.

- Aligned the PsdlCompiler usage output to the IdlCompiler and
  the JavaToIdl compiler.

- Documented some previously undocumented options of the psdl
  compiler.

- Added the IdlFromIR class from the idl compiler package
  as the psdl compiler is the only one who uses this class.

- Adapted usage of OpenORB classes to new package structure.

- Updated version number to 1.4.0.

- The class ReleaseInfo has been removed for simplicity reasons.

Version 1.3.0 - September, 27 2002 - PersistentStateService_1_3_0

- Make build.sh work with the latest cygwin version. The script
  was using a variable OSTYPE that is not available in sh. The
  official way to get the name of the platform is uname which
  is now used for determining the CLASSPATH separator.

Version 1.3.0 BETA2 - August, 10 2002 - PersistentStateService_1_3_0_BETA2

- Added patch by Diego Sevilla Ruiz (dsevilla _at_ um _dot_ es) for
  the install target of the build.xml. The new version copies the
  files to the path specified by the property install.path just as
  if you extract one of the binary tarballs.

- Make the install target in build.xml copy all jars from the
  dist directory to the specified install location.

- Added dump-info target to build.xml to show the
  basic settings that are used by ant.

- Add support for xalan on JDK 1.4 to build.xml. Otherwise the
  compile-docbook target does not work.

Version 1.3.0 BETA1 - June, 19 2002 - PersistentStateService_1_3_0_BETA1

- Added a checkstyle target to build.xml. The command
  "build.sh checkstyle" checks the source code for adherence
  to the Jakarta coding conventions.

- Changed all Class.forName() calls to
  Thread.currentThread().getContextLoader().loadClass()
  This is safer when having multiple class loaders.

- Added local.properties file to influence the ant build
  process locally.

- Converted the pss.xml file to docbook format.
  Build.xml creates pdf and html output now.

- Merged install.txt and src/etc/README files.
  Moved src/etc files CHANGELOG, README, and LICENSE
  to the base directory of the package and renamed
  CHANGELOG to WHATSNEW (Jakarta style).

- Switched to template based manifest files.

- Aligned code to the Apache/Jakarta coding guidlines
  (Normal and generated code).

- Suppress any output when -silence is specified.

- fix build.sh, build.bat to include tools/lib

- build.sh now works under Cygwin, patch submitted by
  David Blevins (dblevins@users.sourceforge.net).

- Introduction of a new exception named PersistenceException
  that includes as a state member a Throwable, accessible through
  a getCause() method (consistent with JDK 1.4 approach).  The
  exception implements the
  org.apache.avalon.framework.CascadingThrowable
  interface contained in the avalon-framework.jar library.

- Modifications to the File connector including replacement of
  PERSIST_STORE exception with the new PersistenceException.  It
  is important to note that it was not possible to extend PERSIT_STORE
  because the Sun implementation of that class under JDK 1.4 is a
  final class - also, PERSIST_STORE is not appropriate because
  PERSIST_STORE is an exception designed to passed to a remote client
  and PSS exceptions are a local implementation concern.

- Resolution of bugs relating to synchronisation errors in the File
  connector.

- Updates to the build file to fix javadoc related errors.

- Several enhancements to the sources including null arguments and
  corresponding throws of NullPointerException with appropriate
  messages.  General exception management improvements across the
  board resulting in significant enhancements in resolution of
  PSS implementation versus application debuging.  Test suggest a
  substantive improvement in reliability at both PSS and ORB levels.

- Initial javadoc in the related IDL sources.

Version 1.2.1 - January, 11 2002 - PersistentStateService_1_2_1

- NONE

Version 1.2.0 - August, 7 2001 - PersistentStateService_1_2_0

- Fixed a bug in the marshaller/unmarshaller code generator
  for inherited forwarded storage type

- Added two methods in the reflection interface of a  storage type.

Version 1.1.0 - May, 7 2001 - PersistentStateService_1_1_0

- Bug fixed, registered PSS in pre_init rather than post_init,
  avoiding problem with INS where the nameservice would be accessed
  via the default initial reference before orb.run had been called.
  modified class : org.openorb.pss.Initializer

- Big fixed for the typedef of basic data types with the PsdlCompiler.
  modified class : org.openorb.pss.compiler.generate.psdlToJava

- Bug fixed for the catalog inheritance. It was not possible to
  inherit from a typedef identifier that corresponded to a  catalog.
  modified: org.openorb.pss.compiler.parser.PsdlGrammar

- PSDL Compiler bug fix concerning the Javadoc management. It's now
  possible to use Javadoc comments for 'catalog' and 'provides'
  operations.  modified: org.openorb.pss.compiler.parser.PsdlGrammar
  org.openorb.pss.compiler.generator.PsdlToJava

- Generated classes changed to support a new comparison method for
  arrays of byte. This change fix an unexcepted bug within the finder
  methods. ( Bug reported and fixed by Stephen McConnell ).
  modified: org.openorb.pss.connector.file.FileWrapper
  org.openorb.pss.connector.database.DatabaseWrapper
  org.openorb.pss.connector.memory.MemoryWrapper
  org.openorb.pss.util.measure

- PSDL Compiler updated to support typedef type for inheritance (
  abstract/concret storagehome/storagetype )  modified:
  org.openorb.pss.compiler.parser.PsdlGrammar

- PSDL Compiler updated to take into account the prefix packages
  creation  modified: org.openorb.pss.compiler.parser.PsdlGrammar

- Mapping of embedded builder for typedef abstract storagetype bug has
  been fixed  modified: org.openorb.pss.compiler.generator.PsdlToJava

- Typedef of storagetype / storagehome ( concrete & abstract ) bugs
  have been fixed  modified:
  org.openorb.pss.compiler.parser.PsdlGrammar

- Enhance the PsdlCompiler to support JavaDoc comments
  modified: org.openorb.pss.compiler.parser.PsdlGrammar,
  org.openorb.pss.compiler.generator.PsdlToJava

- Fix a bug concerning the forward declaration of abstract storage
  home  modified: org.openorb.pss.compiler.parser.PsdlGrammar,
  org.openorb.pss.compiler.reflect.psdlAbstractStorageHome

- Changed the PsdlCompiler to support the new IdlFromIR constructor (
  from OpenORB distribution 1.0.2 )

Version 1.0.1 - March, 9 2001 - PersistentStateService_1_0_1

- A helper tool forgeneration has been updated to take into account
  inherited and local 'store' directives.

- All the mapping connectors have been modified to support a
  enumeration data type for a key.
  modified: org.openorb.pss.connector.database.DatabaseWrapper,
  org.openorb.pss.connector.file.FileWrapper,
  org.openorb.pss.connector.memory.MemoryWrapper

- Database connector has been modified to take into account different
  sql data type to store binary objects. An additional property must
  be set to specify the sql data type to use  (PSS.database.sql_type).
  By default, the 'binary' datatype is used.
  modified: org.openorb.pss.connector.database.DatabaseSession

- All the mapping generators have been modified to initialize
  inherited embedded storage object  modified:
  org.openorb.pss.connector.database.DatabaseWrapper,
  org.openorb.pss.connector.file.FileWrapper,
  org.openorb.pss.connector.memory.MemoryWrapper
  bug fixed by Stephen McConnell ( mcconnell@osm.net )

- MultipleInput method fixed for the database connector.

- Multiple fields for a key description is now working with the
  database connector
  modified: org.openorb.pss.connector.database.DatabaseSession

- The PSDL Compiler returns a status error when the compiler stops
  after a failure  modified: org.openorb.pss.compiler.PSDLCompiler

Version 1.0.0 - February, 1 2001 - PersistentStateService_1_0_0

- Initial Release

