Jump to: navigation, search

EclipseLinkTypeMappingOptions

Revision as of 09:14, 9 July 2008 by Karen.moore.oracle.com (Talk | contribs) (Customizer)

Functional Specification: Dali Support for new EclipseLink type mapping options

bug 240038 - ReadOnly support

bug 240042 - Customizer support

bug 240036 - ChangeTracking support

bug 240035 - CopyPolicy support


Document History

Date Author Version Description & Notes
7-8-2008 Karen Butzke Draft

Project overview

This feature is about adding the attribute mapping converter annotations supported by the EclipseLink JPA extension.

Goals:

  • Add JPA Details view widgets for ReadOnly annotation and read-only eclipselink-orm.xml element
  • Add JPA Details view widgets for Customizer annotation and customizer eclipselink-orm.xml element
  • Add JPA Details view widgets for ChangeTracking annotation and read-only eclipselink-orm.xml element
  • Add JPA Details view widgets for CopyPolicy, CloneCopyPolicy, InstantiationCopyPolicy annotations and copy-policy, clone-copy-policy, and instantiation-copy-policy eclipselink-orm.xml elements
  • Provide validation for these settings

Concepts

EclipseLink ReadOnly documentation

EclipseLink Customizer documentation

EclipseLink ChangeTracking documentation

EclipseLink CopyPolicy documentation

Requirements / Functionality

ReadOnly

  • @ReadOnly annotation supported on Entity and MappedSuperclass
  • Corresponding eclipselink-orm.xml element is read-only
  • Only define Read-Only on the root of the inheritance hierarchy, validation error if set on subclass

Entity Read-Only check box

EntityReadOnly.jpg


MappedSuperclass Read-Only check box

MappedSuperclassReadOnly.jpg

Customizer

  • @Customizer annotation is supported on Entity, MappedSuperclass, Embeddable
  • Corresponding eclipselink-orm.xml element is customizer
  • Customizer is not inherited so you can specify on any class in the hierarchy
  • Class must implement org.eclipse.persistence.sessions.factories.DescriptorCustomizer
  • Validation if customizer specified twice, as an annotation and as a persistence.xml property? Or does the persistence.xml property override the one specified in annotation like how the orm.xml overrides the annotation?

File:Customizer.jpg

ChangeTracking

  • @ChangeTracking annotation supported on

File:ChangeTracking.jpg


Copying

  • @CopyPolicy, @CloneCopyPolicy, @InstatntiationCopyPolicy annotations supported on

File:Copying.jpg


API

Issues

This section lists the open issues that are still pending that must be decided prior to fully implementing this project's requirements.

Issue # Owner Description / Notes Decision

Future Considerations

During the research for this project the following items were identified as out of scope but are captured here as potential future enhancements. If agreed upon during the review process these should be logged in the bug system.