You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by Craig L Russell <Cr...@Sun.COM> on 2007/07/18 21:31:46 UTC

DISCUSS remove @Field and @Property; add @Persistent

In many places in annotations, we have @Field and @Property used  
interchangeably. There are still a few places where we have fields()  
but not properties().

It might be a good time (as we're almost done with this) to replace  
@Field and @Property with @Persistent. That would make it easier to  
describe that either a field or property is being described.

The down side might be describing multiples, where we have e.g. Field 
[ ] fields() default { } that would become Persistent[ ] persistent()  
{ } or Persistent[ ] persistents() { }

I think simplifying would be good now. Are there other places we have  
forgotten to include Property?

Craig

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Andy Jefferson <an...@jpox.org>.
> Overriding inherited fields :-
> One other area if you really want to provide annotations with the full
> capability that XML has. In XML you can override (inherited) fields
> persistence specifications in subclasses. With Annotations this currently
> isn't possible. This could be remedied by changing the specification of
> @Field/@Property (@Persistent) to be for  ElementType.TYPE too.

except that we would need an @Fields (@Persistents ???) to allow an array
or maybe have "fields"/"properties" under @PersistenceCapable

-- 
Andy  (Java Persistent Objects - http://www.jpox.org)

Re: [VOTE] remove @Field and @Property; add @Persistent

Posted by Andy Jefferson <an...@jpox.org>.
> Recently we updated the change list:
>
> Add Persistent[] members() default {} to @PersistenceCapable
> Added back PersistenceModifier persistenceModifier() to @Persistent
>
> If others agree, please vote.

+1



-- 
Andy

Re: [VOTE] remove @Field and @Property; add @Persistent

Posted by Ilan Kirsh <ki...@objectdb.com>.
In 11 the change should be from fields to members rather than back
to fields. Also following 6 - recursionDepth in Persistent is missing and
FetchField  can be removed (but maybe mixing recursionDepth with
Persistent is confusing, and FetchField should be preserved).

Ilan Kirsh
ObjectDB Software


----- Original Message ----- 
From: "Craig L Russell" <Cr...@Sun.COM>
To: <jd...@db.apache.org>
Cc: "JDO Expert Group" <jd...@Sun.COM>
Sent: Saturday, July 21, 2007 1:31 AM
Subject: [VOTE] remove @Field and @Property; add @Persistent


> I'd like to have a vote to approve this significant change to the
> annotations. This is a summary of the changes referred to in the new  JIRA
> https://issues.apache.org/jira/browse/JDO-510
>
> 1. Rename @Field to @Persistent and rename @Transient to @NotPersistent.
>
> 2. Delete @Property and @FieldPersistenceModifier.
>
> 3. Change src/java/javax/jdo/annotations/Column.java:    String
> targetField() default "";
> to src/java/javax/jdo/annotations/Column.java:    String targetMember ()
> default "";
>
> 4. Change src/java/javax/jdo/annotations/Embedded.java:    String
> ownerField() default "";
> to src/java/javax/jdo/annotations/Embedded.java:    String ownerMember ()
> default "";
>
> 5. Change src/java/javax/jdo/annotations/Embedded.java:    Field[]
> fields() default {};
> to src/java/javax/jdo/annotations/Embedded.java:    Persistent[ ]
> members() default {};
>
> 6. Change src/java/javax/jdo/annotations/FetchGroup.java:     FetchField[]
> fields();
> to src/java/javax/jdo/annotations/FetchGroup.java:    Persistent[]
> members();
>
> 7. Remove element src/java/javax/jdo/annotations/Persistent.java:
> FieldPersistenceModifier persistenceModifier()
>
> 8. Change src/java/javax/jdo/annotations/Field.java:    Class[]
> fieldTypes() default {};
> to src/java/javax/jdo/annotations/Persistent.java:    Class[]
> boundTypes() default {};
>
> 9. Remove element src/java/javax/jdo/annotations/Persistent.java:
> Class fieldType() default void.class;
>
> 10. Change src/java/javax/jdo/annotations/ForeignKey.java:    String []
> fields() default {};
> to src/java/javax/jdo/annotations/ForeignKey.java:    String[] members ()
> default {};
>
> 11. Change src/java/javax/jdo/annotations/Index.java:    String[]
> fields() default {};
> to src/java/javax/jdo/annotations/Index.java:    String[] fields()
> default {};
>
> 12. Change src/java/javax/jdo/annotations/Serialized.java: * This is  the
> same as specifying @Field(serialized="true").
> to src/java/javax/jdo/annotations/Serialized.java: * This is the same  as
> specifying @Persistent (serialized="true").
>
> 13. Remove the comment src/java/javax/jdo/annotations/ Transactional.java:
> * "@Field (persistenceModifier=FieldPersistenceModifier.TRANSACTIONAL)".
>
> 14. Change src/java/javax/jdo/annotations/Unique.java:    String[]
> fields() default {};
> to src/java/javax/jdo/annotations/Unique.java:    String[] members()
> default {};
>
> 15. Remove the comment src/java/javax/jdo/annotations/ NotPersistent.java:
> * "@Field (persistenceModifier=FieldPersistenceModifier.NONE)".
>
> 16. Remove type() from @Persistent, as boundTypes() is used for this
> feature with a reasonable default.
>
> 17. Added dependentElement, dependentKey, dependentValue,
> serializedElement, serializedKey, serializedValue to @Persistent to
> correspond to xml attributes of map and collection.
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>
>



RE: [VOTE] remove @Field and @Property; add @Persistent

Posted by "Matthew T. Adams" <ma...@xcalia.com>.
+1

-----Original Message-----
From: Craig.Russell@Sun.COM [mailto:Craig.Russell@Sun.COM] 
Sent: Tuesday, July 24, 2007 10:10 PM
To: Craig L Russell
Cc: jdo-dev@db.apache.org; JDO Expert Group
Subject: Re: [VOTE] remove @Field and @Property; add @Persistent

+1

Recently we updated the change list:

Add Persistent[] members() default {} to @PersistenceCapable

Added back PersistenceModifier persistenceModifier() to @Persistent

If others agree, please vote.

Thanks,

Craig

On Jul 20, 2007, at 3:31 PM, Craig L Russell wrote:

> I'd like to have a vote to approve this significant change to the  
> annotations. This is a summary of the changes referred to in the  
> new JIRA https://issues.apache.org/jira/browse/JDO-510
>
> 1. Rename @Field to @Persistent and rename @Transient to  
> @NotPersistent.
>
> 2. Delete @Property and @FieldPersistenceModifier.
>
> 3. Change src/java/javax/jdo/annotations/Column.java:    String  
> targetField() default "";
> to src/java/javax/jdo/annotations/Column.java:    String  
> targetMember() default "";
>
> 4. Change src/java/javax/jdo/annotations/Embedded.java:    String  
> ownerField() default "";
> to src/java/javax/jdo/annotations/Embedded.java:    String  
> ownerMember() default "";
>
> 5. Change src/java/javax/jdo/annotations/Embedded.java:    Field[]  
> fields() default {};
> to src/java/javax/jdo/annotations/Embedded.java:    Persistent[ ]  
> members() default {};
>
> 6. Change src/java/javax/jdo/annotations/FetchGroup.java:     
> FetchField[] fields();
> to src/java/javax/jdo/annotations/FetchGroup.java:    Persistent[]  
> members();
>
> 7. Remove element src/java/javax/jdo/annotations/ 
> Persistent.java:    FieldPersistenceModifier persistenceModifier()
>
> 8. Change src/java/javax/jdo/annotations/Field.java:    Class[]  
> fieldTypes() default {};
> to src/java/javax/jdo/annotations/Persistent.java:    Class[]  
> boundTypes() default {};
>
> 9. Remove element src/java/javax/jdo/annotations/ 
> Persistent.java:    Class fieldType() default void.class;
>
> 10. Change src/java/javax/jdo/annotations/ForeignKey.java:    String 
> [] fields() default {};
> to src/java/javax/jdo/annotations/ForeignKey.java:    String[]  
> members() default {};
>
> 11. Change src/java/javax/jdo/annotations/Index.java:    String[]  
> fields() default {};
> to src/java/javax/jdo/annotations/Index.java:    String[] fields()  
> default {};
>
> 12. Change src/java/javax/jdo/annotations/Serialized.java: * This  
> is the same as specifying @Field(serialized="true").
> to src/java/javax/jdo/annotations/Serialized.java: * This is the  
> same as specifying @Persistent (serialized="true").
>
> 13. Remove the comment src/java/javax/jdo/annotations/ 
> Transactional.java: * "@Field 
> (persistenceModifier=FieldPersistenceModifier.TRANSACTIONAL)".
>
> 14. Change src/java/javax/jdo/annotations/Unique.java:    String[]  
> fields() default {};
> to src/java/javax/jdo/annotations/Unique.java:    String[] members 
> () default {};
>
> 15. Remove the comment src/java/javax/jdo/annotations/ 
> NotPersistent.java: * "@Field 
> (persistenceModifier=FieldPersistenceModifier.NONE)".
>
> 16. Remove type() from @Persistent, as boundTypes() is used for  
> this feature with a reasonable default.
>
> 17. Added dependentElement, dependentKey, dependentValue,  
> serializedElement, serializedKey, serializedValue to @Persistent to  
> correspond to xml attributes of map and collection.
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!



Re: [VOTE] remove @Field and @Property; add @Persistent

Posted by Michelle Caisse <Mi...@Sun.COM>.
+1

-- Michelle

Craig L Russell wrote:

> +1
>
> Recently we updated the change list:
>
> Add Persistent[] members() default {} to @PersistenceCapable
>
> Added back PersistenceModifier persistenceModifier() to @Persistent
>
> If others agree, please vote.
>
> Thanks,
>
> Craig
>
> On Jul 20, 2007, at 3:31 PM, Craig L Russell wrote:
>
>> I'd like to have a vote to approve this significant change to the  
>> annotations. This is a summary of the changes referred to in the  new 
>> JIRA https://issues.apache.org/jira/browse/JDO-510
>>
>> 1. Rename @Field to @Persistent and rename @Transient to  
>> @NotPersistent.
>>
>> 2. Delete @Property and @FieldPersistenceModifier.
>>
>> 3. Change src/java/javax/jdo/annotations/Column.java:    String  
>> targetField() default "";
>> to src/java/javax/jdo/annotations/Column.java:    String  
>> targetMember() default "";
>>
>> 4. Change src/java/javax/jdo/annotations/Embedded.java:    String  
>> ownerField() default "";
>> to src/java/javax/jdo/annotations/Embedded.java:    String  
>> ownerMember() default "";
>>
>> 5. Change src/java/javax/jdo/annotations/Embedded.java:    Field[]  
>> fields() default {};
>> to src/java/javax/jdo/annotations/Embedded.java:    Persistent[ ]  
>> members() default {};
>>
>> 6. Change src/java/javax/jdo/annotations/FetchGroup.java:     
>> FetchField[] fields();
>> to src/java/javax/jdo/annotations/FetchGroup.java:    Persistent[]  
>> members();
>>
>> 7. Remove element src/java/javax/jdo/annotations/ Persistent.java:    
>> FieldPersistenceModifier persistenceModifier()
>>
>> 8. Change src/java/javax/jdo/annotations/Field.java:    Class[]  
>> fieldTypes() default {};
>> to src/java/javax/jdo/annotations/Persistent.java:    Class[]  
>> boundTypes() default {};
>>
>> 9. Remove element src/java/javax/jdo/annotations/ Persistent.java:    
>> Class fieldType() default void.class;
>>
>> 10. Change src/java/javax/jdo/annotations/ForeignKey.java:    String 
>> [] fields() default {};
>> to src/java/javax/jdo/annotations/ForeignKey.java:    String[]  
>> members() default {};
>>
>> 11. Change src/java/javax/jdo/annotations/Index.java:    String[]  
>> fields() default {};
>> to src/java/javax/jdo/annotations/Index.java:    String[] fields()  
>> default {};
>>
>> 12. Change src/java/javax/jdo/annotations/Serialized.java: * This  is 
>> the same as specifying @Field(serialized="true").
>> to src/java/javax/jdo/annotations/Serialized.java: * This is the  
>> same as specifying @Persistent (serialized="true").
>>
>> 13. Remove the comment src/java/javax/jdo/annotations/ 
>> Transactional.java: * "@Field 
>> (persistenceModifier=FieldPersistenceModifier.TRANSACTIONAL)".
>>
>> 14. Change src/java/javax/jdo/annotations/Unique.java:    String[]  
>> fields() default {};
>> to src/java/javax/jdo/annotations/Unique.java:    String[] members () 
>> default {};
>>
>> 15. Remove the comment src/java/javax/jdo/annotations/ 
>> NotPersistent.java: * "@Field 
>> (persistenceModifier=FieldPersistenceModifier.NONE)".
>>
>> 16. Remove type() from @Persistent, as boundTypes() is used for  this 
>> feature with a reasonable default.
>>
>> 17. Added dependentElement, dependentKey, dependentValue,  
>> serializedElement, serializedKey, serializedValue to @Persistent to  
>> correspond to xml attributes of map and collection.
>>
>> Craig Russell
>> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
>> 408 276-5638 mailto:Craig.Russell@sun.com
>> P.S. A good JDO? O, Gasp!
>>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>


Re: [VOTE] remove @Field and @Property; add @Persistent

Posted by Awais Bajwa <aw...@gmail.com>.
Hi Craig,

+1

Regards
Awais Bajwa


On 7/25/07, Craig L Russell <Cr...@sun.com> wrote:
>
> +1
>
> Recently we updated the change list:
>
> Add Persistent[] members() default {} to @PersistenceCapable
>
> Added back PersistenceModifier persistenceModifier() to @Persistent
>
> If others agree, please vote.
>
> Thanks,
>
> Craig
>
> On Jul 20, 2007, at 3:31 PM, Craig L Russell wrote:
>
> > I'd like to have a vote to approve this significant change to the
> > annotations. This is a summary of the changes referred to in the
> > new JIRA https://issues.apache.org/jira/browse/JDO-510
> >
> > 1. Rename @Field to @Persistent and rename @Transient to
> > @NotPersistent.
> >
> > 2. Delete @Property and @FieldPersistenceModifier.
> >
> > 3. Change src/java/javax/jdo/annotations/Column.java:    String
> > targetField() default "";
> > to src/java/javax/jdo/annotations/Column.java:    String
> > targetMember() default "";
> >
> > 4. Change src/java/javax/jdo/annotations/Embedded.java:    String
> > ownerField() default "";
> > to src/java/javax/jdo/annotations/Embedded.java:    String
> > ownerMember() default "";
> >
> > 5. Change src/java/javax/jdo/annotations/Embedded.java:    Field[]
> > fields() default {};
> > to src/java/javax/jdo/annotations/Embedded.java:    Persistent[ ]
> > members() default {};
> >
> > 6. Change src/java/javax/jdo/annotations/FetchGroup.java:
> > FetchField[] fields();
> > to src/java/javax/jdo/annotations/FetchGroup.java:    Persistent[]
> > members();
> >
> > 7. Remove element src/java/javax/jdo/annotations/
> > Persistent.java:    FieldPersistenceModifier persistenceModifier()
> >
> > 8. Change src/java/javax/jdo/annotations/Field.java:    Class[]
> > fieldTypes() default {};
> > to src/java/javax/jdo/annotations/Persistent.java:    Class[]
> > boundTypes() default {};
> >
> > 9. Remove element src/java/javax/jdo/annotations/
> > Persistent.java:    Class fieldType() default void.class;
> >
> > 10. Change src/java/javax/jdo/annotations/ForeignKey.java:    String
> > [] fields() default {};
> > to src/java/javax/jdo/annotations/ForeignKey.java:    String[]
> > members() default {};
> >
> > 11. Change src/java/javax/jdo/annotations/Index.java:    String[]
> > fields() default {};
> > to src/java/javax/jdo/annotations/Index.java:    String[] fields()
> > default {};
> >
> > 12. Change src/java/javax/jdo/annotations/Serialized.java: * This
> > is the same as specifying @Field(serialized="true").
> > to src/java/javax/jdo/annotations/Serialized.java: * This is the
> > same as specifying @Persistent (serialized="true").
> >
> > 13. Remove the comment src/java/javax/jdo/annotations/
> > Transactional.java: * "@Field
> > (persistenceModifier=FieldPersistenceModifier.TRANSACTIONAL)".
> >
> > 14. Change src/java/javax/jdo/annotations/Unique.java:    String[]
> > fields() default {};
> > to src/java/javax/jdo/annotations/Unique.java:    String[] members
> > () default {};
> >
> > 15. Remove the comment src/java/javax/jdo/annotations/
> > NotPersistent.java: * "@Field
> > (persistenceModifier=FieldPersistenceModifier.NONE)".
> >
> > 16. Remove type() from @Persistent, as boundTypes() is used for
> > this feature with a reasonable default.
> >
> > 17. Added dependentElement, dependentKey, dependentValue,
> > serializedElement, serializedKey, serializedValue to @Persistent to
> > correspond to xml attributes of map and collection.
> >
> > Craig Russell
> > Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> > 408 276-5638 mailto:Craig.Russell@sun.com
> > P.S. A good JDO? O, Gasp!
> >
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>
>
>


-- 
------------------

Awais Bajwa
Java Evangelist
Member Java Cummunity Process
http://www.jcp.org/en/press/news/commFocus04-05bajwa

Re: [VOTE] remove @Field and @Property; add @Persistent

Posted by Michael Bouschen <mb...@spree.de>.
Hi Craig,

+1

Regards Michael

> +1
>
> Recently we updated the change list:
>
> Add Persistent[] members() default {} to @PersistenceCapable
>
> Added back PersistenceModifier persistenceModifier() to @Persistent
>
> If others agree, please vote.
>
> Thanks,
>
> Craig
>
> On Jul 20, 2007, at 3:31 PM, Craig L Russell wrote:
>
>> I'd like to have a vote to approve this significant change to the 
>> annotations. This is a summary of the changes referred to in the new 
>> JIRA https://issues.apache.org/jira/browse/JDO-510
>>
>> 1. Rename @Field to @Persistent and rename @Transient to @NotPersistent.
>>
>> 2. Delete @Property and @FieldPersistenceModifier.
>>
>> 3. Change src/java/javax/jdo/annotations/Column.java:    String 
>> targetField() default "";
>> to src/java/javax/jdo/annotations/Column.java:    String 
>> targetMember() default "";
>>
>> 4. Change src/java/javax/jdo/annotations/Embedded.java:    String 
>> ownerField() default "";
>> to src/java/javax/jdo/annotations/Embedded.java:    String 
>> ownerMember() default "";
>>
>> 5. Change src/java/javax/jdo/annotations/Embedded.java:    Field[] 
>> fields() default {};
>> to src/java/javax/jdo/annotations/Embedded.java:    Persistent[ ] 
>> members() default {};
>>
>> 6. Change src/java/javax/jdo/annotations/FetchGroup.java:    
>> FetchField[] fields();
>> to src/java/javax/jdo/annotations/FetchGroup.java:    Persistent[] 
>> members();
>>
>> 7. Remove element src/java/javax/jdo/annotations/Persistent.java:    
>> FieldPersistenceModifier persistenceModifier()
>>
>> 8. Change src/java/javax/jdo/annotations/Field.java:    Class[] 
>> fieldTypes() default {};
>> to src/java/javax/jdo/annotations/Persistent.java:    Class[] 
>> boundTypes() default {};
>>
>> 9. Remove element src/java/javax/jdo/annotations/Persistent.java:    
>> Class fieldType() default void.class;
>>
>> 10. Change src/java/javax/jdo/annotations/ForeignKey.java:    
>> String[] fields() default {};
>> to src/java/javax/jdo/annotations/ForeignKey.java:    String[] 
>> members() default {};
>>
>> 11. Change src/java/javax/jdo/annotations/Index.java:    String[] 
>> fields() default {};
>> to src/java/javax/jdo/annotations/Index.java:    String[] fields() 
>> default {};
>>
>> 12. Change src/java/javax/jdo/annotations/Serialized.java: * This is 
>> the same as specifying @Field(serialized="true").
>> to src/java/javax/jdo/annotations/Serialized.java: * This is the same 
>> as specifying @Persistent (serialized="true").
>>
>> 13. Remove the comment 
>> src/java/javax/jdo/annotations/Transactional.java: * 
>> "@Field(persistenceModifier=FieldPersistenceModifier.TRANSACTIONAL)".
>>
>> 14. Change src/java/javax/jdo/annotations/Unique.java:    String[] 
>> fields() default {};
>> to src/java/javax/jdo/annotations/Unique.java:    String[] members() 
>> default {};
>>
>> 15. Remove the comment 
>> src/java/javax/jdo/annotations/NotPersistent.java: * 
>> "@Field(persistenceModifier=FieldPersistenceModifier.NONE)".
>>
>> 16. Remove type() from @Persistent, as boundTypes() is used for this 
>> feature with a reasonable default.
>>
>> 17. Added dependentElement, dependentKey, dependentValue, 
>> serializedElement, serializedKey, serializedValue to @Persistent to 
>> correspond to xml attributes of map and collection.
>>
>> Craig Russell
>> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
>> 408 276-5638 mailto:Craig.Russell@sun.com
>> P.S. A good JDO? O, Gasp!
>>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>


-- 
Tech@Spree Engineering GmbH  Tel.: +49/(0)30/235 520-33
Buelowstr. 66                Fax.: +49/(0)30/217 520-12
10783 Berlin                 mailto:mbo.tech@spree.de 
 
Geschaeftsfuehrung: Anna-Kristin Proefrock
Sitz Berlin, Amtsgericht Charlottenburg, HRB 564 52


Re: [VOTE] remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
+1

Recently we updated the change list:

Add Persistent[] members() default {} to @PersistenceCapable

Added back PersistenceModifier persistenceModifier() to @Persistent

If others agree, please vote.

Thanks,

Craig

On Jul 20, 2007, at 3:31 PM, Craig L Russell wrote:

> I'd like to have a vote to approve this significant change to the  
> annotations. This is a summary of the changes referred to in the  
> new JIRA https://issues.apache.org/jira/browse/JDO-510
>
> 1. Rename @Field to @Persistent and rename @Transient to  
> @NotPersistent.
>
> 2. Delete @Property and @FieldPersistenceModifier.
>
> 3. Change src/java/javax/jdo/annotations/Column.java:    String  
> targetField() default "";
> to src/java/javax/jdo/annotations/Column.java:    String  
> targetMember() default "";
>
> 4. Change src/java/javax/jdo/annotations/Embedded.java:    String  
> ownerField() default "";
> to src/java/javax/jdo/annotations/Embedded.java:    String  
> ownerMember() default "";
>
> 5. Change src/java/javax/jdo/annotations/Embedded.java:    Field[]  
> fields() default {};
> to src/java/javax/jdo/annotations/Embedded.java:    Persistent[ ]  
> members() default {};
>
> 6. Change src/java/javax/jdo/annotations/FetchGroup.java:     
> FetchField[] fields();
> to src/java/javax/jdo/annotations/FetchGroup.java:    Persistent[]  
> members();
>
> 7. Remove element src/java/javax/jdo/annotations/ 
> Persistent.java:    FieldPersistenceModifier persistenceModifier()
>
> 8. Change src/java/javax/jdo/annotations/Field.java:    Class[]  
> fieldTypes() default {};
> to src/java/javax/jdo/annotations/Persistent.java:    Class[]  
> boundTypes() default {};
>
> 9. Remove element src/java/javax/jdo/annotations/ 
> Persistent.java:    Class fieldType() default void.class;
>
> 10. Change src/java/javax/jdo/annotations/ForeignKey.java:    String 
> [] fields() default {};
> to src/java/javax/jdo/annotations/ForeignKey.java:    String[]  
> members() default {};
>
> 11. Change src/java/javax/jdo/annotations/Index.java:    String[]  
> fields() default {};
> to src/java/javax/jdo/annotations/Index.java:    String[] fields()  
> default {};
>
> 12. Change src/java/javax/jdo/annotations/Serialized.java: * This  
> is the same as specifying @Field(serialized="true").
> to src/java/javax/jdo/annotations/Serialized.java: * This is the  
> same as specifying @Persistent (serialized="true").
>
> 13. Remove the comment src/java/javax/jdo/annotations/ 
> Transactional.java: * "@Field 
> (persistenceModifier=FieldPersistenceModifier.TRANSACTIONAL)".
>
> 14. Change src/java/javax/jdo/annotations/Unique.java:    String[]  
> fields() default {};
> to src/java/javax/jdo/annotations/Unique.java:    String[] members 
> () default {};
>
> 15. Remove the comment src/java/javax/jdo/annotations/ 
> NotPersistent.java: * "@Field 
> (persistenceModifier=FieldPersistenceModifier.NONE)".
>
> 16. Remove type() from @Persistent, as boundTypes() is used for  
> this feature with a reasonable default.
>
> 17. Added dependentElement, dependentKey, dependentValue,  
> serializedElement, serializedKey, serializedValue to @Persistent to  
> correspond to xml attributes of map and collection.
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


[VOTE] remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
I'd like to have a vote to approve this significant change to the  
annotations. This is a summary of the changes referred to in the new  
JIRA https://issues.apache.org/jira/browse/JDO-510

1. Rename @Field to @Persistent and rename @Transient to @NotPersistent.

2. Delete @Property and @FieldPersistenceModifier.

3. Change src/java/javax/jdo/annotations/Column.java:    String  
targetField() default "";
to src/java/javax/jdo/annotations/Column.java:    String targetMember 
() default "";

4. Change src/java/javax/jdo/annotations/Embedded.java:    String  
ownerField() default "";
to src/java/javax/jdo/annotations/Embedded.java:    String ownerMember 
() default "";

5. Change src/java/javax/jdo/annotations/Embedded.java:    Field[]  
fields() default {};
to src/java/javax/jdo/annotations/Embedded.java:    Persistent[ ]  
members() default {};

6. Change src/java/javax/jdo/annotations/FetchGroup.java:     
FetchField[] fields();
to src/java/javax/jdo/annotations/FetchGroup.java:    Persistent[]  
members();

7. Remove element src/java/javax/jdo/annotations/Persistent.java:     
FieldPersistenceModifier persistenceModifier()

8. Change src/java/javax/jdo/annotations/Field.java:    Class[]  
fieldTypes() default {};
to src/java/javax/jdo/annotations/Persistent.java:    Class[]  
boundTypes() default {};

9. Remove element src/java/javax/jdo/annotations/Persistent.java:     
Class fieldType() default void.class;

10. Change src/java/javax/jdo/annotations/ForeignKey.java:    String 
[] fields() default {};
to src/java/javax/jdo/annotations/ForeignKey.java:    String[] members 
() default {};

11. Change src/java/javax/jdo/annotations/Index.java:    String[]  
fields() default {};
to src/java/javax/jdo/annotations/Index.java:    String[] fields()  
default {};

12. Change src/java/javax/jdo/annotations/Serialized.java: * This is  
the same as specifying @Field(serialized="true").
to src/java/javax/jdo/annotations/Serialized.java: * This is the same  
as specifying @Persistent (serialized="true").

13. Remove the comment src/java/javax/jdo/annotations/ 
Transactional.java: * "@Field 
(persistenceModifier=FieldPersistenceModifier.TRANSACTIONAL)".

14. Change src/java/javax/jdo/annotations/Unique.java:    String[]  
fields() default {};
to src/java/javax/jdo/annotations/Unique.java:    String[] members()  
default {};

15. Remove the comment src/java/javax/jdo/annotations/ 
NotPersistent.java: * "@Field 
(persistenceModifier=FieldPersistenceModifier.NONE)".

16. Remove type() from @Persistent, as boundTypes() is used for this  
feature with a reasonable default.

17. Added dependentElement, dependentKey, dependentValue,  
serializedElement, serializedKey, serializedValue to @Persistent to  
correspond to xml attributes of map and collection.

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
Here's what would change if we got rid of @Field and @Property and  
used member as the term to refer to both.

1. Rename @Field to @Persistent and @Transient to @NotPersistent and  
@FieldPersistenceModifier to @PersistenceModifier

2. Delete @Property.

3. Change src/java/javax/jdo/annotations/Column.java:    String  
targetField() default "";
to src/java/javax/jdo/annotations/Column.java:    String targetMember 
() default "";

4. Change src/java/javax/jdo/annotations/Embedded.java:    String  
ownerField() default "";
to src/java/javax/jdo/annotations/Embedded.java:    String ownerMember 
() default "";

5. Change src/java/javax/jdo/annotations/Embedded.java:    Field[]  
fields() default {};
to src/java/javax/jdo/annotations/Embedded.java:    Persistent[ ]  
members() default {};

6. Change src/java/javax/jdo/annotations/FetchGroup.java:     
FetchField[] fields();
to src/java/javax/jdo/annotations/FetchGroup.java:    Persistent[]  
members();

7. Change src/java/javax/jdo/annotations/Field.java:     
FieldPersistenceModifier persistenceModifier()
to src/java/javax/jdo/annotations/Persistent.java:     
PersistenceModifier persistenceModifier()

8. Change src/java/javax/jdo/annotations/Field.java:    Class[]  
fieldTypes() default {};
to src/java/javax/jdo/annotations/Persistent.java:    Class[] types()  
default {};

9. Change src/java/javax/jdo/annotations/Field.java:    Class  
fieldType() default void.class;
to src/java/javax/jdo/annotations/Persistent.java:    Class type()  
default void.class;

10. Change src/java/javax/jdo/annotations/ForeignKey.java:    String 
[] fields() default {};
to src/java/javax/jdo/annotations/ForeignKey.java:    String[] fields 
() default {};

11. Change src/java/javax/jdo/annotations/Index.java:    String[]  
fields() default {};
to src/java/javax/jdo/annotations/Index.java:    String[] fields()  
default {};

12. Change src/java/javax/jdo/annotations/Serialized.java: * This is  
the same as specifying @Field(serialized="true").
to src/java/javax/jdo/annotations/Serialized.java: * This is the same  
as specifying @Persistent (serialized="true").

13. Change src/java/javax/jdo/annotations/Transactional.java: *  
"@Field(persistenceModifier=FieldPersistenceModifier.TRANSACTIONAL)".
to src/java/javax/jdo/annotations/Transactional.java: * "@Persistent 
(persistenceModifier=PersistenceModifier.TRANSACTIONAL)".

14. Change src/java/javax/jdo/annotations/Unique.java:    String[]  
fields() default {};
to src/java/javax/jdo/annotations/Unique.java:    String[] members()  
default {};

15. Change src/java/javax/jdo/annotations/Transient.java: * "@Field 
(persistenceModifier=FieldPersistenceModifier.NONE)".
to src/java/javax/jdo/annotations/NotPersistent.java: * "@Persistent 
(persistenceModifier=PersistenceModifier.NONE)".

There are lots of comments to change as well, but these are the code  
changes I found.

Craig

On Jul 19, 2007, at 8:56 AM, Craig L Russell wrote:

> Well, member didn't show up as a thesaurus entry, but I like it.
>
> Member does have a meaning in Java but I think the meaning is  
> consistent enough with "field or property" to consider. It also  
> means "or inner class" but I don' think that's a negative.
>
> We could also use @Persistent as the annotation but use member and  
> members as elements. I'll try some sample code and see what looks  
> good.
>
> Craig
>
> On Jul 19, 2007, at 7:42 AM, Michael Bouschen wrote:
>
>> Hi,
>>
>> I agree @NotPersistent is better than @Transient. The term  
>> serialization is already occupied by serialization and both  
>> concepts (serialization and persistence) are orthogonal.
>>
>> Are we still looking for a name for a new annotation replacing  
>> both @Field or @Property or did @Persistent win the race?
>> How about @Member?
>>
>> Regards Michael
>>
>>> Hi Andy,
>>>
>>> On Jul 18, 2007, at 11:36 PM, Andy Jefferson wrote:
>>>
>>>>> Have I ever told you how much I *hate* using @Transient to  
>>>>> describe
>>>>> @NotPersistent? Transient is a serialization concept and I have no
>>>>> trouble with a field that is both transient and persistent.  
>>>>> That is,
>>>>> not serialized but stored in the database. So calling something
>>>>> @Transient is a big ugly blotch. Because if it's really transient,
>>>>> you should mark it in the class as transient.
>>>>
>>>> No. You never told me ;-) nor did anybody else object when those  
>>>> annotations
>>>> were added a longggg time ago.
>>>>
>>>> So why not @NotPersistent ?
>>>
>>> Sounds good. I'll take a closer look at using @Persistent and see  
>>> if everything can be made consistent.
>>>
>>> Thanks,
>>>
>>> Craig
>>>>
>>>> -- 
>>>> Andy  (Java Persistent Objects - http://www.jpox.org)
>>>
>>> Craig Russell
>>> Architect, Sun Java Enterprise System http://java.sun.com/ 
>>> products/jdo
>>> 408 276-5638 mailto:Craig.Russell@sun.com
>>> P.S. A good JDO? O, Gasp!
>>>
>>
>>
>> -- 
>> Tech@Spree Engineering GmbH  Tel.: +49/(0)30/235 520-33
>> Buelowstr. 66                Fax.: +49/(0)30/217 520-12
>> 10783 Berlin                 mailto:mbo.tech@spree.de  
>> Geschaeftsfuehrung: Anna-Kristin Proefrock
>> Sitz Berlin, Amtsgericht Charlottenburg, HRB 564 52
>>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
Well, member didn't show up as a thesaurus entry, but I like it.

Member does have a meaning in Java but I think the meaning is  
consistent enough with "field or property" to consider. It also means  
"or inner class" but I don' think that's a negative.

We could also use @Persistent as the annotation but use member and  
members as elements. I'll try some sample code and see what looks good.

Craig

On Jul 19, 2007, at 7:42 AM, Michael Bouschen wrote:

> Hi,
>
> I agree @NotPersistent is better than @Transient. The term  
> serialization is already occupied by serialization and both  
> concepts (serialization and persistence) are orthogonal.
>
> Are we still looking for a name for a new annotation replacing both  
> @Field or @Property or did @Persistent win the race?
> How about @Member?
>
> Regards Michael
>
>> Hi Andy,
>>
>> On Jul 18, 2007, at 11:36 PM, Andy Jefferson wrote:
>>
>>>> Have I ever told you how much I *hate* using @Transient to describe
>>>> @NotPersistent? Transient is a serialization concept and I have no
>>>> trouble with a field that is both transient and persistent. That  
>>>> is,
>>>> not serialized but stored in the database. So calling something
>>>> @Transient is a big ugly blotch. Because if it's really transient,
>>>> you should mark it in the class as transient.
>>>
>>> No. You never told me ;-) nor did anybody else object when those  
>>> annotations
>>> were added a longggg time ago.
>>>
>>> So why not @NotPersistent ?
>>
>> Sounds good. I'll take a closer look at using @Persistent and see  
>> if everything can be made consistent.
>>
>> Thanks,
>>
>> Craig
>>>
>>> -- 
>>> Andy  (Java Persistent Objects - http://www.jpox.org)
>>
>> Craig Russell
>> Architect, Sun Java Enterprise System http://java.sun.com/products/ 
>> jdo
>> 408 276-5638 mailto:Craig.Russell@sun.com
>> P.S. A good JDO? O, Gasp!
>>
>
>
> -- 
> Tech@Spree Engineering GmbH  Tel.: +49/(0)30/235 520-33
> Buelowstr. 66                Fax.: +49/(0)30/217 520-12
> 10783 Berlin                 mailto:mbo.tech@spree.de  
> Geschaeftsfuehrung: Anna-Kristin Proefrock
> Sitz Berlin, Amtsgericht Charlottenburg, HRB 564 52
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Michael Bouschen <mb...@spree.de>.
Hi,

I agree @NotPersistent is better than @Transient. The term serialization 
is already occupied by serialization and both concepts (serialization 
and persistence) are orthogonal.

Are we still looking for a name for a new annotation replacing both 
@Field or @Property or did @Persistent win the race?
How about @Member?

Regards Michael

> Hi Andy,
>
> On Jul 18, 2007, at 11:36 PM, Andy Jefferson wrote:
>
>>> Have I ever told you how much I *hate* using @Transient to describe
>>> @NotPersistent? Transient is a serialization concept and I have no
>>> trouble with a field that is both transient and persistent. That is,
>>> not serialized but stored in the database. So calling something
>>> @Transient is a big ugly blotch. Because if it's really transient,
>>> you should mark it in the class as transient.
>>
>> No. You never told me ;-) nor did anybody else object when those 
>> annotations
>> were added a longggg time ago.
>>
>> So why not @NotPersistent ?
>
> Sounds good. I'll take a closer look at using @Persistent and see if 
> everything can be made consistent.
>
> Thanks,
>
> Craig
>>
>> -- 
>> Andy  (Java Persistent Objects - http://www.jpox.org)
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>


-- 
Tech@Spree Engineering GmbH  Tel.: +49/(0)30/235 520-33
Buelowstr. 66                Fax.: +49/(0)30/217 520-12
10783 Berlin                 mailto:mbo.tech@spree.de 
 
Geschaeftsfuehrung: Anna-Kristin Proefrock
Sitz Berlin, Amtsgericht Charlottenburg, HRB 564 52


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
Hi Andy,

On Jul 18, 2007, at 11:36 PM, Andy Jefferson wrote:

>> Have I ever told you how much I *hate* using @Transient to describe
>> @NotPersistent? Transient is a serialization concept and I have no
>> trouble with a field that is both transient and persistent. That is,
>> not serialized but stored in the database. So calling something
>> @Transient is a big ugly blotch. Because if it's really transient,
>> you should mark it in the class as transient.
>
> No. You never told me ;-) nor did anybody else object when those  
> annotations
> were added a longggg time ago.
>
> So why not @NotPersistent ?

Sounds good. I'll take a closer look at using @Persistent and see if  
everything can be made consistent.

Thanks,

Craig
>
> -- 
> Andy  (Java Persistent Objects - http://www.jpox.org)

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Andy Jefferson <an...@jpox.org>.
> Have I ever told you how much I *hate* using @Transient to describe
> @NotPersistent? Transient is a serialization concept and I have no
> trouble with a field that is both transient and persistent. That is,
> not serialized but stored in the database. So calling something
> @Transient is a big ugly blotch. Because if it's really transient,
> you should mark it in the class as transient.

No. You never told me ;-) nor did anybody else object when those annotations 
were added a longggg time ago.

So why not @NotPersistent ?

-- 
Andy  (Java Persistent Objects - http://www.jpox.org)

Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
Hi Andy,

On Jul 18, 2007, at 9:45 PM, Andy Jefferson wrote:

>> How about creating a new tag like @NotPersistent. To go along with
>> @Transactional and @Persistent.
>
> @Transient is already there :-)
>
Have I ever told you how much I *hate* using @Transient to describe  
@NotPersistent? Transient is a serialization concept and I have no  
trouble with a field that is both transient and persistent. That is,  
not serialized but stored in the database. So calling something  
@Transient is a big ugly blotch. Because if it's really transient,  
you should mark it in the class as transient.

Craig

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Andy Jefferson <an...@jpox.org>.
Hi Craig,

> > @PersistenceCapable
> > public class MyClass
> > {
> >     @Persistent(persistenceModifier=FieldPersistenceModifier.NONE)
> > }
> Doesn't bother me as much as duplicating Field/Property all over.

Me neither, but have to play devils advocate ;-)

> This is another anomaly: FieldPersistenceModifier should become
> PersistenceModifier.

+1. 
It was a hangover from when I originally had ClassPersistenceModifier and 
FieldPersistenceModifier.

> How about creating a new tag like @NotPersistent. To go along with
> @Transactional and @Persistent.

@Transient is already there :-)

The only place that "persistenceModifier" would then be used is in the 
specification of persistence of embedded objects, or overriding inherited 
fields - so the user may wish to *not* persistent a particular field. In this 
case they would have to use @Persistent(persistenceModifier=NONE)




Overriding inherited fields :-
One other area if you really want to provide annotations with the full 
capability that XML has. In XML you can override (inherited) fields 
persistence specifications in subclasses. With Annotations this currently 
isn't possible. This could be remedied by changing the specification of 
@Field/@Property (@Persistent) to be for  ElementType.TYPE too.

-- 
Andy  (Java Persistent Objects - http://www.jpox.org)

Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
One thing we could do is to rename @Field to @Persistent, remove  
@Property, and allow @Persistent to be used for either fields or  
properties, equivalently. So there would be no difference in  
functionality between specifying fields=... and properties=...

So we would have

@interface Embedded {
Persistent[ ] fields();
Persistent[ ] properties();
...

@interface FetchGroup {
Persistent[ ] fields();
Persistent[ ] properties();
...

Usage:

     @Persistent (table="LINES", embeddedElement="true")
     @Join(column="OWNER_FK")
     @Element (
         embedded=@Embedded(
             fields={
                 @Persistent(name="point1.x", column="POINT1_X"),
                 @Persistent(name="point1.y", column="POINT2_Y"),
                 @Persistent(name="point2.x", column="POINT2_X"),
                 @Persistent(name="point2.y", column="POINT2_Y")
             }))
     Set<Line> lines;

     @Persistent (embeddedElement="true")
     @Join(column="OWNER_FK")
     @Element (
         embedded=@Embedded(
             properties={
                 @Persistent(name="point1.x", column="POINT1_X"),
                 @Persistent(name="point1.y", column="POINT2_Y"),
                 @Persistent(name="point2.x", column="POINT2_X"),
                 @Persistent(name="point2.y", column="POINT2_Y")
             }))
     abstract Set<Line> getLines();

Craig

On Jul 18, 2007, at 4:36 PM, Craig L Russell wrote:

> Looking some more, expanding the search radius:
>
> aspect, character, characteristic, facet, idiosyncrasy, indication,  
> mark, note, particularity, peculiarity, point, property, quality,  
> quirk, sign, speciality, symbol, trait, virtue
>
> appearance, aspect, attribute, badge, bent, caliber, cast, complex,  
> complexion, constitution, crasis, disposition, emotions,  
> estimation, ethos, frame, genius, grain, habit, humor, kind,  
> makeup, mettle, mood, morale, mystique, nature, personality,  
> quality, record, reputation, repute, sense, set, shape,  
> singularity, specialty, spirit, standing, streak, style, temper,  
> temperament, tone, trait, turn, type, vein
>
> affection, aspect, attribute, badge, bag, bearing, bent, caliber,  
> cast, character, complexion, component, differentia, disposition,  
> distinction, earmark, endowment, essence, essential, faculty,  
> flavor, frame, idiosyncrasy, inclination, individuality, mannerism,  
> mark, mood, nature, originality, particularity, peculiarity,  
> personality, point, property, quality, singularity, specialty,  
> streak, stripe, style, symptom, temperament, tendency, thing,  
> thumbprint, tinge, tone, trademark, trait
>
>
> On Jul 18, 2007, at 2:22 PM, Craig L Russell wrote:
>
>> Top 80 candidates to replace persistent:
>>
>> abiding, constant, dependable, diuturnal, enduring, fast, firm,  
>> fixed, impervious, lasting, long-continued, long-lasting,  
>> perdurable, perduring, permanent, persistent, reliable, resistant,  
>> sound, stable, stout, strong, substantial, tenacious, tough,  
>> abiding, ageless, always, amaranthine, boundless, ceaseless,  
>> constant, continual, continued, continuous, dateless, deathless,  
>> enduring, everlasting, forever, illimitable, immemorial, immortal,  
>> immutable, imperishable, incessant, indefinite, indestructible,  
>> infinite, interminable, lasting, never-ending, perdurable,  
>> perennial, permanent, perpetual, persistent, relentless, termless,  
>> timeless, unbroken, unceasing, undying, unending, unfading,  
>> uninterrupted, unremitting, without end
>>
>> @WithoutEnd(name="name")
>>
>> Craig
>>
>> On Jul 18, 2007, at 2:18 PM, Craig L Russell wrote:
>>
>>> Hi Andy,
>>>
>>> On Jul 18, 2007, at 1:46 PM, Andy Jefferson wrote:
>>>
>>>> Hi Craig,
>>>>
>>>>> It might be a good time (as we're almost done with this) to  
>>>>> replace
>>>>> @Field and @Property with @Persistent. That would make it  
>>>>> easier to
>>>>> describe that either a field or property is being described.
>>>>
>>>> While I agree totally with merging @Field and @Property, the use of
>>>> @Persistent is not appropriate.
>>>>
>>>> @PersistenceCapable
>>>> public class MyClass
>>>> {
>>>>     @Persistent(persistenceModifier=FieldPersistenceModifier.NONE)
>>>
>>> This is another anomaly: FieldPersistenceModifier should become  
>>> PersistenceModifier.
>>>
>>>>     String someFieldThatIsNotPersistent
>>>> }
>>>>
>>>>
>>>> so I tag a field that is not persistent with @Persistent ?
>>>
>>> Doesn't bother me as much as duplicating Field/Property all over.
>>>
>>> How about creating a new tag like @NotPersistent. To go along  
>>> with @Transactional and @Persistent.
>>>>
>>>> Any other idea for name? that suggests field/method/property ?
>>>
>>> Since you agree with the direction, I'll try to plumb the depths  
>>> of my vocabulary...
>>>
>>> Craig
>>>>
>>>>
>>>>
>>>> -- 
>>>> Andy  (Java Persistent Objects - http://www.jpox.org)
>>>
>>> Craig Russell
>>> Architect, Sun Java Enterprise System http://java.sun.com/ 
>>> products/jdo
>>> 408 276-5638 mailto:Craig.Russell@sun.com
>>> P.S. A good JDO? O, Gasp!
>>>
>>
>> Craig Russell
>> Architect, Sun Java Enterprise System http://java.sun.com/products/ 
>> jdo
>> 408 276-5638 mailto:Craig.Russell@sun.com
>> P.S. A good JDO? O, Gasp!
>>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
Looking some more, expanding the search radius:

aspect, character, characteristic, facet, idiosyncrasy, indication,  
mark, note, particularity, peculiarity, point, property, quality,  
quirk, sign, speciality, symbol, trait, virtue

appearance, aspect, attribute, badge, bent, caliber, cast, complex,  
complexion, constitution, crasis, disposition, emotions, estimation,  
ethos, frame, genius, grain, habit, humor, kind, makeup, mettle,  
mood, morale, mystique, nature, personality, quality, record,  
reputation, repute, sense, set, shape, singularity, specialty,  
spirit, standing, streak, style, temper, temperament, tone, trait,  
turn, type, vein

affection, aspect, attribute, badge, bag, bearing, bent, caliber,  
cast, character, complexion, component, differentia, disposition,  
distinction, earmark, endowment, essence, essential, faculty, flavor,  
frame, idiosyncrasy, inclination, individuality, mannerism, mark,  
mood, nature, originality, particularity, peculiarity, personality,  
point, property, quality, singularity, specialty, streak, stripe,  
style, symptom, temperament, tendency, thing, thumbprint, tinge,  
tone, trademark, trait


On Jul 18, 2007, at 2:22 PM, Craig L Russell wrote:

> Top 80 candidates to replace persistent:
>
> abiding, constant, dependable, diuturnal, enduring, fast, firm,  
> fixed, impervious, lasting, long-continued, long-lasting,  
> perdurable, perduring, permanent, persistent, reliable, resistant,  
> sound, stable, stout, strong, substantial, tenacious, tough,  
> abiding, ageless, always, amaranthine, boundless, ceaseless,  
> constant, continual, continued, continuous, dateless, deathless,  
> enduring, everlasting, forever, illimitable, immemorial, immortal,  
> immutable, imperishable, incessant, indefinite, indestructible,  
> infinite, interminable, lasting, never-ending, perdurable,  
> perennial, permanent, perpetual, persistent, relentless, termless,  
> timeless, unbroken, unceasing, undying, unending, unfading,  
> uninterrupted, unremitting, without end
>
> @WithoutEnd(name="name")
>
> Craig
>
> On Jul 18, 2007, at 2:18 PM, Craig L Russell wrote:
>
>> Hi Andy,
>>
>> On Jul 18, 2007, at 1:46 PM, Andy Jefferson wrote:
>>
>>> Hi Craig,
>>>
>>>> It might be a good time (as we're almost done with this) to replace
>>>> @Field and @Property with @Persistent. That would make it easier to
>>>> describe that either a field or property is being described.
>>>
>>> While I agree totally with merging @Field and @Property, the use of
>>> @Persistent is not appropriate.
>>>
>>> @PersistenceCapable
>>> public class MyClass
>>> {
>>>     @Persistent(persistenceModifier=FieldPersistenceModifier.NONE)
>>
>> This is another anomaly: FieldPersistenceModifier should become  
>> PersistenceModifier.
>>
>>>     String someFieldThatIsNotPersistent
>>> }
>>>
>>>
>>> so I tag a field that is not persistent with @Persistent ?
>>
>> Doesn't bother me as much as duplicating Field/Property all over.
>>
>> How about creating a new tag like @NotPersistent. To go along with  
>> @Transactional and @Persistent.
>>>
>>> Any other idea for name? that suggests field/method/property ?
>>
>> Since you agree with the direction, I'll try to plumb the depths  
>> of my vocabulary...
>>
>> Craig
>>>
>>>
>>>
>>> -- 
>>> Andy  (Java Persistent Objects - http://www.jpox.org)
>>
>> Craig Russell
>> Architect, Sun Java Enterprise System http://java.sun.com/products/ 
>> jdo
>> 408 276-5638 mailto:Craig.Russell@sun.com
>> P.S. A good JDO? O, Gasp!
>>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
Top 80 candidates to replace persistent:

abiding, constant, dependable, diuturnal, enduring, fast, firm,  
fixed, impervious, lasting, long-continued, long-lasting, perdurable,  
perduring, permanent, persistent, reliable, resistant, sound, stable,  
stout, strong, substantial, tenacious, tough, abiding, ageless,  
always, amaranthine, boundless, ceaseless, constant, continual,  
continued, continuous, dateless, deathless, enduring, everlasting,  
forever, illimitable, immemorial, immortal, immutable, imperishable,  
incessant, indefinite, indestructible, infinite, interminable,  
lasting, never-ending, perdurable, perennial, permanent, perpetual,  
persistent, relentless, termless, timeless, unbroken, unceasing,  
undying, unending, unfading, uninterrupted, unremitting, without end

@WithoutEnd(name="name")

Craig

On Jul 18, 2007, at 2:18 PM, Craig L Russell wrote:

> Hi Andy,
>
> On Jul 18, 2007, at 1:46 PM, Andy Jefferson wrote:
>
>> Hi Craig,
>>
>>> It might be a good time (as we're almost done with this) to replace
>>> @Field and @Property with @Persistent. That would make it easier to
>>> describe that either a field or property is being described.
>>
>> While I agree totally with merging @Field and @Property, the use of
>> @Persistent is not appropriate.
>>
>> @PersistenceCapable
>> public class MyClass
>> {
>>     @Persistent(persistenceModifier=FieldPersistenceModifier.NONE)
>
> This is another anomaly: FieldPersistenceModifier should become  
> PersistenceModifier.
>
>>     String someFieldThatIsNotPersistent
>> }
>>
>>
>> so I tag a field that is not persistent with @Persistent ?
>
> Doesn't bother me as much as duplicating Field/Property all over.
>
> How about creating a new tag like @NotPersistent. To go along with  
> @Transactional and @Persistent.
>>
>> Any other idea for name? that suggests field/method/property ?
>
> Since you agree with the direction, I'll try to plumb the depths of  
> my vocabulary...
>
> Craig
>>
>>
>>
>> -- 
>> Andy  (Java Persistent Objects - http://www.jpox.org)
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Craig L Russell <Cr...@Sun.COM>.
Hi Andy,

On Jul 18, 2007, at 1:46 PM, Andy Jefferson wrote:

> Hi Craig,
>
>> It might be a good time (as we're almost done with this) to replace
>> @Field and @Property with @Persistent. That would make it easier to
>> describe that either a field or property is being described.
>
> While I agree totally with merging @Field and @Property, the use of
> @Persistent is not appropriate.
>
> @PersistenceCapable
> public class MyClass
> {
>     @Persistent(persistenceModifier=FieldPersistenceModifier.NONE)

This is another anomaly: FieldPersistenceModifier should become  
PersistenceModifier.

>     String someFieldThatIsNotPersistent
> }
>
>
> so I tag a field that is not persistent with @Persistent ?

Doesn't bother me as much as duplicating Field/Property all over.

How about creating a new tag like @NotPersistent. To go along with  
@Transactional and @Persistent.
>
> Any other idea for name? that suggests field/method/property ?

Since you agree with the direction, I'll try to plumb the depths of  
my vocabulary...

Craig
>
>
>
> -- 
> Andy  (Java Persistent Objects - http://www.jpox.org)

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: DISCUSS remove @Field and @Property; add @Persistent

Posted by Andy Jefferson <an...@jpox.org>.
Hi Craig,

> It might be a good time (as we're almost done with this) to replace
> @Field and @Property with @Persistent. That would make it easier to
> describe that either a field or property is being described.

While I agree totally with merging @Field and @Property, the use of 
@Persistent is not appropriate. 

@PersistenceCapable
public class MyClass
{
    @Persistent(persistenceModifier=FieldPersistenceModifier.NONE)
    String someFieldThatIsNotPersistent
}


so I tag a field that is not persistent with @Persistent ?

Any other idea for name? that suggests field/method/property ?



-- 
Andy  (Java Persistent Objects - http://www.jpox.org)