This is the first that I've heard of the static getInstance methods
for InstanceLifecycleListener and DataStoreCache; I thought we would
just do Class.newInstance() using the no-arg constructor (thereby
requiring it). Requiring the developer to provide a static
getInstance method is an unnecessary burden.
I propose adding the behavior of falling back to Class.newInstance()
and requiring a no-arg constructor if there is no static getInstance
method.
-matthew
On Dec 18, 2007, at 1:01 PM, Craig L Russell wrote:
Here's the writeup for allowing the name of listener classes and
datastore cache to be specified as properties in the properties
file, similar to the specification in jdoconfig.xml.
<proposed>
Properties whose key begins with the prefix
"javax.jdo.listener.InstanceLifecycleListener." have special
treatment. The part of the key following the prefix is used as the
class name of a class that implements the static method getInstance
() and returns an instance that implements
javax.jdo.listener.InstanceLifecycleListener. The implementation
constructs an instance of this class, and the value of the key is a
comma-separated list of classes to which the instantiated listener
is registered to listen.
Similarly, properties whose key begins with the prefix
"javax.jdo.datastore.DataStoreCache." have special treatment. The
part of the key following the prefix is used as the class name of a
class that implements the static method getInstance() and returns
an instance that implements javax.jdo.datastore.DataStoreCache. The
implementation constructs an instance of this class and registers
it as the cache for the PersistenceManagerFactory.
</proposed>
Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:[EMAIL PROTECTED]
P.S. A good JDO? O, Gasp!
Matthew Adams
[EMAIL PROTECTED]
http://blog.matthewadams.org