persistence@glassfish.java.net

entity-persistence update

From: Tom Ware <tom.ware_at_oracle.com>
Date: Wed, 08 Feb 2006 16:34:59 -0500

Issue number: entity-persistence functionality update
Obtained from: TopLink
Submitted by: Tom Ware
Reviewed by: TopLink Team

- Annotation updates to the proposed final draft. Transaction includes
validation on callback methods, namely, that they can not be static or
final.
- Annotation updates to the proposed final draft. @EntityListener was
renamed to @EntityListeners - minor processing rework to support array
of listener classes instead of a single class. Full support according to
the latest spec to come. New annotations include:
@ExcludeDefaultListeners and @ExcludeSuperclassListeners - processing
support to come.
- Created a helper class to handle element inspection. Also updated the
namespace uri in XPathEngine and the test instance docs to match the
latest schema
- Fix for the PostLoadOnRefreshTest from InheritedCallbacksJunitTest and
included testing (annotation processing) on abstract classes.
- Implemented RESOURCE_LOCAL support.
- Added XMLAccessor, and factored out shared code in Accessor to
superclass - MetadataAccessor
- Annotation processing changes. Added @OrderBy support for @Embedded
fields/properties.
- (Note some of these changes require Appserver Changes before they are
enabled) Add map argument to
PersistenceProvider.createContainerEntityManagerFactory() and to
EntityManagerFactoryProvider, Add
EntityManagerFactory.createEntityManager(Map) method, Add lock() method
to EntityManager, Add clear() method to EntityManager, Add getDelegate()
method to EntityManager, Some refactoring of property processing code in
deployment
- Moved bulk of DescriptorMetadata code to superclass MetadataDescriptor
- Testing for 1-1 primary key associations
- Join column processing, 1-1 mapping initialization & owning-side
processing, M-M relation key processing, relation table processing
- PreUpdate event support changed to allow data modifications in the event.
- Notable code extractions include: inheritance, tables, multiple table
key fields. Created a common logging utility. Disabled existing 'merge'
tests in the XML package. Checked in current orm.xsd
- Annotation processing changes. Support for 1-1 primary key
associations (i.e. @OneToOne with a @PrimaryKeyJoinColumn). Testing to
come ...
- Annotation processing changes. 1-1 and M-1 mappings are now marked
read-only if any of the JoinColumns are marked read-only (insertable and
updatable = false) and updated the defaults on DatabaseField that
correspond to the defaults of @Column.
- added parameter binding config property for persistence.xml
- Annotation processing changes. The access type of a primary key class
is determined by the access type of the entity for which it is the
primary key. The Id annotation must also be applied to the corresponding
fields or properties of the entity.
- Allows UpdateAllQuery to alter objects referenced by OneToOneMapping
- Includes testing with regards to @OrderBy that default to an @EmbeddedId
- Fixed Oracle bug 4755392: AFTER DELETEALL OBJECT STILL DEEMED EXISTING
- Annotation processing changes. Added @OrderBy support for composite
primary keys, including @EmbeddedId. Added some testing, will add more ...
- Read transaction isolation feature
- Renamed Antlr and ASM and fixed build scripts to use renamed files.
Both are now included in toplink-essentials.jar

Tested by full GlassFish build, QuickLook, entity persistence testing,
and internal TopLink testing