EclipseLinkConverters

From Eclipsepedia

Jump to: navigation, search

Contents

Functional Specification: Dali Support for EclipseLink Converters

bug 239163 - converters support

Document History

Date Author Version Description & Notes
7-7-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 the Convert, Converter, ObjectTypeConverter, TypeConverter and StructConverter annotations
  • Add JPA Details view widgets for eclipselink-orm.xml convert, converter, object-type-converter, type-converter and struct-converter elements
  • Provide validation for the converters

Concepts

Present any concepts relevant to the feature.

EclipseLink converters documentation

Requirements / Functionality

Convert

@Convert annotation is supported on Basic, Id, Version, BasicMap and BasicCollection mappings

@Converter, @TypeConverter, @ObjectTypeConverter, @StructConverter will be supported on Id, Version, Basic, BasicMap, BasicCollection mappings in java. In the eclipselink-orm.xml only the convert name widget will be supported on these mappings, unless EclipseLink bug 237315 is fixed.

  • Will include a twistie widget on Converters section.
  • If you select Enumerated the combo box will display Default(Ordinal)
  • Change generic JPA platform mappings to handle converters with radio buttons: No Converter, Lob, Temporal, Enumerated
  • EclipseLink bug 237315 handles supporting converters on eclipselink-orm.xml attribute mappings.
  • Validation
    • Converter class must implement org.eclipse.persistence.mappings.converters.Converter



BasicConversion.jpg


I ran out of space, this really belongs embedded in the above panel under Object Type Mapping

ObjectTypeConverter.jpg


  • Converter, TypeConverter, ObjectTypeConverter, StructConverter supported on Entity, MappedSuperclass, Embeddable in java and in eclipselink-orm.xml. Also supported on entity-mappings element in eclipselink-orm.xml.
  • On the eclipselink-orm.xml entity-mappings node support adding/removing converters. If you select a particular converter in the list then you will see that panel for that converter type. This should also be how the support works for Entity, MappedSuperclass, and Embeddable in eclipselink-orm.xml
  • EclipseLink bug 241305 handles supporting multiple converters on an entity. Below is the screen shot if we do not support multiple converters on a java entity, the user can specify one of each kind of converter.


EntityConversion.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.