IssueLog has the list of changes requested by the community.
ServiceLoader
to find a JDO PersistenceManagerFactory
implementation.
List.get(int)
in JDOQL query.
charAt(int)
applies to String
typestartsWith(String, int)
applies to String
typelength()
applies to String
typetrim()
applies to String
typeordinal()
applies to Enum
typestoString()
applies to Enum
typesgetHour()
applies to java.util.Date
typegetMinutes()
applies to java.util.Date
typegetSeconds()
applies to java.util.Date
typegetDay()
applies to java.util.Date
typegetMonth()
applies to java.util.Date
typegetYear()
applies to java.util.Date
typeMath.cos(number)
static method in java.lang.Math, applies to double
typeMath.sin(number)
static method in java.lang.Math, applies to double
typeMath.tan(number)
static method in java.lang.Math, applies to double
typeJDOHelper.getVersion(Object)
static method in JDOHelper
, allows using the version of an instance directly in a query
PersistenceManager
instances.
initialValue
and allocationSize
to Sequence
metadata (annotations and xml).
SingleFieldIdentity
classes to implement Comparable
so they can be used in non-persistent ordered Set or Map instances.
ReadOnly
to PersistenceManagerFactory
to allow fail-fast on applications that use a read-only data store.
PersistenceManagerFactory
.
PersistenceManagerFactory
and add the getPersistenceManagerFactory
... methods to the PersistenceManagerFactory
interface. This change allows JDOHelper
to use Java 6 ServiceLoader
in future.
PersistenceManager
and PersistenceManagerFactory
to allow a user to get the current time and date from the server. Allow the PersistenceManagerFactory
to be configured statically with TimeZone
and Locale in case the information is not available from the server itself.
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.
ObjectState
enum and convenience methods in JDOHelper
to return the ObjectState
of an instance.
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....
evictAll
if the parameter is a persistent interface. This comment also applies to the DataStoreCache
interface method void evictAll (Class pcClass, boolean subclasses)
.
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. \\ |
DetachAllOnCommit = true
should be to transient-clean. Also, state changes need to be added for detach methods and serialization.
detachCopy
should be removed from the list of methods that throw exceptions if applied to detached-clean or detached-dirty instances.
JDOFatalInternalException
is thrown".
public byte fetchByteField(int fieldNumber);
to ObjectIdFieldSupplier
.
public byte storeByteField(int fieldNumber, byte value);
to ObjectIdFieldConsumer
.
class JDOHelper {
public JDOHelper();
JDOHelper
on which to invoke methods is preferable to the use of static methods. For this purpose, a public constructor is provided.
PersistenceManager
proxy that can be used in web and ejb containers to dynamically bind to the transaction-associated PersistenceManager
.
ObjectIdentity
constructors.
public synchronized void registerDateFormat(java.text.DateFormat df);
public java.util.Collection getRegisteredClasses();
public static void checkAuthorizedStateManagerClass(Class smClass);
public static void registerAuthorizedStateManagerClasses(java.util.Collection smClasses) throws SecurityException;
PersistenceManagerFactory
that are consistent with JPA specification of TransactionType
and Persistence Unit Name.
PersistenceManager
if it extends Serializable
and writeObject
is called.
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.
JDOUserException
is thrown. " should be removed.
public int setMaxFetchDepth();
to public int getMaxFetchDepth();
fetch-depth
to recursion-depth
in the example.
JDOUserCallbackException extends javax.jdo.JDOUserException
<!ATTLIST property field-type CDATA #IMPLIED>
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."
protected static int jdoGetManagedFieldCount () { return jdoFieldNames.length; } |
protected static int jdoGetManagedFieldCount () { return <enhancer-generated constant>; } |
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"; |
Add extensions\[\] to the @Order annotation to mirror the xml. \\ |
These are changes proposed for JDO 2 to better support JDK 1.5.
PersistenceManager
methods to be generic. Note that these changes are source compatible with existing application programs.
JDO 2.0 |
JDO 2.0 Maintenance Release |
||
Object getObjectById (Class cls, Object key) |
T getObjectById (Class<T> cls, Object key) |
||
Object newInstance(Class persistenceCapable) |
T newInstance(Class<T> persistenceCapable) |
||
Object makePersistent (Object pc) |
T makePersistent (T pc) |
||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="b198fa66-bf18-4b3b-9ddf-034662633d50"><ac:plain-text-body><![CDATA[ |
Object[] makePersistentAll (Object[] pcs) |
T[] makePersistentAll (T[] pcs) |
]]></ac:plain-text-body></ac:structured-macro> |
Collection makePersistentAll (Collection pcs) |
Collection<T> makePersistentAll (Collection<T> pcs) |
||
Object detachCopy(Object pc) |
T detachCopy(T pc) |
||
Collection detachCopyAll(Collection pcs) |
Collection<T> detachCopyAll(Collection<T> pcs) |
||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="4782e666-09c9-4847-8921-3732cf301522"><ac:plain-text-body><![CDATA[ |
Object[] detachCopyAll(Object[] pcs) |
T[] detachCopyAll(T[] pcs) |
]]></ac:plain-text-body></ac:structured-macro> |