joafip-svn Mailing List for java data object persistence in file (Page 20)
Brought to you by:
luc_peuvrier
You can subscribe to this list here.
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(4) |
Oct
(102) |
Nov
(52) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2012 |
Jan
(4) |
Feb
|
Mar
(14) |
Apr
(116) |
May
(100) |
Jun
(14) |
Jul
|
Aug
|
Sep
(30) |
Oct
|
Nov
(108) |
Dec
(2) |
From: <luc...@us...> - 2011-10-28 03:13:19
|
Revision: 2942 http://joafip.svn.sourceforge.net/joafip/?rev=2942&view=rev Author: luc_peuvrier Date: 2011-10-28 03:13:13 +0000 (Fri, 28 Oct 2011) Log Message: ----------- to break infinite loop in case of problems Modified Paths: -------------- trunk/joafip-rbtree/src/main/java/net/sf/joafip/redblacktree/service/RedBlackTree.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-27 01:46:09
|
Revision: 2941 http://joafip.svn.sourceforge.net/joafip/?rev=2941&view=rev Author: luc_peuvrier Date: 2011-10-27 01:46:02 +0000 (Thu, 27 Oct 2011) Log Message: ----------- test added for auto save Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/service/AbstractDataAccessSession.java trunk/joafip/src/main/java/net/sf/joafip/service/AbstractFilePersistenceDelegatingToStore.java trunk/joafip/src/main/java/net/sf/joafip/service/ExclusiveDataAccessSession.java trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistence.java trunk/joafip/src/main/java/net/sf/joafip/service/IDataAccessSessionCommon.java trunk/joafip/src/main/java/net/sf/joafip/service/IExclusiveDataAccessSession.java trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java trunk/joafip/src/main/java/net/sf/joafip/store/service/IStore.java trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobAsDelegateNotifyDelegating.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java Modified: trunk/joafip/src/main/java/net/sf/joafip/service/AbstractDataAccessSession.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/service/AbstractDataAccessSession.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/service/AbstractDataAccessSession.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -184,6 +184,22 @@ } @Override + public Object getObject(final long dataRecordIdentifier) + throws FilePersistenceException, + FilePersistenceClassNotFoundException, + FilePersistenceInvalidClassException, + FilePersistenceDataCorruptedException, + FilePersistenceNotSerializableException { + final Object object; + synchronized (mutex) { + assertPersistenceOpenned(); + assertOpened(); + object = filePersistence.getObject(dataRecordIdentifier); + } + return object; + } + + @Override @Deprecated public void setEnumState(final Enum<?> enumObject) throws FilePersistenceException { Modified: trunk/joafip/src/main/java/net/sf/joafip/service/AbstractFilePersistenceDelegatingToStore.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/service/AbstractFilePersistenceDelegatingToStore.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/service/AbstractFilePersistenceDelegatingToStore.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -1300,7 +1300,6 @@ } } - @Fortest public Object createObjectReadingInStoreOrGetExisting( final DataRecordIdentifier dataRecordIdentifier) throws FilePersistenceException, Modified: trunk/joafip/src/main/java/net/sf/joafip/service/ExclusiveDataAccessSession.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/service/ExclusiveDataAccessSession.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/service/ExclusiveDataAccessSession.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -24,6 +24,7 @@ import net.sf.joafip.NoStorableAccess; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.store.service.proxy.IInstanceFactory; /** @@ -88,11 +89,22 @@ FilePersistenceClassNotFoundException, FilePersistenceDataCorruptedException, FilePersistenceTooBigForSerializationException { + close(EnumFilePersistenceCloseAction.SAVE); + } + + @Override + public void close(final EnumFilePersistenceCloseAction action) + throws FilePersistenceException, + FilePersistenceInvalidClassException, + FilePersistenceNotSerializableException, + FilePersistenceClassNotFoundException, + FilePersistenceDataCorruptedException, + FilePersistenceTooBigForSerializationException { synchronized (mutex) { try { assertPersistenceOpenned(); assertOpened(); - filePersistence.endExclusiveUse(this); + filePersistence.endExclusiveUse(this, action); } catch (final FilePersistenceException exception) { logger.error(CLOSE_ERROR, exception); throw exception; Modified: trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistence.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistence.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistence.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -38,6 +38,7 @@ import net.sf.joafip.entity.FilePersistencePropertyEntry; import net.sf.joafip.file.service.FileIOException; import net.sf.joafip.heapfile.entity.EnumFileState; +import net.sf.joafip.heapfile.record.entity.DataRecordIdentifier; import net.sf.joafip.heapfile.service.HeapFileState; import net.sf.joafip.heapfile.service.IHeapDataManager; import net.sf.joafip.java.util.PTreeMap; @@ -1030,8 +1031,10 @@ } } - void endExclusiveUse(// NOPMD - final IExclusiveDataAccessSession exclusiveDataAccessSession) + @SuppressWarnings("PMD") + void endExclusiveUse( + final IExclusiveDataAccessSession exclusiveDataAccessSession, + final EnumFilePersistenceCloseAction action) throws FilePersistenceException, FilePersistenceInvalidClassException, FilePersistenceNotSerializableException, @@ -1047,7 +1050,23 @@ throw new FilePersistenceException( "alone data access session miss match"); } - save(true, false); + + // save(true, false); + switch (action) { + case SAVE: + save(true, false); + break; + case DO_NOT_SAVE: + doNotSave(); + break; + case CLEAR: + clearStoreContent(); + break; + default: + throw new FilePersistenceException("unknow action " + + this.action); + } + this.exclusiveDataAccessSession = null;// NOPMD storeEndAccessSession(); } catch (final FilePersistenceException exception) { @@ -1362,6 +1381,20 @@ } } + @SuppressWarnings("PMD") + @StorableAccess + Object getObject(final long dataRecordIdentifier) + throws FilePersistenceException, + FilePersistenceClassNotFoundException, + FilePersistenceInvalidClassException, + FilePersistenceDataCorruptedException, + FilePersistenceNotSerializableException { + synchronized (mutex) { + return createObjectReadingInStoreOrGetExisting(new DataRecordIdentifier( + dataRecordIdentifier)); + } + } + /** * add a persistent object associated to a key * Modified: trunk/joafip/src/main/java/net/sf/joafip/service/IDataAccessSessionCommon.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/service/IDataAccessSessionCommon.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/service/IDataAccessSessionCommon.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -101,8 +101,15 @@ * @throws FilePersistenceException * this data access session not opened */ - Object getObject(final String key) throws FilePersistenceException; + Object getObject(String key) throws FilePersistenceException; + Object getObject(long dataRecordIdentifier) + throws FilePersistenceException, + FilePersistenceClassNotFoundException, + FilePersistenceInvalidClassException, + FilePersistenceDataCorruptedException, + FilePersistenceNotSerializableException; + /** * add a persistent object associated to a key<br> * @@ -114,8 +121,7 @@ * @throws FilePersistenceException * this data access session not opened */ - Object setObject(final String key, final Object object) - throws FilePersistenceException; + Object setObject(String key, Object object) throws FilePersistenceException; /** * remove a persistent object associated to a key<br> @@ -126,7 +132,7 @@ * @throws FilePersistenceException * this data access session not opened */ - Object removeObject(final String key) throws FilePersistenceException; + Object removeObject(String key) throws FilePersistenceException; /** * remove all persistent object<br> @@ -143,7 +149,7 @@ * @throws FilePersistenceException */ @Deprecated - void setEnumState(final Enum<?> enumObject) throws FilePersistenceException; + void setEnumState(Enum<?> enumObject) throws FilePersistenceException; /** * Modified: trunk/joafip/src/main/java/net/sf/joafip/service/IExclusiveDataAccessSession.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/service/IExclusiveDataAccessSession.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/service/IExclusiveDataAccessSession.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -22,6 +22,7 @@ */ package net.sf.joafip.service; +import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.store.service.proxy.IInstanceFactory; /** @@ -86,4 +87,12 @@ FilePersistenceDataCorruptedException, FilePersistenceTooBigForSerializationException; + void close(EnumFilePersistenceCloseAction action) + throws FilePersistenceException, + FilePersistenceInvalidClassException, + FilePersistenceNotSerializableException, + FilePersistenceClassNotFoundException, + FilePersistenceDataCorruptedException, + FilePersistenceTooBigForSerializationException; + } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -438,9 +438,9 @@ } public boolean referenceLost() { - return weakReference!=null && weakReference.get()==null; + return weakReference != null && weakReference.get() == null; } - + @Override public Object getObject() { final Object result; Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/IStore.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/IStore.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/IStore.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -770,8 +770,6 @@ ClassInfo getClassInfoInDataRecord(DataRecordIdentifier dataRecordIdentifier) throws StoreException; - @Fortest - // FIXMELUC may be used by export ObjectAndPersistInfo createObjectReadingInStoreOrGetExisting( DataRecordIdentifier dataRecordIdentifier, boolean notLazy) throws StoreException, StoreClassNotFoundException, Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -1459,7 +1459,6 @@ return changeLogEnabled; } - @Fortest @Override public ObjectAndPersistInfo createObjectReadingInStoreOrGetExisting( final DataRecordIdentifier dataRecordIdentifier, Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -203,14 +203,7 @@ } if (!exclusiveAccessSession || inObjectCount == 1) { if (exclusiveAccessSession) { - try { - objectIOManager.objectIsAccessed(getInstance$JOAFIP$()); - } catch (Exception exception) { - LOGGER.error("method begin interception error", - exception); - throw new ProxyInterceptException(getInstance$JOAFIP$() - .toString(), exception); - } + objectIsAccessed(); } /* @@ -253,12 +246,27 @@ } } + private void objectIsAccessed() { + try { + objectIOManager.objectIsAccessed(getInstance$JOAFIP$()); + } catch (Exception exception) { + LOGGER.error("method begin interception error", exception); + final ObjectAndPersistInfo instance = getInstance$JOAFIP$(); + final String instanceToString = instance == null ? "no instance" + : instance.toString(); + throw new ProxyInterceptException(instanceToString, exception); + } + } + @SuppressWarnings("PMD") @Override public void constructorEnd$JOAFIP$() { inObjectCount--; assert inObjectCount >= 0 : "running in object count can not be negative, is " + inObjectCount; + // if (objectIOManager != null) { + // objectIsAccessed(); + // } } @Override Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -282,6 +282,7 @@ assert getProxyCallBack(instanceCreated) != NULL_PROXY_CALL_BACK_INSTANCE; // set is loaded last for auto save objectAndPersistInfo.setIsLoaded(); + objectAndPersistInfo.acceded = false; } } else { // FIXMELUC ___________one method for objectAndPersistInfo action @@ -298,6 +299,7 @@ */ // set is loaded last for auto save setIsLoaded(instanceCreated); + objectAndPersistInfo.acceded = false; } return objectAndPersistInfo; } @@ -536,6 +538,7 @@ existing.initialize$JOAFIP$(proxyCallBack); existing.setInstance$JOAFIP$(objectAndPersistInfo); objectAndPersistInfo.setProxyCallBack(existing); + objectAndPersistInfo.acceded = true; } } else { final IProxyCallBack proxy = (IProxyCallBack) object; @@ -549,6 +552,7 @@ existing.initialize$JOAFIP$(proxyCallBack); existing.setInstance$JOAFIP$(objectAndPersistInfo); objectAndPersistInfo.setProxyCallBack(existing); + objectAndPersistInfo.acceded = true; } } } else { Modified: trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -80,4 +80,8 @@ public void delegateNotification() { // delegate notification } + + public BobAsDelegateNotifyDelegating getDelegate() { + return delegate; + } } Modified: trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobAsDelegateNotifyDelegating.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobAsDelegateNotifyDelegating.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobAsDelegateNotifyDelegating.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -61,4 +61,8 @@ public void action() { bobASDelegatingListenDelegate.delegateNotification(); } + + public BobASDelegatingListenDelegate getBobASDelegatingListenDelegate() { + return bobASDelegatingListenDelegate; + } } Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java 2011-10-24 02:59:20 UTC (rev 2940) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java 2011-10-27 01:46:02 UTC (rev 2941) @@ -30,8 +30,10 @@ import net.sf.joafip.StorableAccess; import net.sf.joafip.TestConstant; import net.sf.joafip.TestException; +import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.entity.rel400.BobASDelegatingListenDelegate; import net.sf.joafip.entity.rel400.BobASWithTransientCaller; +import net.sf.joafip.entity.rel400.BobAsDelegateNotifyDelegating; import net.sf.joafip.entity.rel400.BobForAutoSaveTest; import net.sf.joafip.entity.rel400.KeyDef; import net.sf.joafip.java.util.PTreeMap; @@ -382,6 +384,31 @@ assertTrue("bad state saved", bob.isConstructed()); } + public void testSaveInConstruction5() throws FilePersistenceException, + FilePersistenceClassNotFoundException, + FilePersistenceInvalidClassException, + FilePersistenceDataCorruptedException, + FilePersistenceNotSerializableException, + FilePersistenceTooBigForSerializationException, ProxyException { + final IInstanceFactory instanceFactory = session.getInstanceFactory(); + assertNotNull(MUST_HAS_INSTANCE_FACTORY, instanceFactory); + + session.open(); + BobASDelegatingListenDelegate bob = BobASDelegatingListenDelegate + .newInstance(instanceFactory); + BobAsDelegateNotifyDelegating delegate = bob.getDelegate(); + final long delegateDataRecordIdentifier = ProxyManager2 + .getObjectAndPersistInfo(delegate).dataRecordIdentifier.value; + bob = null;// NOPMD unreference + session.close(EnumFilePersistenceCloseAction.DO_NOT_SAVE); + + session.open(); + delegate = (BobAsDelegateNotifyDelegating) session + .getObject(delegateDataRecordIdentifier); + bob = delegate.getBobASDelegatingListenDelegate(); + assertNotNull("bob is in bad state", bob.getDelegate()); + } + public void testWithTransient() throws FilePersistenceException, FilePersistenceClassNotFoundException, FilePersistenceInvalidClassException, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-27 01:46:09
|
Revision: 2941 http://joafip.svn.sourceforge.net/joafip/?rev=2941&view=rev Author: luc_peuvrier Date: 2011-10-27 01:46:02 +0000 (Thu, 27 Oct 2011) Log Message: ----------- test added for auto save Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/service/AbstractDataAccessSession.java trunk/joafip/src/main/java/net/sf/joafip/service/AbstractFilePersistenceDelegatingToStore.java trunk/joafip/src/main/java/net/sf/joafip/service/ExclusiveDataAccessSession.java trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistence.java trunk/joafip/src/main/java/net/sf/joafip/service/IDataAccessSessionCommon.java trunk/joafip/src/main/java/net/sf/joafip/service/IExclusiveDataAccessSession.java trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java trunk/joafip/src/main/java/net/sf/joafip/store/service/IStore.java trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobAsDelegateNotifyDelegating.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-24 02:59:27
|
Revision: 2940 http://joafip.svn.sourceforge.net/joafip/?rev=2940&view=rev Author: luc_peuvrier Date: 2011-10-24 02:59:20 +0000 (Mon, 24 Oct 2011) Log Message: ----------- auto save now ok Modified Paths: -------------- trunk/joafip-testsuite/src/main/java/net/sf/joafip/InErrorTests.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-24 02:59:27
|
Revision: 2940 http://joafip.svn.sourceforge.net/joafip/?rev=2940&view=rev Author: luc_peuvrier Date: 2011-10-24 02:59:20 +0000 (Mon, 24 Oct 2011) Log Message: ----------- auto save now ok Modified Paths: -------------- trunk/joafip-testsuite/src/main/java/net/sf/joafip/InErrorTests.java Modified: trunk/joafip-testsuite/src/main/java/net/sf/joafip/InErrorTests.java =================================================================== --- trunk/joafip-testsuite/src/main/java/net/sf/joafip/InErrorTests.java 2011-10-24 02:37:36 UTC (rev 2939) +++ trunk/joafip-testsuite/src/main/java/net/sf/joafip/InErrorTests.java 2011-10-24 02:59:20 UTC (rev 2940) @@ -24,8 +24,10 @@ import junit.framework.Test; import junit.framework.TestSuite; -import net.sf.joafip.service.rel400.TestSaveInExclusiveDataAccessSession; -import net.sf.joafip.store.service.TestStoreVisitedModified; +import net.sf.joafip.service.rel400.TestAutoSave; +import net.sf.joafip.service.rel400.TestRuntime310Garbage; +import net.sf.joafip.store.service.proxy.TestProxyCreation; +import net.sf.joafip.store.service.proxy.TestProxyCreationConstructed; /** * @@ -42,8 +44,10 @@ public static Test suite() { final TestSuite suite = new TestSuite("in error Tests"); // $JUnit-BEGIN$ - suite.addTestSuite(TestStoreVisitedModified.class); - suite.addTestSuite(TestSaveInExclusiveDataAccessSession.class); + suite.addTestSuite(TestProxyCreation.class); + suite.addTestSuite(TestProxyCreationConstructed.class); + suite.addTestSuite(TestRuntime310Garbage.class); + suite.addTestSuite(TestAutoSave.class); // suite.addTest(xxxx.suite()); // $JUnit-END$ return suite; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-24 02:37:43
|
Revision: 2939 http://joafip.svn.sourceforge.net/joafip/?rev=2939&view=rev Author: luc_peuvrier Date: 2011-10-24 02:37:36 +0000 (Mon, 24 Oct 2011) Log Message: ----------- management of loose of reference on original value Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectClassInfoAndDeclared.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-24 02:37:42
|
Revision: 2939 http://joafip.svn.sourceforge.net/joafip/?rev=2939&view=rev Author: luc_peuvrier Date: 2011-10-24 02:37:36 +0000 (Mon, 24 Oct 2011) Log Message: ----------- management of loose of reference on original value Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectClassInfoAndDeclared.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java Modified: trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java 2011-10-24 02:36:09 UTC (rev 2938) +++ trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java 2011-10-24 02:37:36 UTC (rev 2939) @@ -437,6 +437,10 @@ return result; } + public boolean referenceLost() { + return weakReference!=null && weakReference.get()==null; + } + @Override public Object getObject() { final Object result; @@ -444,7 +448,7 @@ result = this.object; } else { result = weakReference.get(); - assert result != null : "reference loose " + toString(); + assert result != null : "reference lost " + toString(); } return result; } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectClassInfoAndDeclared.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectClassInfoAndDeclared.java 2011-10-24 02:36:09 UTC (rev 2938) +++ trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectClassInfoAndDeclared.java 2011-10-24 02:37:36 UTC (rev 2939) @@ -78,6 +78,10 @@ return toWriteObjectClassInfo; } + public boolean referenceLost() { + return objectAndPersistInfo.referenceLost(); + } + public Object getObject() { return objectAndPersistInfo.getObject(); } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java 2011-10-24 02:36:09 UTC (rev 2938) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java 2011-10-24 02:37:36 UTC (rev 2939) @@ -428,11 +428,10 @@ * @param referencingObject * the referencing object * @param originalReferenced - * the original (previously) referenced object by referencing, - * can be null if no previously referenced + * the original (previously) referenced object, can be null if no + * previously referenced * @param referencedObject - * the referenced object by referencing, can be null if no more - * referenced + * the referenced object, can be null if no more referenced * @param referenceChangeList * @return true if referencing object state changed * @throws ObjectIOException @@ -444,22 +443,28 @@ final List<ReferenceChange> referenceChangeList) throws ObjectIOException { final boolean stateChanged; - final Object originalObject = originalReferenced.getObject(); - final Object object = referencedObject.getObject(); - final ClassInfo referencedClassInfo = referencedObject - .getToWriteObjectClassInfo(); - /* - * the test below needed since primitive and its equivalent object have - * not same class - */ - if (referencedClassInfo.isBasicType()) { - stateChanged = originalObject == null && object != null - || originalObject != null && !originalObject.equals(object); - } else if (originalObject != object) {// NOPMD compare - // instance + // FIXMELUC ________________________only for exclusive das + if (originalReferenced.referenceLost()) { stateChanged = true; } else { - stateChanged = false; + final Object originalObject = originalReferenced.getObject(); + final Object object = referencedObject.getObject(); + final ClassInfo referencedClassInfo = referencedObject + .getToWriteObjectClassInfo(); + /* + * the test below needed since primitive and its equivalent object + * have not same class + */ + if (referencedClassInfo.isBasicType()) { + stateChanged = originalObject == null && object != null + || originalObject != null + && !originalObject.equals(object); + } else if (originalObject != object) {// NOPMD compare + // instance + stateChanged = true; + } else { + stateChanged = false; + } } if (stateChanged && garbageManagement) { referencedChanged(referencingObject, referencedObject, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-24 02:36:16
|
Revision: 2938 http://joafip.svn.sourceforge.net/joafip/?rev=2938&view=rev Author: luc_peuvrier Date: 2011-10-24 02:36:09 +0000 (Mon, 24 Oct 2011) Log Message: ----------- auto save now ok Modified Paths: -------------- trunk/joafip-asm/src/main/java/net/sf/joafip/asm/Type.java trunk/joafip-asm/src/test/java/net/sf/joafip/asm/util/TraceClassVisitor.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-24 02:36:16
|
Revision: 2938 http://joafip.svn.sourceforge.net/joafip/?rev=2938&view=rev Author: luc_peuvrier Date: 2011-10-24 02:36:09 +0000 (Mon, 24 Oct 2011) Log Message: ----------- auto save now ok Modified Paths: -------------- trunk/joafip-asm/src/main/java/net/sf/joafip/asm/Type.java trunk/joafip-asm/src/test/java/net/sf/joafip/asm/util/TraceClassVisitor.java Modified: trunk/joafip-asm/src/main/java/net/sf/joafip/asm/Type.java =================================================================== --- trunk/joafip-asm/src/main/java/net/sf/joafip/asm/Type.java 2011-10-23 12:16:47 UTC (rev 2937) +++ trunk/joafip-asm/src/main/java/net/sf/joafip/asm/Type.java 2011-10-24 02:36:09 UTC (rev 2938) @@ -656,7 +656,7 @@ * @param c * the class whose descriptor must be computed. */ - private static void getDescriptor(final StringBuffer buf, final Class c) { + public static void getDescriptor(final StringBuffer buf, final Class c) { Class d = c; while (true) { if (d.isPrimitive()) { Modified: trunk/joafip-asm/src/test/java/net/sf/joafip/asm/util/TraceClassVisitor.java =================================================================== --- trunk/joafip-asm/src/test/java/net/sf/joafip/asm/util/TraceClassVisitor.java 2011-10-23 12:16:47 UTC (rev 2937) +++ trunk/joafip-asm/src/test/java/net/sf/joafip/asm/util/TraceClassVisitor.java 2011-10-24 02:36:09 UTC (rev 2938) @@ -83,7 +83,7 @@ * <pre> * public class Hello { * public static void main(String[] args) { - * System .out. println("hello"); + * System.out.println("hello"); * } * } * </pre> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-23 12:16:53
|
Revision: 2937 http://joafip.svn.sourceforge.net/joafip/?rev=2937&view=rev Author: luc_peuvrier Date: 2011-10-23 12:16:47 +0000 (Sun, 23 Oct 2011) Log Message: ----------- auto save now ok Added Paths: ----------- trunk/joafip-4test/src/main/java/asm/net/sf/joafip/asm/NewProxyCallBackDump.java trunk/joafip-4test/src/main/java/net/sf/joafip/asm/MainAsmForNewProxyCallBack.java trunk/joafip-4test/src/main/java/net/sf/joafip/asm/NewProxyCallBack.java Added: trunk/joafip-4test/src/main/java/asm/net/sf/joafip/asm/NewProxyCallBackDump.java =================================================================== --- trunk/joafip-4test/src/main/java/asm/net/sf/joafip/asm/NewProxyCallBackDump.java (rev 0) +++ trunk/joafip-4test/src/main/java/asm/net/sf/joafip/asm/NewProxyCallBackDump.java 2011-10-23 12:16:47 UTC (rev 2937) @@ -0,0 +1,76 @@ +package asm.net.sf.joafip.asm; + +import net.sf.joafip.asm.AnnotationVisitor; +import net.sf.joafip.asm.ClassWriter; +import net.sf.joafip.asm.FieldVisitor; +import net.sf.joafip.asm.MethodVisitor; +import net.sf.joafip.asm.Opcodes; + +@SuppressWarnings("PMD") +public class NewProxyCallBackDump implements Opcodes { + + @SuppressWarnings("unused") + public static byte[] dump() throws Exception { + + ClassWriter cw = new ClassWriter(0); + FieldVisitor fv; + MethodVisitor mv; + AnnotationVisitor av0; + + cw.visit(V1_6, ACC_PUBLIC + ACC_SUPER, + "net/sf/joafip/asm/NewProxyCallBack", null, "java/lang/Object", + null); + + { + fv = cw.visitField( + ACC_PRIVATE + ACC_FINAL, + "proxyCallBack", + "Lnet/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation;", + null, null); + fv.visitEnd(); + } + { + mv = cw.visitMethod( + ACC_PUBLIC, + "<init>", + "()V", + null, + new String[] { "net/sf/joafip/store/service/proxy/ProxyException" }); + mv.visitCode(); + mv.visitVarInsn(ALOAD, 0); + mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "<init>", + "()V"); + mv.visitVarInsn(ALOAD, 0); + mv.visitTypeInsn(NEW, + "net/sf/joafip/store/service/proxy/ProxyCallBack"); + mv.visitInsn(DUP); + mv.visitMethodInsn(INVOKESPECIAL, + "net/sf/joafip/store/service/proxy/ProxyCallBack", + "<init>", "()V"); + mv.visitFieldInsn(PUTFIELD, "net/sf/joafip/asm/NewProxyCallBack", + "proxyCallBack", + "Lnet/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation;"); + mv.visitInsn(RETURN); + mv.visitMaxs(3, 1); + mv.visitEnd(); + } + { + mv = cw.visitMethod( + ACC_PUBLIC, + "getProxyCallBack", + "()Lnet/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation;", + null, null); + mv.visitCode(); + mv.visitVarInsn(ALOAD, 0); + mv.visitFieldInsn(GETFIELD, "net/sf/joafip/asm/NewProxyCallBack", + "proxyCallBack", + "Lnet/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation;"); + mv.visitInsn(ARETURN); + mv.visitMaxs(1, 1); + mv.visitEnd(); + } + cw.visitEnd(); + + return cw.toByteArray(); + } +} Added: trunk/joafip-4test/src/main/java/net/sf/joafip/asm/MainAsmForNewProxyCallBack.java =================================================================== --- trunk/joafip-4test/src/main/java/net/sf/joafip/asm/MainAsmForNewProxyCallBack.java (rev 0) +++ trunk/joafip-4test/src/main/java/net/sf/joafip/asm/MainAsmForNewProxyCallBack.java 2011-10-23 12:16:47 UTC (rev 2937) @@ -0,0 +1,19 @@ +package net.sf.joafip.asm; + +import net.sf.joafip.asm.util.ASMifierClassVisitor; + +public final class MainAsmForNewProxyCallBack { + + public static void main(final String[] args) { + try { + ASMifierClassVisitor.outAsm(false, NewProxyCallBack.class.getName(), + "src/main/java/asm/net/sf/joafip/asm/NewProxyCallBackDump.java"); + } catch (Exception e) { + e.printStackTrace();// NOPMD + } + } + + private MainAsmForNewProxyCallBack() { + super(); + } +} Added: trunk/joafip-4test/src/main/java/net/sf/joafip/asm/NewProxyCallBack.java =================================================================== --- trunk/joafip-4test/src/main/java/net/sf/joafip/asm/NewProxyCallBack.java (rev 0) +++ trunk/joafip-4test/src/main/java/net/sf/joafip/asm/NewProxyCallBack.java 2011-10-23 12:16:47 UTC (rev 2937) @@ -0,0 +1,20 @@ +package net.sf.joafip.asm; + +import net.sf.joafip.store.service.proxy.IProxyCallBackProxyDelegation; +import net.sf.joafip.store.service.proxy.ProxyCallBack; +import net.sf.joafip.store.service.proxy.ProxyException; + +public class NewProxyCallBack { + + private final IProxyCallBackProxyDelegation proxyCallBack; + + public NewProxyCallBack() + throws ProxyException { + super(); + proxyCallBack=new ProxyCallBack(); + } + + public IProxyCallBackProxyDelegation getProxyCallBack() { + return proxyCallBack; + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-23 12:16:53
|
Revision: 2937 http://joafip.svn.sourceforge.net/joafip/?rev=2937&view=rev Author: luc_peuvrier Date: 2011-10-23 12:16:47 +0000 (Sun, 23 Oct 2011) Log Message: ----------- auto save now ok Added Paths: ----------- trunk/joafip-4test/src/main/java/asm/net/sf/joafip/asm/NewProxyCallBackDump.java trunk/joafip-4test/src/main/java/net/sf/joafip/asm/MainAsmForNewProxyCallBack.java trunk/joafip-4test/src/main/java/net/sf/joafip/asm/NewProxyCallBack.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-23 11:38:03
|
Revision: 2936 http://joafip.svn.sourceforge.net/joafip/?rev=2936&view=rev Author: luc_peuvrier Date: 2011-10-23 11:37:55 +0000 (Sun, 23 Oct 2011) Log Message: ----------- auto save now ok Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/service/IFilePersistence.java trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerDelegatingToStateMap.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/DetachedProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackToImplement.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/NullProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/StaticProxyCallBack.java trunk/joafip/src/test/java/net/sf/joafip/service/TestTreeListIteratorIntercept.java trunk/joafip/src/test/java/net/sf/joafip/service/sync/TestSynchronizedCollection.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/AbstractObjectIoManagerForProxyTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/ProxyCallBackForTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java Modified: trunk/joafip/src/main/java/net/sf/joafip/service/IFilePersistence.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/service/IFilePersistence.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/service/IFilePersistence.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -1195,12 +1195,22 @@ void keptInMemory(final String key, final Object object) throws FilePersistenceException; - // FIXMELUC _______________javadoc + /** + * instance referenced by static field of class are kept in memory + * + * @param classHavingStaticFieldReferenced + * @throws FilePersistenceException + */ void referencedByPesistedStaticField( Class<?> classHavingStaticFieldReferenced) throws FilePersistenceException; - // FIXMELUC _______________javadoc + /** + * instance referenced by static field of classes are kept in memory + * + * @param classHavingStaticFieldReferenced + * @throws FilePersistenceException + */ void referencedByPesistedStaticField( Class<?>[] classHavingStaticFieldReferenced) throws FilePersistenceException; Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -1024,23 +1024,18 @@ ObjectIOClassNotFoundException, ObjectIOInvalidClassException, ObjectIODataCorruptedException, ObjectIONotSerializableException { - try { - proxyManager2.setCreateEntryinObjectMap(false); - final Map<EnumKey, Enum<?>> storeRootEnumMap = getStoredEnumMap(); - if (storeRootEnumMap != null) { - final Collection<Enum<?>> values = storeRootEnumMap.values(); - final Iterator<Enum<?>> iterator = values.iterator(); - while (iterator.hasNext()) { - final Enum<?> enumValue = iterator.next(); - /* just to force state setting of persisted value */ - if (enumValue != null) { - // not null, not a no more existing enum - objectIOManager.reInitializeEnum(enumValue); - } + final Map<EnumKey, Enum<?>> storeRootEnumMap = getStoredEnumMap(); + if (storeRootEnumMap != null) { + final Collection<Enum<?>> values = storeRootEnumMap.values(); + final Iterator<Enum<?>> iterator = values.iterator(); + while (iterator.hasNext()) { + final Enum<?> enumValue = iterator.next(); + /* just to force state setting of persisted value */ + if (enumValue != null) { + // not null, not a no more existing enum + objectIOManager.reInitializeEnum(enumValue); } } - } finally { - proxyManager2.setCreateEntryinObjectMap(true); } } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -40,7 +40,7 @@ import net.sf.joafip.store.service.proxy.IProxyCallBackProxyDelegation; import net.sf.joafip.store.service.proxy.IProxyCallBackToImplement; import net.sf.joafip.store.service.proxy.IProxyInternal; -import net.sf.joafip.store.service.proxy.NullProxyCallBack; +import net.sf.joafip.store.service.proxy.ProxyCallBack; /** * generate enhancement byte code @@ -85,11 +85,6 @@ private String forceLoadMethodDesc; - private static final String SET_IN_CONSTRUCTION_METHOD_NAME = - /**/"setInConstruction$JOAFIP$"; - - private String setInConstructionMethodDesc; - private static final String[] FORCE_LOAD_EXCEPTION = new String[] { /**/Type.getInternalName(ObjectIOException.class), /**/Type.getInternalName(ObjectIODataRecordNotFoundException.class), @@ -117,6 +112,11 @@ private String methodEndMethodDesc; + private static final String CONSTRUCTOR_END_METHOD_NAME = + /**/"constructorEnd$JOAFIP$"; + + private String constructorEndMethodDesc; + private static final String SET_PROXY_CALL_BACK_METHOD_NAME = /**/"setProxyCallBack$JOAFIP$"; @@ -146,6 +146,11 @@ private static final String I_PROXY_CALL_BACK_DELEGATION_DESC = /**/Type.getDescriptor(IProxyCallBackProxyDelegation.class); + private static final String PROXY_CALL_BACK = + /**/Type.getInternalName(ProxyCallBack.class); + + private String proxyCallBackConstructorDesc; + private final static String[] INTERFACES = new String[] { /**/Type.getInternalName(IProxyCallBack.class) }; @@ -156,12 +161,6 @@ private final static EnhanceCodeGenerator INSTANCE = /**/new EnhanceCodeGenerator(); - private static final String NULL_PROXY_CALL_BACK_INTERNAL_NAME = - /**/Type.getInternalName(NullProxyCallBack.class); - - private static final String NULL_PROXY_CALL_BACK_INTERNAL_DESC = - /**/Type.getDescriptor(NullProxyCallBack.class); - public static EnhanceCodeGenerator getInstance() { return INSTANCE; } @@ -194,11 +193,6 @@ forceLoadMethodDesc = Type.getMethodDescriptor(method); method = IProxyCallBack.class.getMethod( - /**/SET_IN_CONSTRUCTION_METHOD_NAME, - /**/new Class[] { boolean.class }); - setInConstructionMethodDesc = Type.getMethodDescriptor(method); - - method = IProxyCallBack.class.getMethod( /**/UNLOAD_METHOD_NAME, /**/NO_PARAMETERS); unloadMethodDesc = Type.getMethodDescriptor(method); @@ -214,6 +208,11 @@ methodEndMethodDesc = Type.getMethodDescriptor(method); method = IProxyCallBack.class.getMethod( + /**/CONSTRUCTOR_END_METHOD_NAME, + /**/NO_PARAMETERS); + constructorEndMethodDesc = Type.getMethodDescriptor(method); + + method = IProxyCallBack.class.getMethod( /**/IS_LOADED_METHOD_NAME, /**/NO_PARAMETERS); isLoadedMethodDesc = Type.getMethodDescriptor(method); @@ -244,6 +243,11 @@ /**/NO_PARAMETERS); getInstanceMethodDesc = Type.getMethodDescriptor(method); + final Constructor<ProxyCallBack> constructor = ProxyCallBack.class + .getConstructor(NO_PARAMETERS); + proxyCallBackConstructorDesc = Type + .getConstructorDescriptor(constructor); + initialized = true; } catch (Exception exception) { @@ -336,12 +340,13 @@ methodVisitor.visitCode(); methodVisitor.visitVarInsn(ALOAD, 0); + + methodVisitor.visitTypeInsn(NEW, PROXY_CALL_BACK); + methodVisitor.visitInsn(DUP); + methodVisitor.visitMethodInsn(INVOKESPECIAL, PROXY_CALL_BACK, + INIT_METHOD_NAME, proxyCallBackConstructorDesc); + methodVisitor.visitFieldInsn( - /**/GETSTATIC, - /**/NULL_PROXY_CALL_BACK_INTERNAL_NAME, - /**/"INSTANCE", - /**/NULL_PROXY_CALL_BACK_INTERNAL_DESC); - methodVisitor.visitFieldInsn( /**/PUTFIELD,/* opcode */ /**/classInternalName,/* owner */ /**/PROXY_CALL_BACK_FIELD_NAME,/* name */ @@ -364,6 +369,13 @@ /**/INIT_METHOD_NAME, /**/desc); + methodVisitor.visitVarInsn(ALOAD, 0); + methodVisitor.visitMethodInsn( + /**/INVOKEVIRTUAL, + /**/classInternalName, + /**/CONSTRUCTOR_END_METHOD_NAME, + /**/constructorEndMethodDesc); + methodVisitor.visitInsn(RETURN); // FIXMELUC _visitmaxs call needed ? @@ -466,44 +478,44 @@ methodVisitor.visitEnd(); /* - * setInConstruction + * unload */ - methodVisitor = classWriter.visitMethod( /**/ACC_PUBLIC, - /**/SET_IN_CONSTRUCTION_METHOD_NAME, - /**/setInConstructionMethodDesc, + /**/UNLOAD_METHOD_NAME, + /**/unloadMethodDesc, /**/null, - /**/null); + /**/UNLOAD_EXCEPTION); + methodVisitor.visitCode(); + methodVisitor.visitVarInsn(ALOAD, 0); methodVisitor.visitFieldInsn( /**/GETFIELD, /**/classInternalName, - /**/PROXY_CALL_BACK_FIELD_NAME, I_PROXY_CALL_BACK_DELEGATION_DESC); - methodVisitor.visitVarInsn(ILOAD, 1); + /**/PROXY_CALL_BACK_FIELD_NAME, + /**/I_PROXY_CALL_BACK_DELEGATION_DESC); methodVisitor.visitMethodInsn( /**/INVOKEINTERFACE, /**/I_PROXY_CALL_BACK_INTERFACE, - /**/SET_IN_CONSTRUCTION_METHOD_NAME, - /**/setInConstructionMethodDesc); + /**/UNLOAD_METHOD_NAME, + /**/unloadMethodDesc); methodVisitor.visitInsn(RETURN); + // FIXMELUC _visitmaxs call needed ? methodVisitor.visitMaxs(0, 0); methodVisitor.visitEnd(); /* - * unload + * intercept */ methodVisitor = classWriter.visitMethod( /**/ACC_PUBLIC, - /**/UNLOAD_METHOD_NAME, - /**/unloadMethodDesc, + /**/INTERCEPT_METHOD_NAME, + /**/interceptMethodDesc, /**/null, - /**/UNLOAD_EXCEPTION); - + /**/null); methodVisitor.visitCode(); - methodVisitor.visitVarInsn(ALOAD, 0); methodVisitor.visitFieldInsn( /**/GETFIELD, @@ -513,21 +525,21 @@ methodVisitor.visitMethodInsn( /**/INVOKEINTERFACE, /**/I_PROXY_CALL_BACK_INTERFACE, - /**/UNLOAD_METHOD_NAME, - /**/unloadMethodDesc); + /**/INTERCEPT_METHOD_NAME, + /**/interceptMethodDesc); methodVisitor.visitInsn(RETURN); - // FIXMELUC _visitmaxs call needed ? methodVisitor.visitMaxs(0, 0); methodVisitor.visitEnd(); /* - * intercept + * constructor end */ + methodVisitor = classWriter.visitMethod( /**/ACC_PUBLIC, - /**/INTERCEPT_METHOD_NAME, - /**/interceptMethodDesc, + /**/CONSTRUCTOR_END_METHOD_NAME, + /**/constructorEndMethodDesc, /**/null, /**/null); methodVisitor.visitCode(); @@ -540,8 +552,8 @@ methodVisitor.visitMethodInsn( /**/INVOKEINTERFACE, /**/I_PROXY_CALL_BACK_INTERFACE, - /**/INTERCEPT_METHOD_NAME, - /**/interceptMethodDesc); + /**/CONSTRUCTOR_END_METHOD_NAME, + /**/constructorEndMethodDesc); methodVisitor.visitInsn(RETURN); // FIXMELUC _visitmaxs call needed ? methodVisitor.visitMaxs(0, 0); Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerDelegatingToStateMap.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerDelegatingToStateMap.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerDelegatingToStateMap.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -47,6 +47,9 @@ private final ObjectStateMgr objectStateMgr = new ObjectStateMgr(); + /** true if exclusive data access session */ + private boolean exclusiveAccessSession; + public AbstractObjectIOManagerDelegatingToStateMap( final int currentDataModelIdentifier, final IClassNameManager classNameManager, final boolean proxyMode, @@ -81,10 +84,11 @@ IProxyCallBackToImplement proxyCallBack; try { proxyCallBack = new ProxyCallBack(this); + ProxyManager2.setProxyCallBack(objectAndPersistInfo, + proxyCallBack, exclusiveAccessSession); } catch (ProxyException exception) { throw new ObjectIOException(exception); } - ProxyManager2.setProxyCallBack(objectAndPersistInfo, proxyCallBack); } else { assert !ProxyManager2.isProxyOrEnhanced(object); } @@ -188,8 +192,14 @@ protected void setExclusiveAccessSessionDelegate( final boolean exclusiveAccessSession) { objectStateMgr.setExclusiveAccessSession(exclusiveAccessSession); + this.exclusiveAccessSession = exclusiveAccessSession; } + @Override + public boolean isExclusiveAccessSession() { + return exclusiveAccessSession; + } + protected void setMaintainedInMemoryQuotaDelegate( final int maintainedInMemoryQuota) { objectStateMgr.setMaintainedInMemoryQuota(maintainedInMemoryQuota); Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -120,9 +120,6 @@ /** file output stream to write change */ private FileOutputStream changeFileOutputStream; - /** true if exclusive data access session */ - private boolean exclusiveAccessSession; - /** true if proxy notify object access */ // FIXMELUC ___no more needed ? private boolean maintainInMemoryEnabled;// NOPMD @@ -604,7 +601,6 @@ } public void setExclusiveAccessSession(final boolean exclusiveAccessSession) { - this.exclusiveAccessSession = exclusiveAccessSession; super.setExclusiveAccessSessionDelegate(exclusiveAccessSession); } @@ -621,11 +617,6 @@ } @Override - public boolean isExclusiveAccessSession() { - return exclusiveAccessSession; - } - - @Override public boolean isMaintainInMemoryEnabled() { return maintainInMemoryEnabled; } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/DetachedProxyCallBack.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/DetachedProxyCallBack.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/DetachedProxyCallBack.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -66,6 +66,12 @@ @SuppressWarnings("PMD") @Override + public void constructorEnd$JOAFIP$() { + // no implementation + } + + @SuppressWarnings("PMD") + @Override public void methodEnd$JOAFIP$() { // no implementation } @@ -121,10 +127,4 @@ public IObjectIOManagerForProxyObjectIO getObjectIOManager$JOAFIP$() { throw new UnsupportedOperationException(); } - - @SuppressWarnings("PMD") - @Override - public void setInConstruction$JOAFIP$(final boolean inConstruction) { - throw new UnsupportedOperationException(); - } } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -46,6 +46,12 @@ void intercept$JOAFIP$(); /** + * constructor execution end + */ + @SuppressWarnings("PMD") + void constructorEnd$JOAFIP$(); + + /** * method execution end */ @SuppressWarnings("PMD") @@ -110,7 +116,4 @@ @SuppressWarnings("PMD") ObjectAndPersistInfo getInstance$JOAFIP$(); - - @SuppressWarnings("PMD") - void setInConstruction$JOAFIP$(boolean inConstruction); } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackToImplement.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackToImplement.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackToImplement.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -51,8 +51,8 @@ IObjectIOManagerForProxyObjectIO objectIOManager) throws ProxyException; - @Fortest @SuppressWarnings("PMD") + @Override IObjectIOManagerForProxyObjectIO getObjectIOManager$JOAFIP$(); // @Fortest @@ -69,4 +69,8 @@ @SuppressWarnings("PMD") boolean isAutoSaveEnabled$JOAFIP$(); + + @SuppressWarnings("PMD") + void initialize$JOAFIP$(IProxyCallBackToImplement proxyCallBack) + throws ProxyException; } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/NullProxyCallBack.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/NullProxyCallBack.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/NullProxyCallBack.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -48,6 +48,13 @@ } @Override + @SuppressWarnings("PMD") + public void initialize$JOAFIP$(IProxyCallBackToImplement proxyCallBack) + throws ProxyException { + throw new UnsupportedOperationException(); + } + + @Override public void initializeFileAccessSessionIdentifier( final IObjectIOManagerForProxyObjectIO objectIOManager) { throw new UnsupportedOperationException(); @@ -63,7 +70,13 @@ // do nothing } + @SuppressWarnings("PMD") @Override + public void constructorEnd$JOAFIP$() { + // no implementation + } + + @Override @SuppressWarnings("PMD") public void methodEnd$JOAFIP$() { // FIXMELUC ___call when proxied construct, construct not need @@ -185,10 +198,4 @@ public boolean isAutoSaveEnabled$JOAFIP$() { throw new UnsupportedOperationException(); } - - @Override - @SuppressWarnings("PMD") - public void setInConstruction$JOAFIP$(final boolean inConstruction) { - throw new UnsupportedOperationException(); - } } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -49,8 +49,14 @@ private static boolean useJavaAgent; /** mutex for storage file access */ - private final JoafipMutex storeMutex; + private/* final */JoafipMutex storeMutex; + private/* final */IObjectIOManagerForProxyObjectIO objectIOManager; + + private/* final */boolean exclusiveAccessSession; + + private/* final */boolean autoSaveEnabled; + /** true if object loaded */ private boolean loaded = false; @@ -61,8 +67,6 @@ private boolean toUnload; - private final IObjectIOManagerForProxyObjectIO objectIOManager; - /** * the proxy instance and persistence information for which is this proxy * callback @@ -81,20 +85,24 @@ */ private long myFileAccessSessionIdentifier; - private final boolean exclusiveAccessSession; - /** count number of entry in object code */ private int inObjectCount; - private final boolean autoSaveEnabled; - - private boolean inConstruction; - public static void setUseJavaAgent(final boolean useJavaAgent) { ProxyCallBack.useJavaAgent = useJavaAgent; } /** + * + */ + public ProxyCallBack() { + super(); + inObjectCount = 1; + storeMutex = new JoafipMutex(); + exclusiveAccessSession = true; + } + + /** * at construction set the proxied object class, the object input/output * manager for state reading from file, and get the mutex for file access * @@ -107,8 +115,19 @@ this.objectIOManager = objectIOManager; autoSaveEnabled = objectIOManager.isAutoSaveEnabled(); storeMutex = objectIOManager.getStoreMutex(); + exclusiveAccessSession = objectIOManager.isExclusiveAccessSession(); initializeFileAccessSessionIdentifier(objectIOManager); + } + + @SuppressWarnings("PMD") + @Override + public void initialize$JOAFIP$(final IProxyCallBackToImplement proxyCallBack) + throws ProxyException { + this.objectIOManager = proxyCallBack.getObjectIOManager$JOAFIP$(); + autoSaveEnabled = objectIOManager.isAutoSaveEnabled(); + storeMutex = objectIOManager.getStoreMutex(); exclusiveAccessSession = objectIOManager.isExclusiveAccessSession(); + initializeFileAccessSessionIdentifier(objectIOManager); } @SuppressWarnings("PMD") @@ -175,17 +194,6 @@ return result; } - // FIXMELUC _________________________for test - // private boolean in() { - // final StackTraceElement[] stackTraceElements = new Exception() - // .getStackTrace(); - // final StackTraceElement stackTraceElement = stackTraceElements[3]; - // final String className = stackTraceElement.getClassName(); - // final String methodName = stackTraceElement.getMethodName(); - // return className.contains("MultiMap") - // && methodName.contains("addKeyDefinition"); - // } - @Override @SuppressWarnings("PMD") public void intercept$JOAFIP$() { @@ -193,98 +201,99 @@ if (exclusiveAccessSession) { inObjectCount++; } - // FIXMELUC _________________________for test - // if (in()) { - // System.out.println("intercept " + inObjectCount + " " - // + proxyObjectAndPersistInfo); - // } - // end for test - if (exclusiveAccessSession) { - try { - objectIOManager.objectIsAccessed(getInstance$JOAFIP$()); - } catch (Exception exception) { - LOGGER.error("method begin interception error", exception); - throw new ProxyInterceptException(getInstance$JOAFIP$() - .toString(), exception); + if (!exclusiveAccessSession || inObjectCount == 1) { + if (exclusiveAccessSession) { + try { + objectIOManager.objectIsAccessed(getInstance$JOAFIP$()); + } catch (Exception exception) { + LOGGER.error("method begin interception error", + exception); + throw new ProxyInterceptException(getInstance$JOAFIP$() + .toString(), exception); + } } - } - /* - * No loading operation twice. A nested call can happen when - * invoking serialization method while loading - */ - if (!loading) { - loading = true; - /* - * do not force load if finalizer thread + * No loading operation twice. A nested call can happen when + * invoking serialization method while loading */ - if (autoSaveEnabled && inObjectCount == 1) { - wasLoaded = loaded; - } + if (!loading) { + loading = true; - if (!loaded - && !inConstruction - && !FINALIZER_THREAD_NAME.equals(Thread.currentThread() - .getName())) { + if (autoSaveEnabled) { + wasLoaded = loaded; + } + /* - * since object can be manipulated outside store method call - * by another thread, need to be synchronized + * do not force load if finalizer thread */ - /* must be loaded before invoke method */ - try { - load(); - } catch (Exception exception) { - LOGGER.error("method begin interception error", - exception); - throw new ProxyInterceptException(getInstance$JOAFIP$() - .toString(), exception); + if (!loaded + && !FINALIZER_THREAD_NAME.equals(Thread + .currentThread().getName())) { + /* + * since object can be manipulated outside store method + * call by another thread, need to be synchronized + */ + /* must be loaded before invoke method */ + try { + load(); + } catch (Exception exception) { + LOGGER.error("method begin interception error", + exception); + final ObjectAndPersistInfo instance = getInstance$JOAFIP$(); + final String instanceToString = instance == null ? "no instance" + : instance.toString(); + throw new ProxyInterceptException(instanceToString, + exception); + } } + loading = false; } - - loading = false; } } } + @SuppressWarnings("PMD") @Override + public void constructorEnd$JOAFIP$() { + inObjectCount--; + assert inObjectCount >= 0 : "running in object count can not be negative, is " + + inObjectCount; + } + + @Override @SuppressWarnings("PMD") public void methodEnd$JOAFIP$() { - // FIXMELUC _________________________for test - // if (in()) { - // System.out.println("methodEnd " + inObjectCount + " " - // + proxyObjectAndPersistInfo); - // } - // end for test synchronized (storeMutex) { final ObjectAndPersistInfo instanceAndPersistInfo = getInstance$JOAFIP$(); - if (--inObjectCount == 0) { + inObjectCount--; + // ASSERTX + assert inObjectCount >= 0 : "running in object count can not be negative, is " + + inObjectCount + " " + getInstance$JOAFIP$().toString(); + if (inObjectCount == 0) { instanceAndPersistInfo.acceded = false; - } - if (autoSaveEnabled) { - // ASSERTX - assert inObjectCount >= 0 : "running in object count can not be negative, is " - + inObjectCount - + " " - + getInstance$JOAFIP$().toString(); - if (!wasLoaded && loaded && inObjectCount == 0) { - try { - objectIOManager.newObjectLoaded(); - } catch (ObjectIOException exception) { - throw new ProxyInterceptException(exception); + if (autoSaveEnabled) { + if (!wasLoaded && loaded) { + try { + objectIOManager.newObjectLoaded(); + } catch (ObjectIOException exception) { + throw new ProxyInterceptException(exception); + } } - } - if (toUnload && inObjectCount == 0) { - toUnload = false; - loaded = false; - assert instanceAndPersistInfo != null; - try { - objectIOManager - .saveAndUnsetProxyObjectState(instanceAndPersistInfo); - } catch (Exception exception) { - LOGGER.error("method end interception error", exception); - throw new ProxyInterceptException( - instanceAndPersistInfo.toString(), exception); + if (toUnload) { + toUnload = false; + loaded = false; + assert instanceAndPersistInfo != null; + try { + objectIOManager + .saveAndUnsetProxyObjectState(instanceAndPersistInfo); + } catch (Exception exception) { + LOGGER.error("method end interception error", + exception); + throw new ProxyInterceptException( + instanceAndPersistInfo.toString(), + exception); + } } } } @@ -307,7 +316,7 @@ ObjectIOClassNotFoundException, ObjectIODataCorruptedException, ObjectIONotSerializableException { synchronized (storeMutex) { - if (!loading && !inConstruction) { + if (!loading) { loading = true; if (!loaded) { load(); @@ -326,8 +335,8 @@ /* * inObjectCount==0 because can not unload object when running its code */ - if (loaded && !inConstruction) { - if (!loading && inObjectCount == 0) { + if (loaded) { + if (!loading && (!exclusiveAccessSession || inObjectCount == 0)) { loaded = false; objectIOManager.unsetProxyObjectState(getInstance$JOAFIP$()); } else { @@ -407,12 +416,6 @@ @Override @SuppressWarnings("PMD") - public void setInConstruction$JOAFIP$(final boolean inConstruction) { - this.inConstruction = inConstruction; - } - - @Override - @SuppressWarnings("PMD") public boolean isAutoSaveEnabled$JOAFIP$() { return autoSaveEnabled; } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -65,8 +65,6 @@ private int persistenceId; - private boolean createEntryinObjectMap = true; - /** * * @param classLoaderProvider @@ -158,11 +156,9 @@ objectIOManager.isExclusiveAccessSession()); instanceCreated = reflectNewInstanceDefaultConstructor(enhancedClass); } - if (createEntryinObjectMap) { - objectAndPersistInfoOfCreatedInstance(objectClassInfo, - storageInfo, objectIOManager, dataRecordIdentifier, - persisted, instanceCreated, true); - } + objectAndPersistInfoOfCreatedInstance(objectClassInfo, storageInfo, + objectIOManager, dataRecordIdentifier, persisted, + instanceCreated, true); } catch (ReflectException exception) { throw new ProxyException(exception); } catch (EnhanceException exception) { @@ -203,11 +199,9 @@ instanceCreated = reflectNewInstanceConstruct(enhancedClass, parameterTypes, initargs); } - if (createEntryinObjectMap) { - objectAndPersistInfoOfCreatedInstance(objectClassInfo, - storageInfo, objectIOManager, dataRecordIdentifier, - persisted, instanceCreated, true); - } + objectAndPersistInfoOfCreatedInstance(objectClassInfo, storageInfo, + objectIOManager, dataRecordIdentifier, persisted, + instanceCreated, true); } catch (ReflectException exception) { throw new ProxyException(exception); } catch (EnhanceException exception) { @@ -228,10 +222,6 @@ initargs); } - public void setCreateEntryinObjectMap(final boolean createEntryinObjectMap) { - this.createEntryinObjectMap = createEntryinObjectMap; - } - private ObjectAndPersistInfo objectAndPersistInfoOfCreatedInstance( final ClassInfo objectClassInfo, final StorageInfo storageInfo, final IObjectIOManagerForProxyObjectIO objectIOManager, @@ -290,7 +280,6 @@ if (constructed) { assert getProxyCallBack(instanceCreated) != NULL_PROXY_CALL_BACK_INSTANCE; - setNotInConstruction(instanceCreated); // set is loaded last for auto save objectAndPersistInfo.setIsLoaded(); } @@ -307,8 +296,6 @@ * objectAndPersistInfo.setIsLoaded() should be good to, may be * better */ - // objectAndPersistInfo.getProxyCallBackOfObject().setInConstruction$JOAFIP$(false); - setNotInConstruction(instanceCreated); // set is loaded last for auto save setIsLoaded(instanceCreated); } @@ -400,15 +387,6 @@ } } - private void setNotInConstruction(final Object object) { - if (useJavaAgent) { - StaticProxyCallBack.setInConstruction(object, false); - } else if (isProxy(object)) { - ((IProxyCallBackProxyDelegation) object) - .setInConstruction$JOAFIP$(false); - } - } - public static void setIsLoadedNoSave(final Object object) throws ProxyException { try { @@ -543,37 +521,49 @@ public static void setProxyCallBack( final ObjectAndPersistInfo objectAndPersistInfo, - final IProxyCallBackToImplement proxyCallBack) { + final IProxyCallBackToImplement proxyCallBack, + final boolean exclusiveAccessSession) throws ProxyException { final Object object = objectAndPersistInfo.getObject(); - if (useJavaAgent) { - // ASSERTX - assert StaticProxyCallBack.getProxyCallBack(object) == null - || StaticProxyCallBack.getProxyCallBack(object) == NULL_PROXY_CALL_BACK_INSTANCE : "can not set twice the proxy callback of " - + object.getClass().getName() - + "@" - + System.identityHashCode(object); - StaticProxyCallBack.setProxyCallBack(object, proxyCallBack); + if (exclusiveAccessSession) { + if (useJavaAgent) { + final IProxyCallBackToImplement existing = StaticProxyCallBack + .getProxyCallBack(object); + if (existing == null) { + StaticProxyCallBack.setProxyCallBack(object, proxyCallBack); + proxyCallBack.setInstance$JOAFIP$(objectAndPersistInfo); + objectAndPersistInfo.setProxyCallBack(proxyCallBack); + } else { + existing.initialize$JOAFIP$(proxyCallBack); + existing.setInstance$JOAFIP$(objectAndPersistInfo); + objectAndPersistInfo.setProxyCallBack(existing); + } + } else { + final IProxyCallBack proxy = (IProxyCallBack) object; + final IProxyCallBackToImplement existing = proxy + .getProxyCallBack$JOAFIP$(); + if (existing == null) { + proxy.setProxyCallBack$JOAFIP$(proxyCallBack); + proxyCallBack.setInstance$JOAFIP$(objectAndPersistInfo); + objectAndPersistInfo.setProxyCallBack(proxyCallBack); + } else { + existing.initialize$JOAFIP$(proxyCallBack); + existing.setInstance$JOAFIP$(objectAndPersistInfo); + objectAndPersistInfo.setProxyCallBack(existing); + } + } } else { - final IProxyCallBack proxy = (IProxyCallBack) object; - // ASSERTX - assert proxy.getProxyCallBack$JOAFIP$() == null - || proxy.getProxyCallBack$JOAFIP$() == NULL_PROXY_CALL_BACK_INSTANCE : "can not set twice the proxy callback of " - + object.getClass().getName() - + "@" - + System.identityHashCode(object); - // FIXMELUC _______________________old proxy call back - // FIXMELUC _______________________only for autosave - // if(proxyCallBack.isAutoSaveEnabled$JOAFIP$()) - final IProxyCallBackToImplement oldProxyCallBack = proxy - .getProxyCallBack$JOAFIP$(); - if (oldProxyCallBack == NULL_PROXY_CALL_BACK_INSTANCE) {// NOPMD - // in construction - proxyCallBack.setInConstruction$JOAFIP$(true); + if (useJavaAgent) { + StaticProxyCallBack.setProxyCallBack(object, proxyCallBack); + proxyCallBack.setInstance$JOAFIP$(objectAndPersistInfo); + objectAndPersistInfo.setProxyCallBack(proxyCallBack); + + } else { + final IProxyCallBack proxy = (IProxyCallBack) object; + proxy.setProxyCallBack$JOAFIP$(proxyCallBack); + proxyCallBack.setInstance$JOAFIP$(objectAndPersistInfo); + objectAndPersistInfo.setProxyCallBack(proxyCallBack); } - proxy.setProxyCallBack$JOAFIP$(proxyCallBack); } - proxyCallBack.setInstance$JOAFIP$(objectAndPersistInfo); - objectAndPersistInfo.setProxyCallBack(proxyCallBack); } public static void changeProxyCallBack( Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/StaticProxyCallBack.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/StaticProxyCallBack.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/StaticProxyCallBack.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -141,17 +141,6 @@ } } - public static void setInConstruction(final Object object, - final boolean inConstruction) { - final IProxyCallBackProxyDelegation proxyCallBack; - synchronized (StaticProxyCallBack.class) { - proxyCallBack = proxyCallBackOfObject(object); - } - if (proxyCallBack != null) { - proxyCallBack.setInConstruction$JOAFIP$(inConstruction); - } - } - public static void setIsLoadedNoSave(final Object object) throws ObjectIOException { final IProxyCallBackProxyDelegation proxyCallBack; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestTreeListIteratorIntercept.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestTreeListIteratorIntercept.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestTreeListIteratorIntercept.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -50,7 +50,14 @@ } } + @SuppressWarnings("PMD") @Override + public void initialize$JOAFIP$(IProxyCallBackToImplement proxyCallBack) + throws ProxyException { + // no implementation + } + + @Override @SuppressWarnings("PMD") public void intercept$JOAFIP$() { intercepted = true; @@ -88,7 +95,13 @@ return false; } + @SuppressWarnings("PMD") @Override + public void constructorEnd$JOAFIP$() { + // no implementation + } + + @Override @SuppressWarnings("PMD") public void methodEnd$JOAFIP$() { } @@ -144,9 +157,4 @@ // no implementation return false; } - - @Override - public void setInConstruction$JOAFIP$(final boolean inConstruction) {// NOPMD - // no implementation - } } Modified: trunk/joafip/src/test/java/net/sf/joafip/service/sync/TestSynchronizedCollection.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/sync/TestSynchronizedCollection.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/test/java/net/sf/joafip/service/sync/TestSynchronizedCollection.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -4,6 +4,8 @@ import java.util.Map; import net.sf.joafip.AbstractDeleteFileTestCase; +import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.java.util.PTreeMap; @@ -17,8 +19,11 @@ import net.sf.joafip.service.IDataAccessSession; import net.sf.joafip.service.IFilePersistence; +@NotStorableClass +@StorableAccess public class TestSynchronizedCollection extends AbstractDeleteFileTestCase { + private static final String KEY = "key"; private IFilePersistence filePersistence; public TestSynchronizedCollection() throws TestException { @@ -54,7 +59,7 @@ super.tearDown(); } - @SuppressWarnings({ "PMD", "unchecked" }) + @SuppressWarnings("unchecked") public void testSynchronizedMap() throws FilePersistenceException, FilePersistenceClassNotFoundException, FilePersistenceInvalidClassException, @@ -70,15 +75,16 @@ .createDataAccessSession(); PTreeMap<String, String> map = new PTreeMap<String, String>(); Map<String, String> smap = Collections.synchronizedMap(map); - smap.put("key", "value"); + smap.put(KEY, "value"); session.open(); - session.setObject("key", smap); + session.setObject(KEY, smap); map = null;// NOPMD smap = null;// NOPMD session.close(EnumFilePersistenceCloseAction.SAVE); session.open(); - smap = (Map<String, String>) session.getObject("key"); + smap = (Map<String, String>) session.getObject(KEY); + assertEquals("bad value", "value", smap.get(KEY)); session.close(EnumFilePersistenceCloseAction.SAVE); } } Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -206,10 +206,11 @@ ProxyCallBack proxyCallBack; try { proxyCallBack = new ProxyCallBack(this); + ProxyManager2.setProxyCallBack(objectAndPersistInfo, + proxyCallBack, isExclusiveAccessSession()); } catch (ProxyException exception) { throw new ObjectIOException(exception); } - ProxyManager2.setProxyCallBack(objectAndPersistInfo, proxyCallBack); } return objectAndPersistInfo; } Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/AbstractObjectIoManagerForProxyTest.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/AbstractObjectIoManagerForProxyTest.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/AbstractObjectIoManagerForProxyTest.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -64,7 +64,8 @@ objectAndPersistInfo = new ObjectAndPersistInfo(object, proxyInstance, objectClassInfo); final ProxyCallBack proxyCallBack = new ProxyCallBack(this); - ProxyManager2.setProxyCallBack(objectAndPersistInfo, proxyCallBack); + ProxyManager2.setProxyCallBack(objectAndPersistInfo, proxyCallBack, + isExclusiveAccessSession()); } catch (ClassInfoException exception) { throw new ObjectIOException(exception); } catch (ProxyException exception) { @@ -118,7 +119,8 @@ objectAndPersistInfo = new ObjectAndPersistInfo(object, proxyInstance, objectClassInfo); final ProxyCallBack proxyCallBack = new ProxyCallBack(this); - ProxyManager2.setProxyCallBack(objectAndPersistInfo, proxyCallBack); + ProxyManager2.setProxyCallBack(objectAndPersistInfo, proxyCallBack, + isExclusiveAccessSession()); } catch (ClassInfoException exception) { throw new ObjectIOException(exception); } catch (ProxyException exception) { Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/ProxyCallBackForTest.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/ProxyCallBackForTest.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/ProxyCallBackForTest.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -41,6 +41,13 @@ @Override @SuppressWarnings("PMD") + public void initialize$JOAFIP$(final IProxyCallBackToImplement proxyCallBack) + throws ProxyException { + // do nothing + } + + @Override + @SuppressWarnings("PMD") public ClassInfoFactory getClassInfoFactory$JOAFIP$() { return classInfoFactory; } @@ -87,7 +94,13 @@ // no implementation } + @SuppressWarnings("PMD") @Override + public void constructorEnd$JOAFIP$() { + // no implementation + } + + @Override @SuppressWarnings("PMD") public void methodEnd$JOAFIP$() { // no implementation @@ -290,10 +303,4 @@ // no implementation return false; } - - @SuppressWarnings("PMD") - @Override - public void setInConstruction$JOAFIP$(final boolean inConstruction) { - // no implementation - } } Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java 2011-10-22 03:38:16 UTC (rev 2935) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java 2011-10-23 11:37:55 UTC (rev 2936) @@ -99,7 +99,7 @@ assertTrue("must be loaded", ProxyManager2.isLoadedOrNotAProxy(object)); assertNotNull("field must be defined", ((Bob1) object).getBob2()); ProxyManager2.unload(object); - assertFalse("must not be unloaded", + assertFalse("must not be unloaded after call of unload", ProxyManager2.isLoadedOrNotAProxy(object)); assertNull("field must not be defined", getBob2(object)); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-23 11:38:02
|
Revision: 2936 http://joafip.svn.sourceforge.net/joafip/?rev=2936&view=rev Author: luc_peuvrier Date: 2011-10-23 11:37:55 +0000 (Sun, 23 Oct 2011) Log Message: ----------- auto save now ok Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/service/IFilePersistence.java trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerDelegatingToStateMap.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/DetachedProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackProxyDelegation.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/IProxyCallBackToImplement.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/NullProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/StaticProxyCallBack.java trunk/joafip/src/test/java/net/sf/joafip/service/TestTreeListIteratorIntercept.java trunk/joafip/src/test/java/net/sf/joafip/service/sync/TestSynchronizedCollection.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/AbstractObjectIoManagerForProxyTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/ProxyCallBackForTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-22 03:38:23
|
Revision: 2935 http://joafip.svn.sourceforge.net/joafip/?rev=2935&view=rev Author: luc_peuvrier Date: 2011-10-22 03:38:16 +0000 (Sat, 22 Oct 2011) Log Message: ----------- storage information management refactoring Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/StorageInfo.java trunk/joafip/src/main/java/net/sf/joafip/store/service/AbstractDelegatingToStoreManagers.java trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerIOForObject.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractObjectIOTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractSerializeTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOBasicTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreationConstructed.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyFieldReflect.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPackageVisibility.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPrivate.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptProtected.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyManager2.java Modified: trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/StorageInfo.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/StorageInfo.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/StorageInfo.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -29,6 +29,7 @@ import net.sf.joafip.store.entity.classinfo.ClassInfo; import net.sf.joafip.store.entity.conversion.ClassReplacementDef; import net.sf.joafip.store.service.objectio.ObjectIOException; +import net.sf.joafip.store.service.objectio.manager.AbstractObjectIOManagerIOForObject; /** * to store additional informations on stored class @@ -39,11 +40,9 @@ @NotStorableClass public class StorageInfo { - private static final int INVALID_SIZE = -1; - private Deque<ClassReplacementDef> replacementDefList; - private int headerDataSize = INVALID_SIZE; + private int headerDataSize = AbstractObjectIOManagerIOForObject.HEADER_DATA_SIZE; /** joafip release identifier of data record */ private int joafipReleaseId; @@ -51,11 +50,6 @@ /** data model identifier of data record */ private int dataModelIdentifier; - public StorageInfo(final int headerDataSize) { - super(); - this.headerDataSize = headerDataSize; - } - public Deque<ClassReplacementDef> getReplacementDefList() { return replacementDefList; } @@ -91,15 +85,11 @@ } public int getHeaderDataSize() { - // ASSERTX - assert headerDataSize != INVALID_SIZE : "header data size not set"; return headerDataSize; } public void setHeaderDataSize(final int headerDataSize) throws ObjectIOException { - // ASSERTX - assert headerDataSize != INVALID_SIZE : "header data size not set"; this.headerDataSize = headerDataSize; } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/AbstractDelegatingToStoreManagers.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/AbstractDelegatingToStoreManagers.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/AbstractDelegatingToStoreManagers.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -77,7 +77,6 @@ import net.sf.joafip.store.service.objectio.ObjectIODataCorruptedException; import net.sf.joafip.store.service.objectio.ObjectIODataRecordNotFoundException; import net.sf.joafip.store.service.objectio.ObjectIOException; -import net.sf.joafip.store.service.objectio.manager.AbstractObjectIOManagerIOForObject; import net.sf.joafip.store.service.objectio.manager.ClassNameManager; import net.sf.joafip.store.service.objectio.manager.IClassNameManager; import net.sf.joafip.store.service.objectio.manager.ObjectIOManager; @@ -759,8 +758,7 @@ private Object newProxyInstance(final ClassInfo objectClassInfo, final Class<?>[] parameterTypes, final Object[] initargs) throws ProxyException { - final StorageInfo storageInfo = new StorageInfo( - AbstractObjectIOManagerIOForObject.HEADER_DATA_SIZE); + final StorageInfo storageInfo = new StorageInfo(); return proxyManager2.newInstanceConstruct(objectClassInfo, parameterTypes, initargs, storageInfo, objectIOManager, null/* @@ -776,8 +774,7 @@ .getNoProxyClassInfo(objectClass); final Object newInstance; if (proxyMode) { - final StorageInfo storageInfo = new StorageInfo( - AbstractObjectIOManagerIOForObject.HEADER_DATA_SIZE); + final StorageInfo storageInfo = new StorageInfo(); newInstance = proxyManager2.newInstanceConstruct( objectClassInfo, storageInfo, objectIOManager, null/* @@ -816,8 +813,7 @@ try { final Object newInstance; if (proxyMode) { - final StorageInfo storageInfo = new StorageInfo( - AbstractObjectIOManagerIOForObject.HEADER_DATA_SIZE); + final StorageInfo storageInfo = new StorageInfo(); final ObjectAndPersistInfo objectAndPersistInfo = proxyManager2 .newInstanceNoConstruction(objectClassInfo, storageInfo, objectIOManager, null/* Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -70,7 +70,6 @@ import net.sf.joafip.store.service.objectio.ObjectIOException; import net.sf.joafip.store.service.objectio.ObjectIOInvalidClassException; import net.sf.joafip.store.service.objectio.ObjectIONotSerializableException; -import net.sf.joafip.store.service.objectio.manager.AbstractObjectIOManagerIOForObject; import net.sf.joafip.store.service.objectio.manager.IObjectIOManagerForObjectIO; import net.sf.joafip.store.service.objectio.manager.ISubsituteSynchronizer; import net.sf.joafip.store.service.objectio.manager.ISubstituteObjectManager; @@ -1069,12 +1068,9 @@ if (proxyMode) { /* store root will be store in data record #1 */ storeRoot = (StoreRoot4) proxyManager2 - .newInstanceConstruct( - storeRootClassInfo, - new StorageInfo( - AbstractObjectIOManagerIOForObject.HEADER_DATA_SIZE), - objectIOManager, dataRecordIdentifier, - true); + .newInstanceConstruct(storeRootClassInfo, + new StorageInfo(), objectIOManager, + dataRecordIdentifier, true); } else { storeRoot = new StoreRoot4(); /* Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerIOForObject.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerIOForObject.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerIOForObject.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -656,7 +656,7 @@ final ObjectAndPersistInfo objectAndPersistInfo; - final StorageInfo storageInfo = new StorageInfo(HEADER_DATA_SIZE); + final StorageInfo storageInfo = new StorageInfo(); storageInfo.setReplacementDefList(replacementDef); storageInfo.setHeaderDataSize(headerReader.headerDataSize); storageInfo.setJoafipReleaseId(headerReader.joafipReleaseId); @@ -1393,8 +1393,8 @@ final ClassInfo objectClassInfo = classInfoFactory .getNoProxyClassInfo(objectClass); return proxyManager2.newInstanceConstruct(objectClassInfo, - parameterTypes, initargs, - new StorageInfo(HEADER_DATA_SIZE), this, null, true); + parameterTypes, initargs, new StorageInfo(), this, null, + true); } catch (final ClassInfoException exception) { throw new ObjectIORuntimeException(exception); } catch (final ProxyException exception) { @@ -1408,7 +1408,7 @@ final ClassInfo objectClassInfo = classInfoFactory .getNoProxyClassInfo(objectClass); return proxyManager2.newInstanceConstruct(objectClassInfo, - new StorageInfo(HEADER_DATA_SIZE), this, null, true); + new StorageInfo(), this, null, true); } catch (final ClassInfoException exception) { throw new ObjectIORuntimeException(exception); } catch (final ProxyException exception) { @@ -1416,26 +1416,11 @@ } } - // @Override - // public Object newInstanceNoConstruction(final Class<?> objectClass) { - // try { - // final ClassInfo objectClassInfo = classInfoFactory - // .getNoProxyClassInfo(objectClass); - // return proxyManager2.newInstanceNoConstruction(objectClassInfo, - // new StorageInfo(HEADER_DATA_SIZE), this, null, true) - // .getObject(); - // } catch (final ClassInfoException exception) { - // throw new ObjectIORuntimeException(exception); - // } catch (final ProxyException exception) { - // throw new ObjectIORuntimeException(exception); - // } - // } - @Override public Object newInstanceNoConstruction(final ClassInfo objectClassInfo) { try { return proxyManager2.newInstanceNoConstruction(objectClassInfo, - new StorageInfo(HEADER_DATA_SIZE), this, null, true); + new StorageInfo(), this, null, true); } catch (final ProxyException exception) { throw new ObjectIORuntimeException(exception); } Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -103,7 +103,7 @@ final ClassInfo objectClassInfo = classInfoFactory .getNoProxyClassInfo(objectClass); return proxyManager2.newInstanceConstruct(objectClassInfo, - parameterTypes, initargs, new StorageInfo(0), this, + parameterTypes, initargs, new StorageInfo(), this, null/* dataRecordIdentifier */, true/* persisted */); } catch (ClassInfoException exception) { throw new StoreRuntimeException(exception); @@ -118,7 +118,7 @@ final ClassInfo objectClassInfo = classInfoFactory .getNoProxyClassInfo(objectClass); return proxyManager2.newInstanceConstruct(objectClassInfo, - new StorageInfo(0), this, null/* dataRecordIdentifier */, + new StorageInfo(), this, null/* dataRecordIdentifier */, true/* persisted */); } catch (ClassInfoException exception) { throw new StoreRuntimeException(exception); @@ -146,7 +146,7 @@ public Object newInstanceNoConstruction(final ClassInfo objectClassInfo) { try { return proxyManager2.newInstanceNoConstruction(objectClassInfo, - new StorageInfo(0), this, null/* dataRecordIdentifier */, + new StorageInfo(), this, null/* dataRecordIdentifier */, true/* persisted */).getObject(); } catch (ProxyException exception) { throw new StoreRuntimeException(exception); Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractObjectIOTest.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractObjectIOTest.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractObjectIOTest.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -490,7 +490,7 @@ final ClassInfo objectClassInfo = classInfoFactory .getNoProxyClassInfo(objectClass); return proxyManager2.newInstanceConstruct(objectClassInfo, - parameterTypes, initargs, new StorageInfo(0), this, null, + parameterTypes, initargs, new StorageInfo(), this, null, true); } catch (ClassInfoException exception) { throw new ObjectIORuntimeException(exception); @@ -505,7 +505,7 @@ final ClassInfo objectClassInfo = classInfoFactory .getNoProxyClassInfo(objectClass); return proxyManager2.newInstanceConstruct(objectClassInfo, - new StorageInfo(0), this, null, true); + new StorageInfo(), this, null, true); } catch (ClassInfoException exception) { throw new ObjectIORuntimeException(exception); } catch (ProxyException exception) { @@ -532,7 +532,7 @@ public Object newInstanceNoConstruction(final ClassInfo objectClassInfo) { try { return proxyManager2.newInstanceNoConstruction(objectClassInfo, - new StorageInfo(0), this, null, true); + new StorageInfo(), this, null, true); } catch (ProxyException exception) { throw new ObjectIORuntimeException(exception); } Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractSerializeTest.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractSerializeTest.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractSerializeTest.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -132,7 +132,7 @@ final IObjectInput objectInput = new ObjectInputImmediateSerializable( this, classInfoFactory, proxyManager2, helperBinaryConversion); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); // storageInfo.setHeaderDataSize(0); ObjectAndPersistInfo unserializedAndPersistInfo = objectInput .createObject(dataRecordIdentifier, binary, classInfo, @@ -178,8 +178,8 @@ ObjectIODataRecordNotFoundException, ObjectIOClassNotFoundException, ObjectIODataCorruptedException, ObjectIOTooBigForSerializationException { - final int offset = 0; - final StorageInfo storageInfo = new StorageInfo(offset); + final StorageInfo storageInfo = new StorageInfo(); + final int offset = storageInfo.getHeaderDataSize(); final ObjectAndPersistInfo objectAndPersistInfo = /**/new ObjectAndPersistInfo(toSerialize, false, classInfo, storageInfo); Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOBasicTest.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOBasicTest.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOBasicTest.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -60,12 +60,12 @@ final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(Integer.class); final Integer integer = Integer.valueOf(10); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final ObjectAndPersistInfo objectAndItsClassInfo = /**/new ObjectAndPersistInfo(integer, false, classInfo, storageInfo); objectOutput.prepareWrite(objectAndItsClassInfo); final byte[] binary = new byte[1000]; - final int offset = 0; + final int offset = storageInfo.getHeaderDataSize(); storageInfo.setHeaderDataSize(offset); // int byte size to skip class name information objectOutput Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -53,7 +53,7 @@ final Class<Bob1> objectClass = Bob1.class; final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(objectClass); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final ProxyManager2 proxyManager2 = new ProxyManager2( new ClassLoaderProvider(), classInfoFactory); // change persistence id to have a new proxy class name Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -81,7 +81,7 @@ final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(objectClass); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final ProxyManager2 proxyManager2 = new ProxyManager2( new ClassLoaderProvider(), classInfoFactory); final Object object = proxyManager2.newInstanceNoConstruction( Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreationConstructed.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreationConstructed.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreationConstructed.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -65,7 +65,7 @@ .getNoProxyClassInfo(objectClass); final ProxyManager2 proxyManager2 = new ProxyManager2( new ClassLoaderProvider(), classInfoFactory); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); inConstruction = true; final BobCallInConstructor object = (BobCallInConstructor) proxyManager2 .newInstanceConstruct(classInfo, Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyFieldReflect.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyFieldReflect.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyFieldReflect.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -128,7 +128,7 @@ IllegalAccessException, ObjectIOException, ClassInfoException { final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(Bob1.class); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final Bob1 proxyObject = (Bob1) proxyManager2.newInstanceConstruct( classInfo, storageInfo, objectIOManager, DataRecordIdentifier.LAST, true); @@ -190,7 +190,7 @@ final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(Bob1.class); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); storageInfo .setHeaderDataSize(AbstractObjectIOManagerIOForObject.HEADER_DATA_SIZE); objectIOManager Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPackageVisibility.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPackageVisibility.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPackageVisibility.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -58,7 +58,7 @@ final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(objectClass); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final ClassLoaderProvider classLoaderProvider = new ClassLoaderProvider(); final ProxyManager2 proxyManager2 = new ProxyManager2( classLoaderProvider, classInfoFactory); Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPrivate.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPrivate.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPrivate.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -65,7 +65,7 @@ final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(objectClass); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final ClassLoaderProvider classLoaderProvider = new ClassLoaderProvider(); final ProxyManager2 proxyManager2 = new ProxyManager2( classLoaderProvider, classInfoFactory); Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptProtected.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptProtected.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptProtected.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -58,7 +58,7 @@ final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(objectClass); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final ClassLoaderProvider classLoaderProvider = new ClassLoaderProvider(); final ProxyManager2 proxyManager2 = new ProxyManager2( classLoaderProvider, classInfoFactory); Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyManager2.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyManager2.java 2011-10-21 03:10:06 UTC (rev 2934) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyManager2.java 2011-10-22 03:38:16 UTC (rev 2935) @@ -59,7 +59,7 @@ final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(objectClass); - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final ClassLoaderProvider classLoaderProvider = new ClassLoaderProvider(); final ProxyManager2 proxyManager2 = new ProxyManager2( classLoaderProvider, classInfoFactory); @@ -93,7 +93,7 @@ final ClassInfo classInfo = classInfoFactory .getNoProxyClassInfo(objectClass); setted = false; - final StorageInfo storageInfo = new StorageInfo(0); + final StorageInfo storageInfo = new StorageInfo(); final ClassLoaderProvider classLoaderProvider = new ClassLoaderProvider(); final ProxyManager2 proxyManager2 = new ProxyManager2( classLoaderProvider, classInfoFactory); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-22 03:38:23
|
Revision: 2935 http://joafip.svn.sourceforge.net/joafip/?rev=2935&view=rev Author: luc_peuvrier Date: 2011-10-22 03:38:16 +0000 (Sat, 22 Oct 2011) Log Message: ----------- storage information management refactoring Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/StorageInfo.java trunk/joafip/src/main/java/net/sf/joafip/store/service/AbstractDelegatingToStoreManagers.java trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerIOForObject.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractObjectIOTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractSerializeTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOBasicTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreationConstructed.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyFieldReflect.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPackageVisibility.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptPrivate.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyInterceptProtected.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyManager2.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 03:10:12
|
Revision: 2934 http://joafip.svn.sourceforge.net/joafip/?rev=2934&view=rev Author: luc_peuvrier Date: 2011-10-21 03:10:06 +0000 (Fri, 21 Oct 2011) Log Message: ----------- tests ok Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 03:10:12
|
Revision: 2934 http://joafip.svn.sourceforge.net/joafip/?rev=2934&view=rev Author: luc_peuvrier Date: 2011-10-21 03:10:06 +0000 (Fri, 21 Oct 2011) Log Message: ----------- tests ok Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java 2011-10-21 01:40:53 UTC (rev 2933) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java 2011-10-21 03:10:06 UTC (rev 2934) @@ -176,28 +176,28 @@ } // FIXMELUC _________________________for test -// private boolean in() { -// final StackTraceElement[] stackTraceElements = new Exception() -// .getStackTrace(); -// final StackTraceElement stackTraceElement = stackTraceElements[3]; -// final String className = stackTraceElement.getClassName(); -// final String methodName = stackTraceElement.getMethodName(); -// return className.contains("MultiMap") -// && methodName.contains("addKeyDefinition"); -// } + // private boolean in() { + // final StackTraceElement[] stackTraceElements = new Exception() + // .getStackTrace(); + // final StackTraceElement stackTraceElement = stackTraceElements[3]; + // final String className = stackTraceElement.getClassName(); + // final String methodName = stackTraceElement.getMethodName(); + // return className.contains("MultiMap") + // && methodName.contains("addKeyDefinition"); + // } @Override @SuppressWarnings("PMD") public void intercept$JOAFIP$() { synchronized (storeMutex) { - if (autoSaveEnabled) { + if (exclusiveAccessSession) { inObjectCount++; } // FIXMELUC _________________________for test -// if (in()) { -// System.out.println("intercept " + inObjectCount + " " -// + proxyObjectAndPersistInfo); -// } + // if (in()) { + // System.out.println("intercept " + inObjectCount + " " + // + proxyObjectAndPersistInfo); + // } // end for test if (exclusiveAccessSession) { try { @@ -251,17 +251,17 @@ @SuppressWarnings("PMD") public void methodEnd$JOAFIP$() { // FIXMELUC _________________________for test -// if (in()) { -// System.out.println("methodEnd " + inObjectCount + " " -// + proxyObjectAndPersistInfo); -// } + // if (in()) { + // System.out.println("methodEnd " + inObjectCount + " " + // + proxyObjectAndPersistInfo); + // } // end for test synchronized (storeMutex) { + final ObjectAndPersistInfo instanceAndPersistInfo = getInstance$JOAFIP$(); + if (--inObjectCount == 0) { + instanceAndPersistInfo.acceded = false; + } if (autoSaveEnabled) { - final ObjectAndPersistInfo instanceAndPersistInfo = getInstance$JOAFIP$(); - if (--inObjectCount == 0) { - instanceAndPersistInfo.acceded = false; - } // ASSERTX assert inObjectCount >= 0 : "running in object count can not be negative, is " + inObjectCount Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java 2011-10-21 01:40:53 UTC (rev 2933) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyManager2.java 2011-10-21 03:10:06 UTC (rev 2934) @@ -117,7 +117,7 @@ } else { final Class<?> enhancedClass = classEnhancer.enhanceClass( objectClassInfo, persistenceId, - objectIOManager.isAutoSaveEnabled()); + objectIOManager.isExclusiveAccessSession()); instanceCreated = helperReflect .newInstanceNoConstruction(enhancedClass); } @@ -155,7 +155,7 @@ } else { final Class<?> enhancedClass = classEnhancer.enhanceClass( objectClassInfo, persistenceId, - objectIOManager.isAutoSaveEnabled()); + objectIOManager.isExclusiveAccessSession()); instanceCreated = reflectNewInstanceDefaultConstructor(enhancedClass); } if (createEntryinObjectMap) { @@ -199,7 +199,7 @@ } else { final Class<?> enhancedClass = classEnhancer.enhanceClass( objectClassInfo, persistenceId, - objectIOManager.isAutoSaveEnabled()); + objectIOManager.isExclusiveAccessSession()); instanceCreated = reflectNewInstanceConstruct(enhancedClass, parameterTypes, initargs); } Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java 2011-10-21 01:40:53 UTC (rev 2933) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java 2011-10-21 03:10:06 UTC (rev 2934) @@ -96,9 +96,6 @@ super.setUp(); classInfoFactory = new ClassInfoFactory(1); helperReflect = HelperReflect.getInstance(); - // filePersistence = new FilePersistence(1, null, path, - // /**/true/* remove files */, - // /**/false/* do not manage garbage */); final FilePersistenceBuilder builder = new FilePersistenceBuilder(); builder.setPathName(path.getPath()); builder.setProxyMode(true); @@ -107,7 +104,6 @@ builder.setCrashSafeMode(false); filePersistence = (FilePersistence) builder.build(); dataAccessSession = filePersistence.createExclusiveDataAccessSession(); - // useJavaAgent = JoafipJavaAgent.isTransformerInstalled(); } @Override @@ -266,7 +262,9 @@ } } if (fail) { - fail(builder.toString()); + final String message = builder.toString(); + logger.error(message); + fail(message); } } Modified: trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java 2011-10-21 01:40:53 UTC (rev 2933) +++ trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyAutoSave.java 2011-10-21 03:10:06 UTC (rev 2934) @@ -64,8 +64,9 @@ assertEquals("must not be in object", 0, proxyManager2.getInObjectCount(object)); - assertEquals("must be in object", 1, - ((Bob1) object).getInObjectCount(proxyManager2)); + final int inObjectCount = ((Bob1) object) + .getInObjectCount(proxyManager2); + assertEquals("must be in object", 1, inObjectCount); assertEquals("must not be in object", 0, proxyManager2.getInObjectCount(object)); try { @@ -84,4 +85,9 @@ public boolean isAutoSaveEnabled() { // NOPMD return true; } + + @Override + public boolean isExclusiveAccessSession() { + return true; + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 01:41:05
|
Revision: 2933 http://joafip.svn.sourceforge.net/joafip/?rev=2933&view=rev Author: luc_peuvrier Date: 2011-10-21 01:40:53 +0000 (Fri, 21 Oct 2011) Log Message: ----------- storage annotation check added in tests Modified Paths: -------------- trunk/joafip/src/test/java/net/sf/joafip/entity/TestFilePersistenceProperties.java trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java trunk/joafip/src/test/java/net/sf/joafip/ograph/OGraphTest.java trunk/joafip/src/test/java/net/sf/joafip/service/AbstractCopyRuntime.java trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestCustomObjectIO.java trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestFilePersistence.java trunk/joafip/src/test/java/net/sf/joafip/service/TestBobSerializeStackOverflow.java trunk/joafip/src/test/java/net/sf/joafip/service/TestClear.java trunk/joafip/src/test/java/net/sf/joafip/service/TestCrashSafe.java trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithBob1Custom.java trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializer.java trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializerZipper.java trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceNoG.java trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceOpenClose.java trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceWithG.java trunk/joafip/src/test/java/net/sf/joafip/service/TestMultipleFilePersistenceInstance.java trunk/joafip/src/test/java/net/sf/joafip/service/TestVersion.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestBugChangeLog.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestGarbageModeError.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestRootObjectMapAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestSaveUnloaded.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/java/util/TestPArrayList.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/primitive/TestPrimitiveIO.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistence.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistenceMemory.java trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestClassLoaderPersistence.java trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestImport222NotLazy.java trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestThisInConstructor.java trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestUseRuntime222NotLazy.java trunk/joafip/src/test/java/net/sf/joafip/service/rel301/TestUseRuntime300NotLazy.java trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionA.java trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionB.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestConstructEntrySetIteratorOfPMapKeyNavigableSet.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestProxyTestList.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestRuntime310Garbage.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java trunk/joafip/src/test/java/net/sf/joafip/store/service/AbstractDataManagerTestCase.java trunk/joafip/src/test/java/net/sf/joafip/store/service/AbstractGarbageTestCase.java trunk/joafip/src/test/java/net/sf/joafip/store/service/AbstractTestGarbage.java trunk/joafip/src/test/java/net/sf/joafip/store/service/AbstractTestStoreMemoryLeak.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestGarbageForegroundFile.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestGarbageForegroundMemory.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestGarbageInBackground.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestObjectReferenceLinkInMemory.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreMemoryLeakCacheNoGarbage.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreMemoryLeakNoCacheGarbage.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreMemoryLeakNoCacheNoGarbage.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreOpenClose.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreOpenCloseNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/Test16BitsConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/Test32BitsConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/Test64BitsConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/Test8BitsConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestBooleanConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestBooleanNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestByteConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestByteNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestCharConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestCharNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestDoubleConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestDoubleNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestFloatConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestFloatNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestIntegerConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestIntegerNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestLongConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestLongNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestReferenceConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestReferenceNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestShortConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestShortNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/bytecode/TestForTransform.java trunk/joafip/src/test/java/net/sf/joafip/store/service/bytecode/TestPersistableCodeGeneratorInner.java trunk/joafip/src/test/java/net/sf/joafip/store/service/bytecode/agent/TestPackageMgr.java trunk/joafip/src/test/java/net/sf/joafip/store/service/bytecode/proxy/TestCheckMethodVisitor.java trunk/joafip/src/test/java/net/sf/joafip/store/service/classinfo/TestClassInfoFactory.java trunk/joafip/src/test/java/net/sf/joafip/store/service/classinfo/TestClassReplacement.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionHashMapNosubsNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionHashMapNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionHashTableNosubsNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionHashTableNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionTreeMapNosubsNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionTreeMapNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionTroveHashMapNosubsNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionTroveHashMapNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionVectorNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/conversion/TestConvertionDefinitionReader.java trunk/joafip/src/test/java/net/sf/joafip/store/service/conversion/TestReplacementDefMap.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/TestDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/TestProxyDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/TestLinkManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/TestReferenceLinkGraph.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/TestStoreGarbager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/recordmgr/AbstractGarbageManagerTestCase.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/recordmgr/TestGarbageCandidateRecordManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/recordmgr/TestLinkRecordManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/recordmgr/TestToGarbageRecordManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/heaprecordable/TestHeapRecordableManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/TestClassNameManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/AbstractBinaryDump.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/AbstractTestIoManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/TestObjectIOManagerGenericCases.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/TestObjectIOManagerSerializeCase.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/TestSerializerObjectIOManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractObjectIOTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractSerializeTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOBasicTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOWithSerialPersistenceFieldsTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOWithSerialPersistenceFieldsUnsharedTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOWithSerializeCycleTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOWithSerializeMethodTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/AbstractObjectIoManagerForProxyTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/ProxyCallBackForTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreationConstructed.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyManager2.java trunk/joafip/src/test/java/net/sf/joafip/store/service/synchronizer/TestHashsetSynchronizer.java trunk/joafip/src/test/java/net/sf/joafip/store/service/synchronizer/TestLinkedListSynchronizer.java trunk/joafip/src/test/java/net/sf/joafip/store/service/synchronizer/TestMapSynchronizer.java trunk/joafip-collection/src/main/java/net/sf/joafip/java/util/support/tree/TreeSupport.java trunk/joafip-collection/src/test/java/net/sf/joafip/java/util/TestIterPArrayList.java trunk/joafip-common/src/main/java/net/sf/joafip/logger/DummyLogger.java trunk/joafip-common/src/main/java/net/sf/joafip/logger/IJoafipLogger.java trunk/joafip-common/src/main/java/net/sf/joafip/logger/JoafipLogger.java trunk/joafip-common/src/test/java/net/sf/joafip/AbstractJoafipCommonTestCase.java trunk/joafip-example-simplestore/src/test/java/net/sf/joafip/simplestore/TestSimpleStore.java trunk/joafip-file/src/test/java/net/sf/joafip/file/service/RandomAccessFileReadWriteCacheTest.java trunk/joafip-file/src/test/java/net/sf/joafip/file/service/RandomFileTest.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/TestIdNode.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/entity/TestAbstractFileStorable.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/entity/TestDataRecordIdentifier.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/entity/TestMarshall.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/service/TestHeapElementManager.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/service/TestHeapRecordManage.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/service/TestRandomAccessFileCache.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/service/TestStoreRestore.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/AbstractTestHeapDataManager.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/AbstractTestHeapDataManagerRecord.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/TestHeapDataManager.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/TestHeapDataManagerBackup.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/TestHeapDataManagerFreeing.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/TestHeapDataMgrWithScenario.java trunk/joafip-log4j/src/main/java/net/sf/joafip/logger/Log4jAdapter.java trunk/joafip-meminspector/src/test/java/net/sf/joafip/meminspector/TestMemInspector.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/AbstractTestByPosition.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/AbstractTestDelete.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/AbstractTestInsert.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/AbstractTestNumberOfChild.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestAppend.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestByPositionDuplicate.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestByPositionUnique.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestDeleteDuplicate.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestDeleteUnique.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestFirstLastNext.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestIndex.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestInsertDuplicate.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestInsertUnique.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestNumberOfChildDoNotManageNodeIndex.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestNumberOfChildManageNodeIndex.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestSearchDuplicate.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestSearchUnique.java trunk/joafip-testsuite/src/main/java/net/sf/joafip/InErrorTests.java trunk/joafip-testsuite/src/main/java/net/sf/joafip/service/rel400/ServiceRel400Tests.java Added Paths: ----------- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeMapIteratorAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSetIteratorAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSupportIterator.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSupportIteratorAutoSave.java Modified: trunk/joafip/src/test/java/net/sf/joafip/entity/TestFilePersistenceProperties.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/entity/TestFilePersistenceProperties.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/entity/TestFilePersistenceProperties.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -18,12 +18,14 @@ import net.sf.joafip.AbstractJoafipTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.service.ClassLoaderProvider; import net.sf.joafip.service.FilePersistenceException; import net.sf.joafip.service.FilePersistencePropertiesReader; @NotStorableClass +@StorableAccess public class TestFilePersistenceProperties extends AbstractJoafipTestCase { private static final String PROP = Modified: trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -37,6 +37,8 @@ @AssertNotNull private final BobAsDelegateNotifyDelegating delegate; + private final boolean constructed; + public BobASDelegatingListenDelegate(final IInstanceFactory instanceFactory) { super(); delegate = BobAsDelegateNotifyDelegating.newInstance(instanceFactory, @@ -45,8 +47,13 @@ throw new IllegalStateException("delegate must not be null"); } initialize();// NOPMD + constructed = true; } + public boolean isConstructed() { + return constructed; + } + public static BobASDelegatingListenDelegate newInstance( final IInstanceFactory instanceFactory) { final BobASDelegatingListenDelegate newInstance; Modified: trunk/joafip/src/test/java/net/sf/joafip/ograph/OGraphTest.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/ograph/OGraphTest.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/ograph/OGraphTest.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -5,6 +5,7 @@ import java.util.Set; import net.sf.joafip.AbstractJoafipTestCase; +import net.sf.joafip.NoStorableAccess; import net.sf.joafip.NotStorableClass; import net.sf.joafip.TestException; import net.sf.joafip.logger.JoafipLogger; @@ -15,6 +16,7 @@ import net.sf.joafip.store.service.objectfortest.BobContainer; @NotStorableClass +@NoStorableAccess public class OGraphTest extends AbstractJoafipTestCase { private static final String BAD_PATH = "bad path"; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/AbstractCopyRuntime.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/AbstractCopyRuntime.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/AbstractCopyRuntime.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -30,6 +30,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; /** @@ -38,6 +39,7 @@ * */ @NotStorableClass +@StorableAccess public abstract class AbstractCopyRuntime extends AbstractDeleteFileTestCase { public AbstractCopyRuntime() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestCustomObjectIO.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestCustomObjectIO.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestCustomObjectIO.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -18,6 +18,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.store.service.objectfortest.Bob1; @@ -25,6 +26,7 @@ import net.sf.joafip.store.service.objectfortest.Bob3; @NotStorableClass +@StorableAccess public abstract class AbstractTestCustomObjectIO extends AbstractDeleteFileTestCase { @@ -41,7 +43,7 @@ } @Override - protected void setUp() throws Exception { + protected void setUp() throws Exception { // NOPMD super.setUp(); // filePersistence = new FilePersistence(1, null, path, // /**/false/* do not remove files */, @@ -56,7 +58,7 @@ } @Override - protected void tearDown() throws Exception { + protected void tearDown() throws Exception { // NOPMD try { filePersistence.close(); } catch (final Throwable throwable) {// NOPMD Modified: trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestFilePersistence.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestFilePersistence.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestFilePersistence.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -18,6 +18,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.store.entity.garbage.ReferenceLinkGarbageException; @@ -26,6 +27,7 @@ import net.sf.joafip.store.service.objectfortest.BobContainer; @NotStorableClass +@StorableAccess public abstract class AbstractTestFilePersistence extends AbstractDeleteFileTestCase { @@ -47,7 +49,7 @@ } @Override - protected void tearDown() throws Exception { + protected void tearDown() throws Exception { // NOPMD try { filePersistence.close(); } catch (final Throwable throwable) {// NOPMD Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestBobSerializeStackOverflow.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestBobSerializeStackOverflow.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestBobSerializeStackOverflow.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -25,6 +25,8 @@ import java.util.Set; import net.sf.joafip.AbstractDeleteFileTestCase; +import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.java.util.PLinkedTreeSet; @@ -35,6 +37,8 @@ * * @author luc peuvrier */ +@NotStorableClass +@StorableAccess public class TestBobSerializeStackOverflow extends AbstractDeleteFileTestCase { private static final String BIG_BOB_KEY = "bigBobKey"; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestClear.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestClear.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestClear.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -24,6 +24,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.store.service.objectfortest.Bob1; @@ -34,6 +35,7 @@ * */ @NotStorableClass +@StorableAccess public class TestClear extends AbstractDeleteFileTestCase { private static final String BOB1_KEY = "bob1"; @@ -64,7 +66,7 @@ } @Override - protected void tearDown() throws Exception { + protected void tearDown() throws Exception { // NOPMD try { filePersistence.close(); } catch (final Throwable throwable) {// NOPMD Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestCrashSafe.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestCrashSafe.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestCrashSafe.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -28,6 +28,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestConstant; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; @@ -51,6 +52,7 @@ * */ @NotStorableClass +@StorableAccess public class TestCrashSafe extends AbstractDeleteFileTestCase { private static final JoafipLogger LOGGER = JoafipLogger Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithBob1Custom.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithBob1Custom.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithBob1Custom.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -17,10 +17,12 @@ package net.sf.joafip.service; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.store.service.objectfortest.Bob1; @NotStorableClass +@StorableAccess public class TestCustomObjectIOWithBob1Custom extends // NOPMD AbstractTestCustomObjectIO { @@ -34,7 +36,7 @@ } @Override - protected void setUp() throws Exception { + protected void setUp() throws Exception { // NOPMD super.setUp(); filePersistence.setObjectIOForClass(Bob1.class, Bob1ObjectInputForTestCustom.class, Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializer.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializer.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializer.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -17,12 +17,14 @@ package net.sf.joafip.service; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.store.service.objectfortest.Bob1; import net.sf.joafip.store.service.objectio.serialize.input.ObjectInputSerialize; import net.sf.joafip.store.service.objectio.serialize.output.ObjectOutputSerialize; @NotStorableClass +@StorableAccess public class TestCustomObjectIOWithSerializer extends // NOPMD AbstractTestCustomObjectIO { @@ -36,7 +38,7 @@ } @Override - protected void setUp() throws Exception { + protected void setUp() throws Exception { // NOPMD super.setUp(); filePersistence.setObjectIOForClass(Bob1.class, ObjectInputSerialize.class, ObjectOutputSerialize.class); Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializerZipper.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializerZipper.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializerZipper.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -17,12 +17,14 @@ package net.sf.joafip.service; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.store.service.objectfortest.Bob1; import net.sf.joafip.store.service.objectio.serialize.input.ObjectInputSerializeZipped; import net.sf.joafip.store.service.objectio.serialize.output.ObjectOutputSerializeZipped; @NotStorableClass +@StorableAccess public class TestCustomObjectIOWithSerializerZipper extends // NOPMD AbstractTestCustomObjectIO { @@ -36,7 +38,7 @@ } @Override - protected void setUp() throws Exception { + protected void setUp() throws Exception { // NOPMD super.setUp(); filePersistence.setObjectIOForClass(Bob1.class, ObjectInputSerializeZipped.class, Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceNoG.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceNoG.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceNoG.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -1,9 +1,11 @@ package net.sf.joafip.service; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; @NotStorableClass +@StorableAccess public class TestFilePersistenceNoG extends AbstractTestFilePersistence {// NOPMD public TestFilePersistenceNoG() throws TestException { @@ -15,7 +17,7 @@ } @Override - protected void setUp() throws Exception { + protected void setUp() throws Exception { // NOPMD super.setUp(); // filePersistence = new FilePersistence(1, null, path, // /**/false/* do not remove files */, Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceOpenClose.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceOpenClose.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceOpenClose.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -18,11 +18,13 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.java.util.PLinkedList; @NotStorableClass +@StorableAccess public class TestFilePersistenceOpenClose extends AbstractDeleteFileTestCase { private static final String LIST_MUST_BE_NULL = "list must be null"; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceWithG.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceWithG.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceWithG.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -1,9 +1,11 @@ package net.sf.joafip.service; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; @NotStorableClass +@StorableAccess public class TestFilePersistenceWithG extends AbstractTestFilePersistence {// NOPMD public TestFilePersistenceWithG() throws TestException { @@ -15,7 +17,7 @@ } @Override - protected void setUp() throws Exception { + protected void setUp() throws Exception { // NOPMD super.setUp(); // filePersistence = new FilePersistence(1, null, path, // /**/false/* do not remove files */, Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestMultipleFilePersistenceInstance.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestMultipleFilePersistenceInstance.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestMultipleFilePersistenceInstance.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -26,6 +26,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestConstant; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; @@ -40,6 +41,7 @@ * */ @NotStorableClass +@StorableAccess public class TestMultipleFilePersistenceInstance extends AbstractDeleteFileTestCase { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/TestVersion.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/TestVersion.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/TestVersion.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -17,10 +17,12 @@ package net.sf.joafip.service; import net.sf.joafip.AbstractJoafipTestCase; +import net.sf.joafip.DoNotTransform; import net.sf.joafip.NotStorableClass; import net.sf.joafip.TestException; @NotStorableClass +@DoNotTransform public class TestVersion extends AbstractJoafipTestCase { public TestVersion() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestBugChangeLog.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestBugChangeLog.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestBugChangeLog.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -18,6 +18,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestConstant; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; @@ -38,6 +39,7 @@ * */ @NotStorableClass +@StorableAccess public class TestBugChangeLog extends AbstractDeleteFileTestCase { private static final String SESION_MUST_BE_OPENED = "sesion must be opened"; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestGarbageModeError.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestGarbageModeError.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestGarbageModeError.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -18,6 +18,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestConstant; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; @@ -34,6 +35,7 @@ import net.sf.joafip.store.service.proxy.ProxyManager2; @NotStorableClass +@StorableAccess public class TestGarbageModeError extends AbstractDeleteFileTestCase { private static final String KEY = "key"; @@ -51,7 +53,7 @@ } @Override - protected void tearDown() throws Exception { + protected void tearDown() throws Exception { // NOPMD filePersistence = null;// NOPMD session = null;// NOPMD } Modified: trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestRootObjectMapAutoSave.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestRootObjectMapAutoSave.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestRootObjectMapAutoSave.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -23,6 +23,8 @@ package net.sf.joafip.service.bug; import net.sf.joafip.AbstractDeleteFileTestCase; +import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.service.FilePersistenceBuilder; import net.sf.joafip.service.FilePersistenceClassNotFoundException; @@ -39,6 +41,8 @@ * @author luc peuvrier * */ +@NotStorableClass +@StorableAccess public class TestRootObjectMapAutoSave extends AbstractDeleteFileTestCase { public TestRootObjectMapAutoSave() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestSaveUnloaded.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestSaveUnloaded.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestSaveUnloaded.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -17,6 +17,7 @@ package net.sf.joafip.service.bug; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.service.FilePersistenceClassNotFoundException; @@ -29,6 +30,7 @@ import net.sf.joafip.store.service.objectfortest.BobExternalizable; @NotStorableClass +@StorableAccess public class TestSaveUnloaded extends AbstractFilePersistenceForTest { private static final String KEY = "key"; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/bug/java/util/TestPArrayList.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/bug/java/util/TestPArrayList.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/bug/java/util/TestPArrayList.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -23,6 +23,7 @@ package net.sf.joafip.service.bug.java.util; import net.sf.joafip.AbstractJoafipTestCase; +import net.sf.joafip.DoNotTransform; import net.sf.joafip.NotStorableClass; import net.sf.joafip.TestException; import net.sf.joafip.java.util.PArrayList; @@ -34,6 +35,7 @@ * */ @NotStorableClass +@DoNotTransform public class TestPArrayList extends AbstractJoafipTestCase { public TestPArrayList() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/bug/primitive/TestPrimitiveIO.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/bug/primitive/TestPrimitiveIO.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/bug/primitive/TestPrimitiveIO.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -17,6 +17,7 @@ package net.sf.joafip.service.bug.primitive; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.service.FilePersistenceClassNotFoundException; @@ -34,6 +35,7 @@ * */ @NotStorableClass +@StorableAccess public class TestPrimitiveIO extends AbstractFilePersistenceForTest { private static final String READ_MUST_BE_EQUALS_TO_WROTE = "read must be equals to wrote"; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistence.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistence.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistence.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -26,6 +26,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.entity.MutableInteger; @@ -45,6 +46,7 @@ * @author luc peuvrier */ @NotStorableClass +@StorableAccess public class TestEnumPersistence extends AbstractDeleteFileTestCase { private IFilePersistence filePersistence; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistenceMemory.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistenceMemory.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistenceMemory.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -27,6 +27,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.entity.MutableInteger; @@ -50,6 +51,7 @@ * @author luc peuvrier */ @NotStorableClass +@StorableAccess public class TestEnumPersistenceMemory extends AbstractDeleteFileTestCase { private IFilePersistence filePersistence; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestClassLoaderPersistence.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestClassLoaderPersistence.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestClassLoaderPersistence.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -26,6 +26,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.service.FilePersistenceBuilder; @@ -44,6 +45,7 @@ * */ @NotStorableClass +@StorableAccess public class TestClassLoaderPersistence extends AbstractDeleteFileTestCase { private static final String KEY = "key"; Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestImport222NotLazy.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestImport222NotLazy.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestImport222NotLazy.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -25,11 +25,13 @@ import java.io.InputStream; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.service.FilePersistenceBuilder; import net.sf.joafip.store.service.conversion.def.InputStreamAndSource; @NotStorableClass +@StorableAccess public class TestImport222NotLazy extends AbstractTestImport222 { // NOPMD public TestImport222NotLazy() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestThisInConstructor.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestThisInConstructor.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestThisInConstructor.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -24,6 +24,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.entity.EnumFilePersistenceCloseAction; import net.sf.joafip.entity.ForThisTest; @@ -44,6 +45,7 @@ * */ @NotStorableClass +@StorableAccess public class TestThisInConstructor extends AbstractDeleteFileTestCase { private static final String KEY = @@ -60,7 +62,7 @@ } @Override - protected void setUp() throws Exception { + protected void setUp() throws Exception { // NOPMD super.setUp(); // filePersistence = new FilePersistence(1, null, path, true, false); final FilePersistenceBuilder builder = new FilePersistenceBuilder(); @@ -73,7 +75,7 @@ } @Override - protected void tearDown() throws Exception { + protected void tearDown() throws Exception { // NOPMD try { filePersistence.close(); } catch (final Exception exception) { // NOPMD Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestUseRuntime222NotLazy.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestUseRuntime222NotLazy.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestUseRuntime222NotLazy.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -23,6 +23,7 @@ package net.sf.joafip.service.rel300; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.service.FilePersistenceBuilder; import net.sf.joafip.service.FilePersistenceClassNotFoundException; @@ -40,6 +41,7 @@ * */ @NotStorableClass +@StorableAccess public class TestUseRuntime222NotLazy extends AbstractTestUseRuntime222 { // NOPMD public TestUseRuntime222NotLazy() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel301/TestUseRuntime300NotLazy.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel301/TestUseRuntime300NotLazy.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel301/TestUseRuntime300NotLazy.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -26,6 +26,7 @@ import java.net.URISyntaxException; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.service.FilePersistenceBuilder; import net.sf.joafip.service.FilePersistenceClassNotFoundException; @@ -42,6 +43,7 @@ * */ @NotStorableClass +@StorableAccess public class TestUseRuntime300NotLazy extends AbstractTestRuntime300 { // NOPMD public TestUseRuntime300NotLazy() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionA.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionA.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionA.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -25,6 +25,7 @@ import java.io.InputStream; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.service.FilePersistenceBuilder; import net.sf.joafip.store.service.conversion.def.InputStreamAndSource; @@ -35,6 +36,7 @@ * */ @NotStorableClass +@StorableAccess public class TestUseRuntime301NotLazyConversionA extends AbstractTestRuntime301 { // NOPMD public TestUseRuntime301NotLazyConversionA() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionB.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionB.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionB.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -25,6 +25,7 @@ import java.io.InputStream; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.service.FilePersistenceBuilder; import net.sf.joafip.store.service.conversion.def.InputStreamAndSource; @@ -35,6 +36,7 @@ * */ @NotStorableClass +@StorableAccess public class TestUseRuntime301NotLazyConversionB extends AbstractTestRuntime301 { // NOPMD public TestUseRuntime301NotLazyConversionB() throws TestException { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -64,6 +64,8 @@ public class TestAutoSave extends AbstractDeleteFileTestCase implements IAutoSaveEventListener { + private static final String MUST_HAS_INSTANCE_FACTORY = "must has instance factory"; + private static final String MUST_SAVE = "must save"; private static final String KEY = "key"; @@ -316,7 +318,7 @@ FilePersistenceTooBigForSerializationException { session.open(); final IInstanceFactory instanceFactory = session.getInstanceFactory(); - assertNotNull("must have instance factory", instanceFactory); + assertNotNull(MUST_HAS_INSTANCE_FACTORY, instanceFactory); saveDoneFlag = false; BobASDelegatingListenDelegate bob = new BobASDelegatingListenDelegate( @@ -344,13 +346,11 @@ FilePersistenceTooBigForSerializationException { session.open(); final IInstanceFactory instanceFactory = session.getInstanceFactory(); - assertNotNull("must have instance factory", instanceFactory); + assertNotNull(MUST_HAS_INSTANCE_FACTORY, instanceFactory); saveDoneFlag = false; - BobASDelegatingListenDelegate bob = (BobASDelegatingListenDelegate) instanceFactory - .newInstance(BobASDelegatingListenDelegate.class, - new Class<?>[] { IInstanceFactory.class }, - new Object[] { instanceFactory }); + BobASDelegatingListenDelegate bob = BobASDelegatingListenDelegate + .newInstance(instanceFactory); assertTrue(MUST_SAVE, saveDoneFlag); saveDoneFlag = false; @@ -366,6 +366,22 @@ session.close(); } + public void testSaveInConstruction4() throws FilePersistenceException, + FilePersistenceClassNotFoundException, + FilePersistenceInvalidClassException, + FilePersistenceDataCorruptedException, + FilePersistenceNotSerializableException, + FilePersistenceTooBigForSerializationException, ProxyException { + session.open(); + final IInstanceFactory instanceFactory = session.getInstanceFactory(); + assertNotNull(MUST_HAS_INSTANCE_FACTORY, instanceFactory); + final BobASDelegatingListenDelegate bob = BobASDelegatingListenDelegate + .newInstance(instanceFactory); + assertTrue("must be a proxy", ProxyManager2.isProxyOrEnhanced(bob)); + assertTrue("must be unloaded", ProxyManager2.isUnloaded(bob)); + assertTrue("bad state saved", bob.isConstructed()); + } + public void testWithTransient() throws FilePersistenceException, FilePersistenceClassNotFoundException, FilePersistenceInvalidClassException, Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestConstructEntrySetIteratorOfPMapKeyNavigableSet.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestConstructEntrySetIteratorOfPMapKeyNavigableSet.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestConstructEntrySetIteratorOfPMapKeyNavigableSet.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -26,6 +26,8 @@ import java.util.NavigableMap; import net.sf.joafip.AbstractJoafipCommonTestCase; +import net.sf.joafip.DoNotTransform; +import net.sf.joafip.NotStorableClass; import net.sf.joafip.TestException; import net.sf.joafip.java.util.PMapKeyNavigableSet; import net.sf.joafip.java.util.PTreeMap; @@ -39,6 +41,8 @@ * @author luc peuvrier * */ +@NotStorableClass +@DoNotTransform public class TestConstructEntrySetIteratorOfPMapKeyNavigableSet extends AbstractJoafipCommonTestCase implements IInstanceFactory { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestProxyTestList.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestProxyTestList.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestProxyTestList.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -16,6 +16,7 @@ */ package net.sf.joafip.service.rel400; +import net.sf.joafip.DoNotTransform; import net.sf.joafip.NotStorableClass; import net.sf.joafip.TestException; import net.sf.joafip.entity.rel400.ProxyTestList; @@ -29,6 +30,7 @@ * */ @NotStorableClass +@DoNotTransform public class TestProxyTestList extends AbstractLinkedListTest { public TestProxyTestList() throws TestException { @@ -40,7 +42,7 @@ } @Override - protected void setUp() throws Exception { + protected void setUp() throws Exception { // NOPMD linkedList = new ProxyTestList<String>(); super.setUp(); } Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestRuntime310Garbage.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestRuntime310Garbage.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestRuntime310Garbage.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -5,6 +5,7 @@ import java.util.Set; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.heapfile.record.entity.DataRecordIdentifier; import net.sf.joafip.heapfile.service.HeapException; @@ -33,6 +34,7 @@ import net.sf.joafip.store.service.proxy.ProxyManager2; @NotStorableClass +@StorableAccess public class TestRuntime310Garbage extends AbstractCopyRuntime implements IGarbageListener { Modified: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java 2011-10-21 01:36:31 UTC (rev 2932) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -29,6 +29,7 @@ import net.sf.joafip.AbstractDeleteFileTestCase; import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; import net.sf.joafip.TestException; import net.sf.joafip.java.util.PLinkedList; import net.sf.joafip.reflect.HelperReflect; @@ -67,6 +68,7 @@ * */ @NotStorableClass +@StorableAccess public class TestSaveInExclusiveDataAccessSession extends AbstractDeleteFileTestCase { @@ -251,16 +253,12 @@ final Object object = objectAndPersistInfo.getObject(); if (!excludedObjectSet.containsKey(object)) { fail = true; - builder.append(object.getClass().getName()); + builder.append(objectAndPersistInfo.toString()); builder.append(", loaded="); try { final boolean loadedOrNotAProxy = ProxyManager2 .isLoadedOrNotAProxy(object); builder.append(loadedOrNotAProxy); - if (loadedOrNotAProxy) { - builder.append(", "); - builder.append(object.toString()); - } } catch (final ProxyException exception) { builder.append(exception.getMessage()); } Added: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeMapIteratorAutoSave.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeMapIteratorAutoSave.java (rev 0) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeMapIteratorAutoSave.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -0,0 +1,116 @@ +/* + * Copyright 2011 Luc Peuvrier + * + * This file is a part of JOAFIP. + * + * JOAFIP is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License. + * + * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE + * Licensed under the LGPL License, Version 3, 29 June 2007 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.gnu.org/licenses/lgpl.html + * + * JOAFIP is distributed in the hope that it will be useful, but + * unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package net.sf.joafip.service.rel400; + +import java.util.Iterator; +import java.util.Map; +import java.util.Map.Entry; + +import net.sf.joafip.AbstractDeleteFileTestCase; +import net.sf.joafip.NotStorableClass; +import net.sf.joafip.StorableAccess; +import net.sf.joafip.TestException; +import net.sf.joafip.java.util.PTreeMap; +import net.sf.joafip.service.FilePersistenceBuilder; +import net.sf.joafip.service.FilePersistenceClassNotFoundException; +import net.sf.joafip.service.FilePersistenceDataCorruptedException; +import net.sf.joafip.service.FilePersistenceException; +import net.sf.joafip.service.FilePersistenceInvalidClassException; +import net.sf.joafip.service.FilePersistenceNotSerializableException; +import net.sf.joafip.service.FilePersistenceTooBigForSerializationException; +import net.sf.joafip.service.IExclusiveDataAccessSession; +import net.sf.joafip.service.IFilePersistence; +import net.sf.joafip.store.service.proxy.IInstanceFactory; + +/** + * + * @author luc peuvrier + * + */ +@NotStorableClass +@StorableAccess +public class TestTreeMapIteratorAutoSave extends AbstractDeleteFileTestCase { + + public final static String ID_KEY_NAME = "idKey"; + + public static final String TYPE_KEY_NAME = "typeKey"; + + private IFilePersistence filePersistence; + + public TestTreeMapIteratorAutoSave() throws TestException { + super(); + } + + public TestTreeMapIteratorAutoSave(final String name) throws TestException { + super(name); + } + + @Override + public void setUp() throws Exception { // NOPMD + super.setUp(); + final FilePersistenceBuilder builder = new FilePersistenceBuilder(); + builder.setPathName("z:/runtime"); + builder.setRemoveFiles(true); + builder.setProxyMode(true); + builder.setAutoSaveEnabled(true); + builder.setMaxInMemoryThreshold(0); + builder.setMaintenedInMemory(false); + filePersistence = builder.build(); + } + + @Override + public void tearDown() throws Exception { // NOPMD + try { + filePersistence.close(); + } catch (Exception e) { // NOPMD + // ignore error + } + super.tearDown(); + } + + @SuppressWarnings("unchecked") + public void test0() throws FilePersistenceException, + FilePersistenceClassNotFoundException, + FilePersistenceInvalidClassException, + FilePersistenceDataCorruptedException, + FilePersistenceNotSerializableException, + FilePersistenceTooBigForSerializationException { + final IExclusiveDataAccessSession session = filePersistence + .createExclusiveDataAccessSession(); + + final IInstanceFactory instanceFactory = session.getInstanceFactory(); + session.open(); + final Map<String, String> map = PTreeMap.newInstance(instanceFactory); + map.put(ID_KEY_NAME, ID_KEY_NAME); + map.put(TYPE_KEY_NAME, TYPE_KEY_NAME); + final Iterator<Entry<String, String>> iterator = map.entrySet() + .iterator(); + assertTrue("must has first element", iterator.hasNext()); + Entry<String, String> next = iterator.next(); + assertEquals("bad first key", ID_KEY_NAME, next.getKey()); + assertTrue("must has second element", iterator.hasNext()); + next = iterator.next(); + assertEquals("bad second key", TYPE_KEY_NAME, next.getKey()); + assertFalse("must not has more element", iterator.hasNext()); + } +} Added: trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSetIteratorAutoSave.java =================================================================== --- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSetIteratorAutoSave.java (rev 0) +++ trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSetIteratorAutoSave.java 2011-10-21 01:40:53 UTC (rev 2933) @@ -0,0 +1,114 @@ +/* + * Copyright 2011 Luc Peuvrier + * + * This file is a part of JOAFIP. + * + * JOAFIP is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License. + * + * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE + * Licensed under the LGPL License, Version 3, 29 June 2007 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.gnu.org/licenses/lgpl.html + * + * JOAFIP is distributed in t... [truncated message content] |
From: <luc...@us...> - 2011-10-21 01:41:02
|
Revision: 2933 http://joafip.svn.sourceforge.net/joafip/?rev=2933&view=rev Author: luc_peuvrier Date: 2011-10-21 01:40:53 +0000 (Fri, 21 Oct 2011) Log Message: ----------- storage annotation check added in tests Modified Paths: -------------- trunk/joafip/src/test/java/net/sf/joafip/entity/TestFilePersistenceProperties.java trunk/joafip/src/test/java/net/sf/joafip/entity/rel400/BobASDelegatingListenDelegate.java trunk/joafip/src/test/java/net/sf/joafip/ograph/OGraphTest.java trunk/joafip/src/test/java/net/sf/joafip/service/AbstractCopyRuntime.java trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestCustomObjectIO.java trunk/joafip/src/test/java/net/sf/joafip/service/AbstractTestFilePersistence.java trunk/joafip/src/test/java/net/sf/joafip/service/TestBobSerializeStackOverflow.java trunk/joafip/src/test/java/net/sf/joafip/service/TestClear.java trunk/joafip/src/test/java/net/sf/joafip/service/TestCrashSafe.java trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithBob1Custom.java trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializer.java trunk/joafip/src/test/java/net/sf/joafip/service/TestCustomObjectIOWithSerializerZipper.java trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceNoG.java trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceOpenClose.java trunk/joafip/src/test/java/net/sf/joafip/service/TestFilePersistenceWithG.java trunk/joafip/src/test/java/net/sf/joafip/service/TestMultipleFilePersistenceInstance.java trunk/joafip/src/test/java/net/sf/joafip/service/TestVersion.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestBugChangeLog.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestGarbageModeError.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestRootObjectMapAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/TestSaveUnloaded.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/java/util/TestPArrayList.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/primitive/TestPrimitiveIO.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistence.java trunk/joafip/src/test/java/net/sf/joafip/service/bug/savenum/TestEnumPersistenceMemory.java trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestClassLoaderPersistence.java trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestImport222NotLazy.java trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestThisInConstructor.java trunk/joafip/src/test/java/net/sf/joafip/service/rel300/TestUseRuntime222NotLazy.java trunk/joafip/src/test/java/net/sf/joafip/service/rel301/TestUseRuntime300NotLazy.java trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionA.java trunk/joafip/src/test/java/net/sf/joafip/service/rel310/TestUseRuntime301NotLazyConversionB.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestConstructEntrySetIteratorOfPMapKeyNavigableSet.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestProxyTestList.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestRuntime310Garbage.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestSaveInExclusiveDataAccessSession.java trunk/joafip/src/test/java/net/sf/joafip/store/service/AbstractDataManagerTestCase.java trunk/joafip/src/test/java/net/sf/joafip/store/service/AbstractGarbageTestCase.java trunk/joafip/src/test/java/net/sf/joafip/store/service/AbstractTestGarbage.java trunk/joafip/src/test/java/net/sf/joafip/store/service/AbstractTestStoreMemoryLeak.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestGarbageForegroundFile.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestGarbageForegroundMemory.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestGarbageInBackground.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestObjectReferenceLinkInMemory.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreMemoryLeakCacheNoGarbage.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreMemoryLeakNoCacheGarbage.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreMemoryLeakNoCacheNoGarbage.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreOpenClose.java trunk/joafip/src/test/java/net/sf/joafip/store/service/TestStoreOpenCloseNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/Test16BitsConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/Test32BitsConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/Test64BitsConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/Test8BitsConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestBooleanConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestBooleanNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestByteConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestByteNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestCharConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestCharNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestDoubleConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestDoubleNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestFloatConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestFloatNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestIntegerConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestIntegerNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestLongConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestLongNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestReferenceConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestReferenceNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestShortConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/binary/TestShortNullableConverter.java trunk/joafip/src/test/java/net/sf/joafip/store/service/bytecode/TestForTransform.java trunk/joafip/src/test/java/net/sf/joafip/store/service/bytecode/TestPersistableCodeGeneratorInner.java trunk/joafip/src/test/java/net/sf/joafip/store/service/bytecode/agent/TestPackageMgr.java trunk/joafip/src/test/java/net/sf/joafip/store/service/bytecode/proxy/TestCheckMethodVisitor.java trunk/joafip/src/test/java/net/sf/joafip/store/service/classinfo/TestClassInfoFactory.java trunk/joafip/src/test/java/net/sf/joafip/store/service/classinfo/TestClassReplacement.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionHashMapNosubsNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionHashMapNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionHashTableNosubsNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionHashTableNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionTreeMapNosubsNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionTreeMapNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionTroveHashMapNosubsNoG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionTroveHashMapNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/collection/nosubs/TestStoreCollectionVectorNosubsWithG.java trunk/joafip/src/test/java/net/sf/joafip/store/service/conversion/TestConvertionDefinitionReader.java trunk/joafip/src/test/java/net/sf/joafip/store/service/conversion/TestReplacementDefMap.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/TestDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/TestProxyDeepCopier.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/TestLinkManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/TestReferenceLinkGraph.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/TestStoreGarbager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/recordmgr/AbstractGarbageManagerTestCase.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/recordmgr/TestGarbageCandidateRecordManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/recordmgr/TestLinkRecordManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/garbage/recordmgr/TestToGarbageRecordManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/heaprecordable/TestHeapRecordableManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/TestClassNameManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/AbstractBinaryDump.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/AbstractTestIoManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/TestObjectIOManagerGenericCases.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/TestObjectIOManagerSerializeCase.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/TestSerializerObjectIOManager.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractObjectIOTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/AbstractSerializeTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOBasicTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOWithSerialPersistenceFieldsTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOWithSerialPersistenceFieldsUnsharedTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOWithSerializeCycleTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOWithSerializeMethodTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/AbstractObjectIoManagerForProxyTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/ProxyCallBackForTest.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreation.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyCreationConstructed.java trunk/joafip/src/test/java/net/sf/joafip/store/service/proxy/TestProxyManager2.java trunk/joafip/src/test/java/net/sf/joafip/store/service/synchronizer/TestHashsetSynchronizer.java trunk/joafip/src/test/java/net/sf/joafip/store/service/synchronizer/TestLinkedListSynchronizer.java trunk/joafip/src/test/java/net/sf/joafip/store/service/synchronizer/TestMapSynchronizer.java trunk/joafip-collection/src/main/java/net/sf/joafip/java/util/support/tree/TreeSupport.java trunk/joafip-collection/src/test/java/net/sf/joafip/java/util/TestIterPArrayList.java trunk/joafip-common/src/main/java/net/sf/joafip/logger/DummyLogger.java trunk/joafip-common/src/main/java/net/sf/joafip/logger/IJoafipLogger.java trunk/joafip-common/src/main/java/net/sf/joafip/logger/JoafipLogger.java trunk/joafip-common/src/test/java/net/sf/joafip/AbstractJoafipCommonTestCase.java trunk/joafip-example-simplestore/src/test/java/net/sf/joafip/simplestore/TestSimpleStore.java trunk/joafip-file/src/test/java/net/sf/joafip/file/service/RandomAccessFileReadWriteCacheTest.java trunk/joafip-file/src/test/java/net/sf/joafip/file/service/RandomFileTest.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/TestIdNode.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/entity/TestAbstractFileStorable.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/entity/TestDataRecordIdentifier.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/entity/TestMarshall.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/service/TestHeapElementManager.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/service/TestHeapRecordManage.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/service/TestRandomAccessFileCache.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/record/service/TestStoreRestore.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/AbstractTestHeapDataManager.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/AbstractTestHeapDataManagerRecord.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/TestHeapDataManager.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/TestHeapDataManagerBackup.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/TestHeapDataManagerFreeing.java trunk/joafip-heapfile/src/test/java/net/sf/joafip/heapfile/service/TestHeapDataMgrWithScenario.java trunk/joafip-log4j/src/main/java/net/sf/joafip/logger/Log4jAdapter.java trunk/joafip-meminspector/src/test/java/net/sf/joafip/meminspector/TestMemInspector.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/AbstractTestByPosition.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/AbstractTestDelete.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/AbstractTestInsert.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/AbstractTestNumberOfChild.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestAppend.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestByPositionDuplicate.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestByPositionUnique.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestDeleteDuplicate.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestDeleteUnique.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestFirstLastNext.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestIndex.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestInsertDuplicate.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestInsertUnique.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestNumberOfChildDoNotManageNodeIndex.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestNumberOfChildManageNodeIndex.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestSearchDuplicate.java trunk/joafip-rbtree/src/test/java/net/sf/joafip/redblacktree/service/TestSearchUnique.java trunk/joafip-testsuite/src/main/java/net/sf/joafip/InErrorTests.java trunk/joafip-testsuite/src/main/java/net/sf/joafip/service/rel400/ServiceRel400Tests.java Added Paths: ----------- trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeMapIteratorAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSetIteratorAutoSave.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSupportIterator.java trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestTreeSupportIteratorAutoSave.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 01:36:37
|
Revision: 2932 http://joafip.svn.sourceforge.net/joafip/?rev=2932&view=rev Author: luc_peuvrier Date: 2011-10-21 01:36:31 +0000 (Fri, 21 Oct 2011) Log Message: ----------- do not weak reference object if acceded Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/IObjectIOManagerForProxyObjectIO.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/SerializerObjectIOManager.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/input/AbstractObjectInputGeneric.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/saver/StoreSaver3.java Modified: trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java 2011-10-21 01:32:42 UTC (rev 2931) +++ trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java 2011-10-21 01:36:31 UTC (rev 2932) @@ -137,8 +137,11 @@ public ObjectAndPersistInfo nextReferenced; + // FIXMELUC __why for checkAssertNotNull public boolean checkAssertNotNull = true; + public boolean acceded; + /** * for {@link #NULL} and {@link ObjectAndPersistInfo#NULL_DEFINED } */ @@ -412,7 +415,7 @@ // object!=null may be unreferenced object and statemap not already // cleared final boolean weaked; - if (weakReference == null && object != null) { + if (!acceded && weakReference == null && object != null) { weakReference = new ObjectAndPersistInfoWeakReference(object, this, queue); clear();// Unreferenced @@ -591,7 +594,7 @@ } else { weak = weakReference.get(); } - return /**/"weeakReference[" + return /**/"weakReference[" /**/+ (weakReference == null ? /**/"none" : // NOPMD /**/(weak == null ? "null" : (weak.getClass() Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/IObjectIOManagerForProxyObjectIO.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/IObjectIOManagerForProxyObjectIO.java 2011-10-21 01:32:42 UTC (rev 2931) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/IObjectIOManagerForProxyObjectIO.java 2011-10-21 01:36:31 UTC (rev 2932) @@ -169,6 +169,9 @@ void unsetProxyObjectState(ObjectAndPersistInfo objectAndItsClassInfo) throws ObjectIOException, ObjectIOInvalidClassException; + void saveAndUnsetProxyObjectState(ObjectAndPersistInfo objectAndItsClassInfo) + throws ObjectIOException, ObjectIOInvalidClassException; + IProxyManagerForObjectIO getProxyManager2(); ClassInfoFactory getClassInfoFactory(); Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java 2011-10-21 01:32:42 UTC (rev 2931) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java 2011-10-21 01:36:31 UTC (rev 2932) @@ -308,6 +308,14 @@ } @Override + public void saveAndUnsetProxyObjectState( + final ObjectAndPersistInfo objectAndItsClassInfo) + throws ObjectIOException, ObjectIOInvalidClassException { + save(); + unsetProxyObjectState(objectAndItsClassInfo); + } + + @Override protected DataRecordIdentifier associateNewDataRecordIdentifierToObject( final ObjectAndPersistInfo objectAndPersistInfo) throws ObjectIODataCorruptedException, ObjectIOException { @@ -624,6 +632,7 @@ @Override public void objectIsAccessed(final ObjectAndPersistInfo objectAndPersistInfo) { + objectAndPersistInfo.acceded = true; objectIsAccessedDelegate(objectAndPersistInfo); } @@ -683,34 +692,36 @@ // final int numberOfObjectState = getNumberOfObjectState(); final int numberOfObjectState = getNumberOfReferenced(); if (numberOfObjectState >= maxInMemoryThreshold && doAutoSave()) { - try { - final long beginTime = System.currentTimeMillis(); - final boolean saveDone = saver.autoSave(); - if (saveDone) { - final long duration = System.currentTimeMillis() - - beginTime; - final int newNumberOfObjectState = getNumberOfObjectState(); - final int numberOfWeakreference = getNumberOfWeakReference(); - if (autoSaveEventListener != null) { - autoSaveEventListener.saveDone( - newNumberOfObjectState, - numberOfWeakreference, duration); - } - } - } catch (final FilePersistenceException exception) { - throw new ObjectIOException(exception); - } catch (final FilePersistenceInvalidClassException exception) { - throw new ObjectIOException(exception); - } catch (final FilePersistenceNotSerializableException exception) { - throw new ObjectIOException(exception); - } catch (final FilePersistenceClassNotFoundException exception) { - throw new ObjectIOException(exception); - } catch (final FilePersistenceDataCorruptedException exception) { - throw new ObjectIOException(exception); - } catch (final FilePersistenceTooBigForSerializationException exception) { - throw new ObjectIOException(exception); + save(); + } + } + } + + protected void save() throws ObjectIOException { + try { + final long beginTime = System.currentTimeMillis(); + final boolean saveDone = saver.autoSave(); + if (saveDone) { + final long duration = System.currentTimeMillis() - beginTime; + final int newNumberOfObjectState = getNumberOfObjectState(); + final int numberOfWeakreference = getNumberOfWeakReference(); + if (autoSaveEventListener != null) { + autoSaveEventListener.saveDone(newNumberOfObjectState, + numberOfWeakreference, duration); } } + } catch (final FilePersistenceException exception) { + throw new ObjectIOException(exception); + } catch (final FilePersistenceInvalidClassException exception) { + throw new ObjectIOException(exception); + } catch (final FilePersistenceNotSerializableException exception) { + throw new ObjectIOException(exception); + } catch (final FilePersistenceClassNotFoundException exception) { + throw new ObjectIOException(exception); + } catch (final FilePersistenceDataCorruptedException exception) { + throw new ObjectIOException(exception); + } catch (final FilePersistenceTooBigForSerializationException exception) { + throw new ObjectIOException(exception); } } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/SerializerObjectIOManager.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/SerializerObjectIOManager.java 2011-10-21 01:32:42 UTC (rev 2931) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/SerializerObjectIOManager.java 2011-10-21 01:36:31 UTC (rev 2932) @@ -375,6 +375,13 @@ throw new ObjectIOException(MUST_NOT_BE_CALLED); } + @Override + public void saveAndUnsetProxyObjectState( + final ObjectAndPersistInfo objectAndItsClassInfo) + throws ObjectIOException, ObjectIOInvalidClassException { + throw new ObjectIOException(MUST_NOT_BE_CALLED); + } + /** not maintain in memory for joafip serialization in one data record */ @Override public boolean isMaintainInMemoryEnabled() { Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/input/AbstractObjectInputGeneric.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/input/AbstractObjectInputGeneric.java 2011-10-21 01:32:42 UTC (rev 2931) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/input/AbstractObjectInputGeneric.java 2011-10-21 01:36:31 UTC (rev 2932) @@ -200,7 +200,6 @@ ObjectIODataRecordNotFoundException, ObjectIOInvalidClassException, ObjectIOClassNotFoundException, ObjectIODataCorruptedException, ObjectIONotSerializableException { - final FieldInfo[] fieldToSetInfo = getFieldToSetInfoImpl(objectAndPersistInfo.objectClassInfo); objectAndPersistInfo.fieldToSetInfo = fieldToSetInfo; @@ -923,8 +922,8 @@ fieldValueAndPersistInfo); } if (logger.debugEnabled) { - logger.debug("set field " + fieldInfo.getFieldName() + " is null=" - + (fieldValueAndPersistInfo.getObject() == null)); + logger.debug("set field " + fieldInfo.getFieldName() + " value=" + + fieldValueAndPersistInfo); } } Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java 2011-10-21 01:32:42 UTC (rev 2931) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java 2011-10-21 01:36:31 UTC (rev 2932) @@ -307,10 +307,10 @@ .getDeclaredClassInfo(); final String name = declaredClassInfo.getName(); if (logger.debugEnabled) { - logger.debug("wrote field " + name + ", is null=" - + (value == null) + ", primitive=" - + declaredClassInfo.isPrimitiveType() + ", at offset " - + offset); + logger.debug("wrote field " + name + ", value=" + + valueAndType.getObjectAndPersistInfo() + + ", primitive=" + declaredClassInfo.isPrimitiveType() + + ", at offset " + offset); } } if (valueAndType.declaredIsBasicOrPrimitive()) { Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java 2011-10-21 01:32:42 UTC (rev 2931) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java 2011-10-21 01:36:31 UTC (rev 2932) @@ -175,6 +175,17 @@ return result; } + // FIXMELUC _________________________for test +// private boolean in() { +// final StackTraceElement[] stackTraceElements = new Exception() +// .getStackTrace(); +// final StackTraceElement stackTraceElement = stackTraceElements[3]; +// final String className = stackTraceElement.getClassName(); +// final String methodName = stackTraceElement.getMethodName(); +// return className.contains("MultiMap") +// && methodName.contains("addKeyDefinition"); +// } + @Override @SuppressWarnings("PMD") public void intercept$JOAFIP$() { @@ -182,7 +193,12 @@ if (autoSaveEnabled) { inObjectCount++; } - + // FIXMELUC _________________________for test +// if (in()) { +// System.out.println("intercept " + inObjectCount + " " +// + proxyObjectAndPersistInfo); +// } + // end for test if (exclusiveAccessSession) { try { objectIOManager.objectIsAccessed(getInstance$JOAFIP$()); @@ -234,11 +250,23 @@ @Override @SuppressWarnings("PMD") public void methodEnd$JOAFIP$() { + // FIXMELUC _________________________for test +// if (in()) { +// System.out.println("methodEnd " + inObjectCount + " " +// + proxyObjectAndPersistInfo); +// } + // end for test synchronized (storeMutex) { if (autoSaveEnabled) { - inObjectCount--; + final ObjectAndPersistInfo instanceAndPersistInfo = getInstance$JOAFIP$(); + if (--inObjectCount == 0) { + instanceAndPersistInfo.acceded = false; + } // ASSERTX - assert inObjectCount >= 0 : "running in object count can be negative"; + assert inObjectCount >= 0 : "running in object count can not be negative, is " + + inObjectCount + + " " + + getInstance$JOAFIP$().toString(); if (!wasLoaded && loaded && inObjectCount == 0) { try { objectIOManager.newObjectLoaded(); @@ -249,11 +277,10 @@ if (toUnload && inObjectCount == 0) { toUnload = false; loaded = false; - final ObjectAndPersistInfo instanceAndPersistInfo = getInstance$JOAFIP$(); assert instanceAndPersistInfo != null; try { objectIOManager - .unsetProxyObjectState(instanceAndPersistInfo); + .saveAndUnsetProxyObjectState(instanceAndPersistInfo); } catch (Exception exception) { LOGGER.error("method end interception error", exception); throw new ProxyInterceptException( Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/saver/StoreSaver3.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/saver/StoreSaver3.java 2011-10-21 01:32:42 UTC (rev 2931) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/saver/StoreSaver3.java 2011-10-21 01:36:31 UTC (rev 2932) @@ -611,7 +611,6 @@ : object.getClass())); } } - addToVisitForSave(sons); } } catch (final ObjectIOException exception) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 01:36:37
|
Revision: 2932 http://joafip.svn.sourceforge.net/joafip/?rev=2932&view=rev Author: luc_peuvrier Date: 2011-10-21 01:36:31 +0000 (Fri, 21 Oct 2011) Log Message: ----------- do not weak reference object if acceded Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/IObjectIOManagerForProxyObjectIO.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManager.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/SerializerObjectIOManager.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/input/AbstractObjectInputGeneric.java trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/AbstractObjectOutput.java trunk/joafip/src/main/java/net/sf/joafip/store/service/proxy/ProxyCallBack.java trunk/joafip/src/main/java/net/sf/joafip/store/service/saver/StoreSaver3.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 01:32:49
|
Revision: 2931 http://joafip.svn.sourceforge.net/joafip/?rev=2931&view=rev Author: luc_peuvrier Date: 2011-10-21 01:32:42 +0000 (Fri, 21 Oct 2011) Log Message: ----------- code cleaned, fixme for test removed Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/CheckMethodVisitor.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 01:32:48
|
Revision: 2931 http://joafip.svn.sourceforge.net/joafip/?rev=2931&view=rev Author: luc_peuvrier Date: 2011-10-21 01:32:42 +0000 (Fri, 21 Oct 2011) Log Message: ----------- code cleaned, fixme for test removed Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/CheckMethodVisitor.java Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/CheckMethodVisitor.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/CheckMethodVisitor.java 2011-10-21 01:30:57 UTC (rev 2930) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/CheckMethodVisitor.java 2011-10-21 01:32:42 UTC (rev 2931) @@ -294,10 +294,6 @@ @Override public void visitJumpInsn(final int opcode, final Label label) { - // FIXMELUC ______________________for test - if (opcode == JSR) { - System.out.println(); // NOPMD - } currentOpcodeNode = new OpcodeNode(opcode, currentAddress++, currentLineNumber, currentOpcodeNode); addGoto(currentOpcodeNode, label); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 01:31:04
|
Revision: 2930 http://joafip.svn.sourceforge.net/joafip/?rev=2930&view=rev Author: luc_peuvrier Date: 2011-10-21 01:30:57 +0000 (Fri, 21 Oct 2011) Log Message: ----------- no more call method end if not exclusive data access session Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <luc...@us...> - 2011-10-21 01:31:03
|
Revision: 2930 http://joafip.svn.sourceforge.net/joafip/?rev=2930&view=rev Author: luc_peuvrier Date: 2011-10-21 01:30:57 +0000 (Fri, 21 Oct 2011) Log Message: ----------- no more call method end if not exclusive data access session Modified Paths: -------------- trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java =================================================================== --- trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java 2011-10-18 02:55:27 UTC (rev 2929) +++ trunk/joafip/src/main/java/net/sf/joafip/store/service/bytecode/proxy/EnhanceCodeGenerator.java 2011-10-21 01:30:57 UTC (rev 2930) @@ -797,25 +797,7 @@ /**/methodName, /**/desc); - int opcode; - if (!Type.VOID_TYPE.equals(returnType)) { - opcode = returnType.getOpcode(ISTORE); - methodVisitor.visitVarInsn(opcode, paramSize + 1); - } - - methodVisitor.visitVarInsn(ALOAD, 0); - methodVisitor.visitMethodInsn( - /**/INVOKEVIRTUAL, - /**/classInternalName, - /**/METHOD_END_METHOD_NAME, - /**/methodEndMethodDesc); - - if (!Type.VOID_TYPE.equals(returnType)) { - opcode = returnType.getOpcode(ILOAD); - methodVisitor.visitVarInsn(opcode, paramSize + 1); - } - - opcode = returnType.getOpcode(IRETURN); + final int opcode = returnType.getOpcode(IRETURN); methodVisitor.visitInsn(opcode); // FIXMELUC _visitmaxs call needed ? This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |