OpenORB PersistentStateService ------------------------------ - 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 (). - 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