db-jdo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Jdo Wiki] Update of "ChangeLog" by MichaelBouschen
Date Sat, 18 Feb 2012 20:37:25 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jdo Wiki" for change notification.

The "ChangeLog" page has been changed by MichaelBouschen:
http://wiki.apache.org/jdo/ChangeLog?action=diff&rev1=67&rev2=68

Comment:
Moved items 12-17 from proposed to accepted

  = This is the list of changes for maintenance of JSR-243. =
  IssueLog has the list of changes requested by the community.
+ 
  == PROPOSED ==
- 
   1. Run the TCK using maven 2 instead of maven 1. Add a special maven project exectck that
executes the tck tests in various configurations.
  
   1. Use Java 6 {{{ServiceLoader}}} to find a JDO {{{PersistenceManagerFactory}}} implementation.
@@ -13, +13 @@

   1. Change the return type for avg in JDOQL query.
  
   1. Add methods to JDOQL query:
-   a. {{{charAt(int)}}} applies to {{{String}}} type 
+   a. {{{charAt(int)}}} applies to {{{String}}} type
-   a. {{{startsWith(String, int)}}} applies to {{{String}}} type 
+   a. {{{startsWith(String, int)}}} applies to {{{String}}} type
-   a. {{{length()}}} applies to {{{String}}} type 
+   a. {{{length()}}} applies to {{{String}}} type
-   a. {{{trim()}}} applies to {{{String}}} type 
+   a. {{{trim()}}} applies to {{{String}}} type
-   a. {{{ordinal()}}} applies to {{{Enum}}} types 
+   a. {{{ordinal()}}} applies to {{{Enum}}} types
-   a. {{{toString()}}} applies to {{{Enum}}} types 
+   a. {{{toString()}}} applies to {{{Enum}}} types
-   a. {{{getHour()}}} applies to {{{java.util.Date}}} type 
+   a. {{{getHour()}}} applies to {{{java.util.Date}}} type
-   a. {{{getMinutes()}}} applies {{{to java.util.Date}}} type 
+   a. {{{getMinutes()}}} applies {{{to java.util.Date}}} type
-   a. {{{getSeconds()}}} applies {{{to java.util.Date}}} type 
+   a. {{{getSeconds()}}} applies {{{to java.util.Date}}} type
-   a. {{{getDay()}}} applies to {{{java.util.Date}}} type 
+   a. {{{getDay()}}} applies to {{{java.util.Date}}} type
-   a. {{{getMonth()}}} applies to {{{java.util.Date}}} type 
+   a. {{{getMonth()}}} applies to {{{java.util.Date}}} type
-   a. {{{getYear()}}} applies to {{{java.util.Date}}} type 
+   a. {{{getYear()}}} applies to {{{java.util.Date}}} type
-   a. {{{Math.cos(number)}}} static method in java.lang.Math, applies to {{{double}}} type

+   a. {{{Math.cos(number)}}} static method in java.lang.Math, applies to {{{double}}} type
-   a. {{{Math.sin(number)}}} static method in java.lang.Math, applies to {{{double}}} type

+   a. {{{Math.sin(number)}}} static method in java.lang.Math, applies to {{{double}}} type
-   a. {{{Math.tan(number)}}} static method in java.lang.Math, applies to {{{double}}} type

+   a. {{{Math.tan(number)}}} static method in java.lang.Math, applies to {{{double}}} type
    a. {{{JDOHelper.getVersion(Object)}}} static method in {{{JDOHelper}}}, allows using the
version of an instance directly in a query
  
   1. Allow specifying position of fields in generated schema using the "position" attribute
or annotation.
@@ -42, +42 @@

  
   1. Provide a boolean property to serialize access to objects. Add methods to set and clear
the property. Add xml metadata to specify the property per class or interface.
  
-  1. Provide an API to dynamically create and access metadata equivalent to specifying metadata
via annotations or xml.
- 
-  1. Change the meaning of the validate flag in getObjectById to allow users to assert that
the class of the oid is the exact class of the datastore instance.
- 
-  1. Add extensions[] to the @Order annotation to mirror the xml.
- 
-  1. Deprecate the api2-legacy and tck2-legacy projects as these are for use with JDK 1.4
and no longer need to be maintained.
- 
-  1. Add an API to cancel a running query.
- 
-  1. Add an API and PMF properties to get and set datastore read and write timeout values.
- 
  == ACCEPTED ==
- 
-  1. Allow multiple fields (properties) to be used for ordering persistent Lists or Maps.

+  1. Allow multiple fields (properties) to be used for ordering persistent Lists or Maps.
  
   1. Specify the behavior at flush time if the user has inserted elements or entries out
of order in ordered fields (properties).
  
@@ -78, +65 @@

  
   1. Remove the "serialized" attribute from 18.15.8 since the ordering column is not serialized.
  
+  1. Add property {{{CopyOnAttach}}} to {{{PersistenceManager}}} and {{{PersistenceManagerFactory}}}.
With the property set to true, makes a copy of the detached instance on {{{makePersistent}}}.
If the property is set to false, it attaches the detached instance itself.
+ 
+  1. Add {{{ObjectState}}} enum and convenience methods in {{{JDOHelper}}} to return the
{{{ObjectState}}} of an instance.
+ 
+  1. Add method {{{void evictAll (boolean subclasses, Class pcClass)}}} to {{{PersistenceManager}}}.
This allows to evict instances for a particular class. Change signatures of {{{DataStoreCache}}}
methods pinAll, unpinAll, and evictAll from {{{(Class pcClass, boolean subclasses)}}} to {{{(boolean
subclasses, Class pcClass)}}} to accommodate adding methods that change the pcClass parameter
from Class to Class....
+ 
+  1. Clarify the behavior of method {{{evictAll}}} if the parameter is a persistent interface.
This comment also applies to the {{{DataStoreCache}}} interface method {{{void evictAll (Class
pcClass, boolean subclasses)}}}.
+ 
+  1. Require that the implementation not hold a strong reference to flushed dirty instances,
allowing these instances to be garbage collected.
+ 
+  1. Change signatures of {{{PersistenceManager}}} methods that take {{{Object[]}}} as an
argument to take {{{Object...}}} as an argument. These signatures are source and binary compatible
with existing programs. Where the {{{Object...}}} parameter would not be the last parameter,
deprecate the method and reorder the parameters so {{{Object...}}} is last.
  
   1. In 5.4.1, Compound Identity should be updated to reflect that for key fields of reference
types, the type of the key field is the reference type in the class but the oid of the reference
type in the oid class.
  
@@ -94, +92 @@

   1. In section 7.5, add {{{public byte storeByteField(int fieldNumber, byte value);}}} to
{{{ObjectIdFieldConsumer}}}.
  
   1. In Chapter 8, add after {{{class JDOHelper {}}}
- 
-   {{{public JDOHelper();}}}
+   . {{{public JDOHelper();}}}
- 
   For some usage patterns, an instance of {{{JDOHelper}}} on which to invoke methods is preferable
to the use of static methods. For this purpose, a public constructor is provided.
  
   1. In Chapter 8, add a convenience method that returns a {{{PersistenceManager}}} proxy
that can be used in web and ejb containers to dynamically bind to the transaction-associated
{{{PersistenceManager}}}.
  
   1. In Chapter 9, add section on managing date formatting for {{{ObjectIdentity}}} constructors.
-   {{{public synchronized void registerDateFormat(java.text.DateFormat df);}}}
+   . {{{public synchronized void registerDateFormat(java.text.DateFormat df);}}}
  
   1. In 9.4, add method to retrieve persistence-capable classes that have been registered.
-   {{{public java.util.Collection getRegisteredClasses();}}}
+   . {{{public java.util.Collection getRegisteredClasses();}}}
  
   1. In 9.5, add method to verify that the class is authorized to be a state manager.
-   {{{public static void checkAuthorizedStateManagerClass(Class smClass);}}}
+   . {{{public static void checkAuthorizedStateManagerClass(Class smClass);}}}
  
   1. In 9.5, add method to register multiple state manager classes.
-   {{{public static void registerAuthorizedStateManagerClasses(java.util.Collection smClasses)
throws SecurityException;}}}
+   . {{{public static void registerAuthorizedStateManagerClasses(java.util.Collection smClasses)
throws SecurityException;}}}
  
   1. In Chapter 11, add properties for configuring {{{PersistenceManagerFactory}}} that are
consistent with JPA specification of {{{TransactionType}}} and Persistence Unit Name.
  
-  1. In Chapter 12, specify the behavior of {{{PersistenceManager}}} if it extends {{{Serializable}}}
and {{{writeObject}}} is called. 
+  1. In Chapter 12, specify the behavior of {{{PersistenceManager}}} if it extends {{{Serializable}}}
and {{{writeObject}}} is called.
  
   1. In 12.6.6, clarify that a {{{JDOUserException}}} will be thrown when invoking {{{newInstance}}}:
if a class is not persistence-capable, or does not declare a public no-args constructor; if
an interface is not persistence-capable or declares methods that are not defined as persistent
properties; if an abstract class is not persistence-capable or declares abstract methods that
are not defined as persistent properties.
  
@@ -144, +140 @@

   1. In 15.3, add text to describe updating the other side of relationships where this side
is deleted. This maintains referential integrity for delete as well as update.
  
   1. Add to 17.1.11
-   {{{JDOUserCallbackException extends javax.jdo.JDOUserException}}}
+   . {{{JDOUserCallbackException extends javax.jdo.JDOUserException}}}
  
   1. In Chapter 18, add an xml element to specify the fetch plan to use for a query.
  
   1. In 18.15.1, change  "(e.g. a field of type Object can specify field-type=”Integer”)."
to "(e.g. an element of type Object can specify element-type=”Integer”).
  
   1. In Chapter 18, add to .jdo metadata:
- 
-   {{{<!ATTLIST property field-type CDATA #IMPLIED> }}}
+   . {{{<!ATTLIST property field-type CDATA #IMPLIED> }}}
  
   1. Add to 18.15.1 "The default for dependent-element is false."
  
@@ -164, +159 @@

  
   1. Change 21.13 from "Some methods require a non-null state manager. In these cases, if
the {{{jdoStateManager}}} is null, then {{{IllegalStateException}}} is thrown." to "Some methods
require a non-null state manager. In these cases, if the {{{jdoStateManager}}} is null, then
{{{JDOFatalInternalException}}} is thrown."
  
-  1. Change 21.21.7 Generated jdoGetManagedFieldCount sample implementation to avoid using
the jdoFieldNames field that might be initialized after it is used during initialization of
a subclass. 
+  1. Change 21.21.7 Generated jdoGetManagedFieldCount sample implementation to avoid using
the jdoFieldNames field that might be initialized after it is used during initialization of
a subclass.
   {{{
  protected static int jdoGetManagedFieldCount () {
     return jdoFieldNames.length;
  }
-  }}}
+ }}}
-  to 
+  to
   {{{
  protected static int jdoGetManagedFieldCount () {
     return <enhancer-generated constant>;
- } 
+ }
-  }}}
+ }}}
   1. Add to Chapter 23, constants defined in the {{{JDOPermission}}} class:
   {{{
  public static final javax.jdo.spi.JDOPermission CLOSE_PERSISTENCE_MANAGER_FACTORY = "closePersistenceManagerFactory";
  public static final javax.jdo.spi.JDOPermission GET_METADATA = "getMetadata";
  public static final javax.jdo.spi.JDOPermission MANAGE_METADATA = "manageMetadata";
  public static final javax.jdo.spi.JDOPermission SET_STATE_MANAGER = "setStateManager";
-  }}}
+ }}}
-  1. Add property {{{CopyOnAttach}}} to {{{PersistenceManager}}} and {{{PersistenceManagerFactory}}}.
With the property set to true, makes a copy of the detached instance on {{{makePersistent}}}.
If the property is set to false, it attaches the detached instance itself.
  
-  1. Add {{{ObjectState}}} enum and convenience methods in {{{JDOHelper}}} to return the
{{{ObjectState}}} of an instance.
+  1. Provide an API to dynamically create and access metadata equivalent to specifying metadata
via annotations or xml.
  
-  1. Add method {{{void evictAll (boolean subclasses, Class pcClass)}}} to {{{PersistenceManager}}}.
This allows to evict instances for a particular class. Change signatures of {{{DataStoreCache}}}
methods pinAll, unpinAll, and evictAll from {{{(Class pcClass, boolean subclasses)}}} to {{{(boolean
subclasses, Class pcClass)}}} to accommodate adding methods that change the pcClass parameter
from Class to Class....
+  1. Change the meaning of the validate flag in getObjectById to allow users to assert that
the class of the oid is the exact class of the datastore instance.
  
-  1. Clarify the behavior of method {{{evictAll}}} if the parameter is a persistent interface.
This comment also applies to the {{{DataStoreCache}}} interface method {{{void evictAll (Class
pcClass, boolean subclasses)}}}. 
+  1. Add extensions[] to the @Order annotation to mirror the xml.
  
-  1. Require that the implementation not hold a strong reference to flushed dirty instances,
allowing these instances to be garbage collected.
+  1. Deprecate the api2-legacy and tck2-legacy projects as these are for use with JDK 1.4
and no longer need to be maintained.
  
-  1. Change signatures of {{{PersistenceManager}}} methods that take {{{Object[]}}} as an
argument to take {{{Object...}}} as an argument. These signatures are source and binary compatible
with existing programs. Where the {{{Object...}}} parameter would not be the last parameter,
deprecate the method and reorder the parameters so {{{Object...}}} is last.
+  1. Add an API to cancel a running query.
+ 
+  1. Add an API and PMF properties to get and set datastore read and write timeout values.
  
  === JDK 1.5 changes ===
  These are changes proposed for JDO 2 to better support JDK 1.5.
@@ -201, +197 @@

   1. Add to 6.3 a section requiring support for enum types, including subclasses of enum
types.
  
   1. Change in 12.6 signatures of the following {{{PersistenceManager}}} methods to be generic.
Note that these changes are source compatible with existing application programs.
-   ||JDO 2.0||JDO 2.0 Maintenance Release||
+   ||JDO 2.0 ||JDO 2.0 Maintenance Release ||
-   ||Object getObjectById (Class cls, Object key)|| <T> T getObjectById (Class<T>
cls, Object key)||
+   ||Object getObjectById (Class cls, Object key) ||T getObjectById (Class<T> cls,
Object key) ||
-   ||Object newInstance(Class persistenceCapable)|| <T> T newInstance(Class<T>
persistenceCapable)||
+   ||Object newInstance(Class persistenceCapable) ||T newInstance(Class<T> persistenceCapable)
||
-   ||Object makePersistent (Object pc)|| <T> T makePersistent (T pc)||
+   ||Object makePersistent (Object pc) ||T makePersistent (T pc) ||
-   ||Object[ ] makePersistentAll (Object[ ] pcs)|| <T> T[ ] makePersistentAll (T[ ]
pcs)||
+   ||Object[ ] makePersistentAll (Object[ ] pcs) ||T[ ] makePersistentAll (T[ ] pcs) ||
-   ||Collection makePersistentAll (Collection pcs)|| <T> Collection<T> makePersistentAll
(Collection<T> pcs)||
+   ||Collection makePersistentAll (Collection pcs) ||Collection<T> makePersistentAll
(Collection<T> pcs) ||
-   ||Object detachCopy(Object pc) || <T> T detachCopy(T pc) ||
+   ||Object detachCopy(Object pc) ||T detachCopy(T pc) ||
-   ||Collection detachCopyAll(Collection pcs) || <T> Collection<T> detachCopyAll(Collection<T>
pcs) ||
+   ||Collection detachCopyAll(Collection pcs) ||Collection<T> detachCopyAll(Collection<T>
pcs) ||
-   ||Object[ ] detachCopyAll(Object[ ] pcs) || <T> T[ ] detachCopyAll(T[ ] pcs) ||
+   ||Object[ ] detachCopyAll(Object[ ] pcs) ||T[ ] detachCopyAll(T[ ] pcs) ||
+ 
+ 
  
   1. Add to 15.1 a paragraph describing that mapping an enum to a fixed-precision numeric
type uses the ordinal() value for storage; mapping to a character column type (CHAR, VARCHAR,
etc.) uses the name() value for storage; mapping to any other column type is an error.
  
@@ -218, +216 @@

   1. Provide interfaces that extend both JDO and JPA in order to make it easier to migrate
applications from JDO to JPA.
  
  == DEFERRED ==
- 
  - none yet -
  

Mime
View raw message