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 Re: Properties for PersistenceManagerFactory
Date Wed, 26 Dec 2007 17:49:32 GMT
Hi Matthew,

After I wrote that, I realized that either a static newInstance or a  
no-args constructor would be equivalent.

The reason I went with the static constructor at first was to account  
for the case where the same listener class was used to listen to  
multiple target classes, and it would be better if there were a  
single instance listening to all target classes.

I'll update the spec per your comment.

Craig

On Dec 26, 2007, at 9:16 AM, Matthew Adams wrote:

> 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:Craig.Russell@sun.com
>> P.S. A good JDO? O, Gasp!
>>
>
> Matthew Adams
> matthew@matthewadams.org
> http://blog.matthewadams.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!


Mime
View raw message