You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by ba...@apache.org on 2002/08/06 20:45:13 UTC
cvs commit: jakarta-commons-sandbox/simplestore/src/xmldb/org/apache/commons/simplestore/xmldb XmlDbStorage.java
baliuka 2002/08/06 11:45:13
Modified: simplestore/src/java/org/apache/commons/simplestore/cache/impl
SynchronizedCache.java
simplestore/src/java/org/apache/commons/simplestore/persistence/impl
AbstractStorage.java MetaClassImpl.java
PersistenceManagerImpl.java PersistentProxy.java
simplestore/src/jdbc/org/apache/commons/simplestore/jdbc
DBStorage.java
simplestore/src/xmldb/org/apache/commons/simplestore/xmldb
XmlDbStorage.java
Log:
started refactoring
Revision Changes Path
1.2 +3 -1 jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/cache/impl/SynchronizedCache.java
Index: SynchronizedCache.java
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/cache/impl/SynchronizedCache.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- SynchronizedCache.java 11 Feb 2002 20:23:15 -0000 1.1
+++ SynchronizedCache.java 6 Aug 2002 18:45:13 -0000 1.2
@@ -102,5 +102,7 @@
mCache.put(key, value);
}
}
+
+
}
1.17 +6 -3 jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/persistence/impl/AbstractStorage.java
Index: AbstractStorage.java
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/persistence/impl/AbstractStorage.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- AbstractStorage.java 9 Jun 2002 08:01:31 -0000 1.16
+++ AbstractStorage.java 6 Aug 2002 18:45:13 -0000 1.17
@@ -243,10 +243,13 @@
}
public final Object retrieveObject(Class clasz,Object id){
- Object result = context.getCache().get(id);
+
+ Object key = new KeyPair( context.getMetaClass(clasz) ,id);
+
+ Object result = context.getCache().get( key );
if(result == null){
result = retrieveObjectInternal(clasz,id);
- context.getCache().put(id,result);
+ context.getCache().put( key , result );
}
return result;
}
1.18 +3 -3 jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/persistence/impl/MetaClassImpl.java
Index: MetaClassImpl.java
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/persistence/impl/MetaClassImpl.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- MetaClassImpl.java 5 Aug 2002 20:02:02 -0000 1.17
+++ MetaClassImpl.java 6 Aug 2002 18:45:13 -0000 1.18
@@ -552,10 +552,10 @@
(PropertyChangeListener[])listeners.toArray( LITENETS_TYPE );
String propertyName = descriptors[index].getName();
- Object source = context.getCache().get( sourceOid );
+ Object source = context.getCache().get( new KeyPair(this, sourceOid) );
if( source == null ){
- source = sourceOid;
+ throw new IllegalStateException( sourceOid + " not found in cache" );
}
PropertyChangeEvent pche = new PropertyChangeEvent( source, propertyName,
oldValue, newValue);
1.12 +5 -5 jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/persistence/impl/PersistenceManagerImpl.java
Index: PersistenceManagerImpl.java
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/persistence/impl/PersistenceManagerImpl.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- PersistenceManagerImpl.java 5 Aug 2002 20:08:55 -0000 1.11
+++ PersistenceManagerImpl.java 6 Aug 2002 18:45:13 -0000 1.12
@@ -104,9 +104,9 @@
public Object createInstance( Class aclass ) {
-
- Persistent p = context.getMetaClass(aclass).newInstance();
- context.getCache().put( p.getOID(), p );
+ MetaClass mclass = context.getMetaClass(aclass);
+ Persistent p = mclass.newInstance();
+ context.getCache().put( new KeyPair( mclass , p.getOID()), p );
Object key = new KeyPair(aclass,ALL);
java.util.Set cachedSet = (java.util.Set)context.getCache().get(key);
@@ -124,7 +124,7 @@
public Set findAll(Class clasz) throws StorageException {
- Object key = new KeyPair(clasz,ALL);
+ Object key = new KeyPair( clasz, ALL );
java.util.Set cachedSet = (java.util.Set)context.getCache().get(key);
if(cachedSet != null)
return cachedSet;
1.42 +6 -6 jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/persistence/impl/PersistentProxy.java
Index: PersistentProxy.java
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/simplestore/src/java/org/apache/commons/simplestore/persistence/impl/PersistentProxy.java,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- PersistentProxy.java 5 Aug 2002 20:02:02 -0000 1.41
+++ PersistentProxy.java 6 Aug 2002 18:45:13 -0000 1.42
@@ -97,7 +97,7 @@
private Object m_props[] ;
private Object m_oid = null;
private int state = 0;
- private Thread lock;
+
private Persistent m_object;
private Class m_clazz;
@@ -338,11 +338,11 @@
return ;
}
- //Dirty :
- lock = Thread.currentThread();
Object newValue = param;
+ setState(true,DIRTY);
+
if( m_metaClass.isReference(method) ){
if( param != null ){
newValue = ((Persistent)param).getOID();
@@ -350,7 +350,7 @@
setProperty(index, newValue );
}else{
setProperty(index, param);
-
+ return;
}
@@ -372,7 +372,7 @@
set.add(m_object);
}
- setState(true,DIRTY);
+
}
1.6 +4 -4 jakarta-commons-sandbox/simplestore/src/jdbc/org/apache/commons/simplestore/jdbc/DBStorage.java
Index: DBStorage.java
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/simplestore/src/jdbc/org/apache/commons/simplestore/jdbc/DBStorage.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- DBStorage.java 5 Aug 2002 20:02:02 -0000 1.5
+++ DBStorage.java 6 Aug 2002 18:45:13 -0000 1.6
@@ -432,8 +432,8 @@
if (index == 0 ) {
//try to find in cache first
-
- Persistent p = (Persistent) context.getCache().get(value);
+ Object key = new KeyPair( mClass, value );
+ Persistent p = (Persistent) context.getCache().get(key);
if ( p != null ) {
if( objects.add(p) && callback != null ){
@@ -447,7 +447,7 @@
final MetaObject pc = p.getMetaObject();
props = pc.getProperties();
- context.getCache().put(value,p);
+ context.getCache().put(key,p);
if( objects.add(p) && callback != null ){
return callback.nextObject(p);
1.6 +6 -15 jakarta-commons-sandbox/simplestore/src/xmldb/org/apache/commons/simplestore/xmldb/XmlDbStorage.java
Index: XmlDbStorage.java
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/simplestore/src/xmldb/org/apache/commons/simplestore/xmldb/XmlDbStorage.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- XmlDbStorage.java 25 May 2002 13:48:59 -0000 1.5
+++ XmlDbStorage.java 6 Aug 2002 18:45:13 -0000 1.6
@@ -55,17 +55,8 @@
package org.apache.commons.simplestore.xmldb;
import org.apache.commons.simplestore.cache.Cache;
-import org.apache.commons.simplestore.persistence.InternalTransaction;
-import org.apache.commons.simplestore.persistence.Storage;
-import org.apache.commons.simplestore.persistence.MetaObject;
-import org.apache.commons.simplestore.persistence.MetaClass;
-import org.apache.commons.simplestore.persistence.ObjectNotFound;
-import org.apache.commons.simplestore.persistence.Persistent;
-import org.apache.commons.simplestore.persistence.StorageException;
-import org.apache.commons.simplestore.persistence.Context;
-import org.apache.commons.simplestore.persistence.IllegalTransactionStateException;
-import org.apache.commons.simplestore.persistence.EnumeratorCallback;
-import org.apache.commons.simplestore.persistence.impl.AbstractStorage;
+import org.apache.commons.simplestore.persistence.*;
+import org.apache.commons.simplestore.persistence.impl.*;
import org.xmldb.api.base.*;
import org.xmldb.api.modules.*;
@@ -503,8 +494,8 @@
if ( name.equals(mClasz.getName()) ) {
Object value = parse( mClasz.getOIDType(),attributes.getValue(mClasz.getOIDName() ));
-
- Persistent p = (Persistent) cntxt.getCache().get(value);
+ Object key = new KeyPair( mClasz, value );
+ Persistent p = (Persistent) cntxt.getCache().get(key);
if ( p != null ) {
props = null;
if( objects.add(p)){
@@ -518,7 +509,7 @@
props = pc.getProperties();
if( objects.add(p)){
- cntxt.getCache().put(value,p);
+ cntxt.getCache().put(key,p);
if( callback != null)
callback.nextObject(p);
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>