db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Craig L Russell <Craig.Russ...@Sun.COM>
Subject Negative VOTE Issue 138: Define optional features for PMF
Date Mon, 13 Feb 2006 21:00:16 GMT
Javadogs,

Here's the proposed optional feature list for JDO 2. Please make sure  
your favorite optional feature is accurately represented.

<proposed>
Optional Feature Support
Collection supportedOptions();
The JDO implementation might optionally support certain features, and  
will report the features that are supported. The supported query  
languages are included in the returned Collection.
A11.5-1 [This method returns a Collection of String, each String  
instance representing an optional feature of the implementation or a  
supported query language. The following are the values of the String  
for each optional feature in the JDO specification:
javax.jdo.option.TransientTransactional
The JDO implementation supports the transient transactional life  
cycle states.
javax.jdo.option.NontransactionalRead
The JDO implementation supports reading and querying outside a  
transaction.
javax.jdo.option.NontransactionalWrite
The JDO implementation supports the persistent-nontransactional-dirty  
life cycle state.
javax.jdo.option.RetainValues
The JDO implementation supports retaining values of persistent  
instances after commit.
javax.jdo.option.Optimistic
The JDO implementation supports the optimistic transaction semantics.
javax.jdo.option.ApplicationIdentity
The JDO implementation supports application identity for persistent  
classes.
javax.jdo.option.DatastoreIdentity
The JDO implementation supports datastore identity for persistent  
classes.
javax.jdo.option.NonDurableIdentity
The JDO implementation supports nondurable identity for persistent  
classes
javax.jdo.option.ArrayList
The JDO implementation supports persistent field types of ArrayList.
javax.jdo.option.LinkedList
The JDO implementation supports persistent field types of LinkedList.
javax.jdo.option.TreeMap
The JDO implementation supports persistent field types of TreeMap.
javax.jdo.option.TreeSet
The JDO implementation supports persistent field types of TreeSet.
javax.jdo.option.Vector
The JDO implementation supports persistent field types of Vector.
javax.jdo.option.List
The JDO implementation supports persistent field types of List. This  
is now a requirement but the option is for compatibility with JDO 1.0  
where this support was optional.
javax.jdo.option.Array
The JDO implementation supports persistent field types of Array.
javax.jdo.option.NullCollection
The JDO implementation allows null collections to be stored. Most  
relational implementations do not distinguish between empty and null  
collections, and this option will not be set for those implementations.
javax.jdo.option.ChangeApplicationIdentity
The JDO implementation supports changing of the application identity  
of instances.
javax.jdo.option.BinaryCompatibility
The JDO implementation supports the binary compatibility contract.
javax.jdo.option.GetDataStoreConnection
The JDO implementation supports use of a direct datastore connection.
javax.jdo.option.GetJDBCConnection
The JDO implementation supports use of a direct datastore connection  
that implements the java.sql.Connection interface.
javax.jdo.query.SQL
The JDO implementation supports SQL for queries executed via the  
javax.jdo.Query interface.
javax.jdo.option.UnconstrainedQueryVariables]
The JDO implementation supports JDOQL queries that contain a variable  
without a contains clause to constrain the variable.
javax.jdo.option.version.DateTime
The JDO implementation supports use of a the date-time strategy for  
version checking.
javax.jdo.option.version.StateImage
The JDO implementation supports use of the state-image strategy for  
version checking.
javax.jdo.option.PreDirtyEvent
The JDO implementation supports event notifications of changes made  
to persistent instances before the instance is made dirty.
javax.jdo.option.mapping.HeterogeneousObjectType
The JDO implementation supports mapping a persistent field of type  
Object to multiple types. There is no standard way to map this support.
javax.jdo.option.mapping.HeterogeneousInterfaceType
The JDO implementation supports mapping a persistent field of a  
persistent interface type to multiple types. There is no standard way  
to map this support.
javax.jdo.option.mapping.JoinedTablePerClass
The JDO implementation supports mapping persistent class inheritance  
hierarchies to tables in which each class, including abstract  
classes, is mapped to a table; and each table mapped to a subclass  
defines a primary key that has a foreign key relationship to the  
primary key of the table mapped by the superclass.
javax.jdo.option.mapping.JoinedTablePerConcreteClass
The JDO implementation supports mapping persistent class inheritance  
hierarchies to tables in which each concrete class (excluding  
abstract classes) is mapped to a table; and each table mapped to a  
subclass defines a primary key that has a foreign key relationship to  
the primary key of the table mapped by the superclass.
javax.jdo.option.mapping.NonJoinedTablePerConcreteClass
The JDO implementation supports mapping persistent class inheritance  
hierarchies to tables in which each concrete class (excluding  
abstract classes) is mapped to a table; and there is not necessarily  
any foreign key relationship among the mapped tables.
javax.jdo.option.mapping.RelationSubclassTable
The JDO implementation supports mapping persistent fields containing  
relationships to classes in an inheritance relationship that use  
subclass-table as the field mapping strategy.
A11.5-2 [The standard JDO query must be returned as the String:
javax.jdo.query.JDOQL]
Other query languages are represented by a String not defined in this  
specification.
</proposed>

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!


Mime
View raw message