What's the plan for primary key and foreign key constraint names?
-- Michelle
Craig Russell (JIRA) wrote:
[ https://issues.apache.org/jira/browse/JDO-403?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12509979 ]
Craig Russell commented on JDO-403:
-----------------------------------
Ok, I'll prepare a patch that will include adding table to @PC and @Field and
removing @PI.
I think we're also close to agreeing on the way to map embedded that changes
@Field.embeddedFieldName to @Field.name and allows nested field names
This is adapted from my message last week after the JDO conference call:
class Employee {
@Column(name="NAME")
String name;
@Embedded(nullIndicatorColumn="DESCRIPTION",
fields={
@Field(name="address.description", column="DESCRIPTION")),
@Field(name="address.location.latitude", column="LATITUDE")),
@Field(name="address.location.longitude", column="LONGITUDE"))})
Address address;
}
We still need a way to annotate a nested embedded null indicator column. In the
above example, Address might have a description but null location. To do this,
we can add a nullIndicatorColumn to the @Field annotation, e.g.
@Field(name="address.location", nullIndicatorColumn="LATITUDE")
Summary of proposed changes:
1. Add element String name() to @Field instead of embeddedFieldName to name the
field of the embedded mapping.
2. Allow dotted notation for field names for nested embedded.
3. Add element String nullIndicatorColumn() to @Field to identify nested
embedded null indicator.
4. Add element String column() to @Field
5. Add element String table() to @Field
6. Remove @PersistentInterface
7. Add element String table() to @PersistenceCapable
8. Add element String catalog() to @PersistenceCapable
9. Add element String schema() to @PersistenceCapable
JDO2 Annotations
----------------
Key: JDO-403
URL: https://issues.apache.org/jira/browse/JDO-403
Project: JDO
Issue Type: New Feature
Components: api2
Affects Versions: JDO 2 final
Reporter: Andy Jefferson
Assignee: Michelle Caisse
Fix For: JDO 2 maintenance release 1
Attachments: embedded.patch, fkpk.patch, jdo_2_1_annotations.jar
It would be desirable for JDO2 to have its own set of annotations. We have
developed a set within JPOX that would likely serve as a starting point for
such a set. In my opinion they should be
1. Split into javax.jdo.annotations.jdo and javax.jdo.annotations.orm
2. Move ORM attributes from some of the JDO annotations and have a ORM
annotation.