[Joafip-svn] SF.net SVN: joafip:[2922] trunk
Brought to you by:
luc_peuvrier
|
From: <luc...@us...> - 2011-10-16 08:35:36
|
Revision: 2922
http://joafip.svn.sourceforge.net/joafip/?rev=2922&view=rev
Author: luc_peuvrier
Date: 2011-10-16 08:35:26 +0000 (Sun, 16 Oct 2011)
Log Message:
-----------
no more static field persistence
Modified Paths:
--------------
trunk/joafip/src/main/java/net/sf/joafip/entity/FilePersistenceProperties.java
trunk/joafip/src/main/java/net/sf/joafip/service/AbstractFilePersistenceDelegatingToStore.java
trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistence.java
trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistencePropertiesReader.java
trunk/joafip/src/main/java/net/sf/joafip/service/IFilePersistence.java
trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java
trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectStateMap.java
trunk/joafip/src/main/java/net/sf/joafip/store/entity/saver/StoreSaverSession.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/conversion/AbstractObjectReplacer.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/ObjectReplacerForImport.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/ObjectReplacerOnTheFly.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/in/AbstractImporter.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/in/InObjectsHandler.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/out/AbstractExporter.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/out/StoreAccessForExport.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/AbstractObjectIOManagerIOForObject.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/HeaderReader.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/HeaderWriter.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/ObjectStateMgr.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/saver/StoreSaver3.java
trunk/joafip/src/test/java/net/sf/joafip/entity/AbstractClassForExport.java
trunk/joafip/src/test/java/net/sf/joafip/entity/ClassForExport.java
trunk/joafip/src/test/java/net/sf/joafip/entity/rel310/ClassTwo301bReplacement.java
trunk/joafip/src/test/java/net/sf/joafip/export_import/AbstractClassOne301b.java
trunk/joafip/src/test/java/net/sf/joafip/export_import/ClassOne301b.java
trunk/joafip/src/test/java/net/sf/joafip/service/TestExportImport.java
trunk/joafip/src/test/java/net/sf/joafip/service/rel310/Abstract301Usage.java
trunk/joafip/src/test/java/net/sf/joafip/store/service/StoreForTest.java
trunk/joafip/src/test/java/net/sf/joafip/store/service/copier/AbstractTestDeepCopier.java
trunk/joafip/src/test/java/net/sf/joafip/store/service/objectfortest/Bob1.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/serialize/AbstractObjectIOTest.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-testsuite/src/main/java/net/sf/joafip/InErrorTests.java
trunk/joafip-testsuite/src/main/java/net/sf/joafip/service/rel301/ServiceRel301Tests.java
trunk/joafip-testsuite/src/main/java/net/sf/joafip/service/rel400/ServiceRel400Tests.java
trunk/joafip-testsuite/src/main/java/net/sf/joafip/store/service/objectio/manager/ObjectIOManagerTests.java
trunk/joafip-testsuite/src/main/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOSerializeTests.java
Removed Paths:
-------------
trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/input/ObjectInputStatic.java
trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/serialize/output/ObjectOutputStatic.java
trunk/joafip/src/test/java/net/sf/joafip/service/rel301/TestStaticPersisted.java
trunk/joafip/src/test/java/net/sf/joafip/service/rel400/TestAutoSaveWithStatic.java
trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/manager/TestObjectIOManagerStaticFieldCase.java
trunk/joafip/src/test/java/net/sf/joafip/store/service/objectio/serialize/ObjectIOStaticTest.java
Modified: trunk/joafip/src/main/java/net/sf/joafip/entity/FilePersistenceProperties.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/entity/FilePersistenceProperties.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/entity/FilePersistenceProperties.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -17,7 +17,6 @@
package net.sf.joafip.entity;// NOPMD
import java.io.InputStream;
-import java.util.Map;
import java.util.NavigableMap;
import java.util.Set;
import java.util.TreeMap;
@@ -76,9 +75,6 @@
private boolean recordSaveActions;
- private final Map<String, Boolean> storedStaticMap =
- /**/new TreeMap<String, Boolean>();
-
private EnumNoMoreDataAction noMoreDataAction = EnumNoMoreDataAction.DELETE_FILE;
public FilePersistenceProperties() {
@@ -336,10 +332,6 @@
return storeProperties.isUseCacheMode();
}
- public Map<String, Boolean> getStoredStaticMap() {
- return storedStaticMap;
- }
-
public void setMaintenedInMemory(final boolean maintenedInMemory) {
storeProperties.setMaintenedInMemory(maintenedInMemory);
}
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-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/service/AbstractFilePersistenceDelegatingToStore.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -736,29 +736,6 @@
storedMutableEnum((Class<? extends Enum<?>>) enumObject.getClass());
}
- @Override
- public void storedStaticField(
- final Class<?>[] classHavingStaticFieldToPersistList)
- throws FilePersistenceException {
- try {
- for (final Class<?> classHavingStaticFieldToPersist : classHavingStaticFieldToPersistList) {
- store.storedStaticField(classHavingStaticFieldToPersist);
- }
- } catch (final StoreException exception) {
- throw new FilePersistenceException(exception);
- }
- }
-
- @Override
- public void storedStaticField(final Class<?> classHavingStaticFieldToPersist)
- throws FilePersistenceException {
- try {
- store.storedStaticField(classHavingStaticFieldToPersist);
- } catch (final StoreException exception) {
- throw new FilePersistenceException(exception);
- }
- }
-
/**
* set enum state from file
*
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-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistence.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -289,25 +289,6 @@
}
}
- private void setStoredStaticFromProperties()
- throws FilePersistenceClassNotFoundException,
- FilePersistenceException {
- try {
- final Map<String, Boolean> storedStaticMap = filePersistenceProperties
- .getStoredStaticMap();
- for (final Map.Entry<String, Boolean> entry : storedStaticMap
- .entrySet()) {
- if (entry.getValue().booleanValue()) {
- store.storedStaticField(entry.getKey());
- }
- }
- } catch (final StoreClassNotFoundException exception) {
- throw new FilePersistenceClassNotFoundException(exception);
- } catch (final StoreException exception) {
- throw new FilePersistenceException(exception);
- }
- }
-
private void setSubstitutionFromProperties()
throws FilePersistenceException {
final Set<FilePersistencePropertyEntry> set =
@@ -540,7 +521,6 @@
setStoreOnlyMarkedStorable(filePersistenceProperties
.isStoreOnlyMarkedStorable());
setRecordSaveActions(filePersistenceProperties.isRecordSaveActions());
- setStoredStaticFromProperties();
}
private void newAccessSessionAndReadOrCreateRootObject(
Modified: trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistencePropertiesReader.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistencePropertiesReader.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/service/FilePersistencePropertiesReader.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -117,8 +117,6 @@
/** set substitution */
private static final String JOAFIP_SUBSTITUTE = "joafip.substitute.";
- private static final String JOAFIP_STORED_STATIC = "joafip.storedStatic.";
-
private static final String JOAFIP_MAINTENED_IN_MEMORY = "joafip.maintainedInMemory";
private static final String JOAFIP_MAINTENED_IN_MEMORY_QUOTA = "joafip.maintainedInMemoryQuota";
@@ -276,10 +274,6 @@
.setBackgroundGarbageSweepSleepTime(intValue(
key, value));
}
- } else if (key.startsWith(JOAFIP_STORED_STATIC)) {
- addStoredStatic(filePersistenceProperties,
- key.substring(JOAFIP_STORED_STATIC.length()),
- isEnabled(key, value));
} else if (key.equals(JOAFIP_MAINTENED_IN_MEMORY)) {
filePersistenceProperties.setMaintenedInMemory(isEnabled(
key, value));
@@ -422,12 +416,6 @@
value);
}
- private void addStoredStatic(
- final FilePersistenceProperties filePersistenceProperties,
- final String className, final boolean enabled) {
- filePersistenceProperties.getStoredStaticMap().put(className, enabled);
- }
-
private void addStoredMutableEnum(
final FilePersistenceProperties filePersistenceProperties,
final String enumClassName, final boolean enabled) {
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-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/service/IFilePersistence.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -757,25 +757,7 @@
void storedEnum(Enum<?> enumObject) throws FilePersistenceException;
/**
- * set classes which for static field must be persisted
*
- * @param classHavingStaticFieldToPersistList
- * @throws FilePersistenceException
- */
- void storedStaticField(Class<?>[] classHavingStaticFieldToPersistList)
- throws FilePersistenceException;
-
- /**
- * set class which for static field must be persisted
- *
- * @param classHavingStaticFieldToPersist
- * @throws FilePersistenceException
- */
- void storedStaticField(Class<?> classHavingStaticFieldToPersist)
- throws FilePersistenceException;
-
- /**
- *
* @return true if manage garbage
* @throws FilePersistenceException
*/
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-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectAndPersistInfo.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -123,9 +123,6 @@
private ObjectAndPersistInfoWeakReference weakReference;
- /** true if static field persistence information */
- public final boolean staticPersistence;
-
public FieldInfo[] fieldToSetInfo;
private IProxyCallBackToImplement proxyCallBack = NULL_PROXY_CALL_BACK_INSTANCE;
@@ -147,26 +144,10 @@
*/
private ObjectAndPersistInfo(final boolean valueDefined) {
super(valueDefined);
- staticPersistence = false;
proxyIntanceOrEnhanced = false;
}
/**
- * static persistence information
- *
- * @param objectClassInfo
- * @throws ObjectIOException
- */
- public ObjectAndPersistInfo(final ClassInfo objectClassInfo)
- throws ObjectIOException {
- super(objectClassInfo);
- staticPersistence = true;
- joafipReleaseId = -1;
- dataModelIdentifier = -1;
- proxyIntanceOrEnhanced = false;
- }
-
- /**
* storage info not set<br>
*
* @param object
@@ -180,7 +161,6 @@
final ClassInfo objectClassInfo) throws ObjectIOException,
ClassInfoException {
super(object, objectClassInfo);
- staticPersistence = false;
joafipReleaseId = -1;
dataModelIdentifier = -1;
this.proxyIntanceOrEnhanced = proxyIntanceOrEnhanced;
@@ -200,7 +180,6 @@
final ClassInfo objectClassInfo, final StorageInfo storageInfo)
throws ClassInfoException, ObjectIOException {
super(object, objectClassInfo);
- staticPersistence = false;
headerDataSize = storageInfo.getHeaderDataSize();
replacementDefList = storageInfo.getReplacementDefList();
joafipReleaseId = storageInfo.getJoafipReleaseId();
@@ -215,7 +194,6 @@
final int joafipReleaseId, final int dataModelIdentifier)
throws ClassInfoException {
super(object, objectClassInfo);
- staticPersistence = false;
this.replacementDefList = replacementDefList;
this.joafipReleaseId = joafipReleaseId;
this.dataModelIdentifier = dataModelIdentifier;
@@ -300,7 +278,7 @@
// ASSERTX
assert assertStoreRootDataRecordIdentifier(dataRecordIdentifier);
// ASSERTX
- assert object != null || staticPersistence : "null can not have data record identifier";
+ assert object != null : "null can not have data record identifier";
// ASSERTX
assert this.dataRecordIdentifier == null : "data record identifier already set";
this.dataRecordIdentifier = dataRecordIdentifier;
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectStateMap.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectStateMap.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/entity/objectio/ObjectStateMap.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -48,10 +48,6 @@
private final Map<IObjectIdentityKey, ObjectAndPersistInfo> stateMap =
/**/new HashMap<IObjectIdentityKey, ObjectAndPersistInfo>();
- /** map for persisted object static fields */
- private final Map<ClassInfo, ObjectAndPersistInfo> staticStateMap =
- /**/new TreeMap<ClassInfo, ObjectAndPersistInfo>();
-
/**
* map to obtains object persistence information by data record identifier
*/
@@ -152,9 +148,7 @@
// ASSERTX
assert objectAndPersistInfo.isNotWeak();
// ASSERTX
- assert staticStateMap.containsKey(objectAndPersistInfo
- .getObjectClassInfo())
- || stateMap.containsKey(objectAndPersistInfo);
+ assert stateMap.containsKey(objectAndPersistInfo);
final DataRecordIdentifier dataRecordIdentifier = objectAndPersistInfo.dataRecordIdentifier;
final ObjectAndPersistInfo previous = stateMapByIdentifier.put(
dataRecordIdentifier, objectAndPersistInfo);
@@ -312,61 +306,7 @@
referencedQueueSize++;
}
- // // FIXME-LUC _________for test
- // private boolean inQueue(final ObjectAndPersistInfo objectAndPersistInfo)
- // {
- // boolean found = false;
- // ObjectAndPersistInfo current = queueHead;
- // while (!found && current != null) {
- // found = current == objectAndPersistInfo || current.hasReferences()//
- // NOPMD
- // && current.getObject() == objectAndPersistInfo.getObject();
- // current = current.next;
- // }
- // return found;
- // }
-
/**
- *
- * @param objectClassInfo
- * the class information of the object
- * @return get or created class static field persistence information
- * @throws ObjectIOException
- */
- public ObjectAndPersistInfo getOrCreateObjectAndPersistInfoOfClass(
- final ClassInfo objectClassInfo) throws ObjectIOException {
- ObjectAndPersistInfo objectAndPersistInfo = staticStateMap
- .get(objectClassInfo);
- if (objectAndPersistInfo == null) {
- objectAndPersistInfo = createObjectAndPersistInfoOfClass(objectClassInfo);
- }
- return objectAndPersistInfo;
- }
-
- public ObjectAndPersistInfo createObjectAndPersistInfoOfClass(
- final ClassInfo objectClassInfo) throws ObjectIOException {
- ObjectAndPersistInfo objectAndPersistInfo;
- objectAndPersistInfo = new ObjectAndPersistInfo(objectClassInfo);
- objectAndPersistInfo.setObjectStateMap(this);
- staticStateMap.put(objectClassInfo, objectAndPersistInfo);
- return objectAndPersistInfo;
- }
-
- /**
- * Get existing, class static field persistence information.<br>
- *
- * @param objectClassInfo
- * the class information
- * @return get class static field persistence information, null if not
- * defined
- * @throws ObjectIOException
- */
- public ObjectAndPersistInfo getObjectAndPersistInfoOfClass(
- final ClassInfo objectClassInfo) throws ObjectIOException {
- return staticStateMap.get(objectClassInfo);
- }
-
- /**
* to know if object have persistence state associated to it
*
* @param objectAndPersistInfo
@@ -425,10 +365,6 @@
queueSize = 0;
queueNumberOfWeakRef = 0;
}
- // FIXMELUC _________________static persistence information live
- // with file persistence
- staticStateMap.clear();
- // checkNullFieldError();
}
}
@@ -542,10 +478,6 @@
}
}
- public Collection<ObjectAndPersistInfo> staticObjectAndPersistInfoSet() {
- return staticStateMap.values();
- }
-
/**
* object is accessed
*
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/entity/saver/StoreSaverSession.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/entity/saver/StoreSaverSession.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/entity/saver/StoreSaverSession.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -119,12 +119,7 @@
*/
public boolean addToVisitedForSave(
final ObjectAndPersistInfo objectAndPersistInfo) {
- final boolean add;
- if (objectAndPersistInfo.staticPersistence) {
- add = true;
- } else {
- add = visitedForSave.add(objectAndPersistInfo);
- }
+ final boolean add = visitedForSave.add(objectAndPersistInfo);
if (add && keepToVisitForSaveRemoveEnabled) {
// no more keep to visit because visited for save
keepToVisitForSave.remove(objectAndPersistInfo);
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-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/IStore.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -347,12 +347,6 @@
@Deprecated
void setEnumState(Enum<?> enumObject) throws StoreException;
- void storedStaticField(Class<?> classHavingStaticFieldToPersist)
- throws StoreException;
-
- void storedStaticField(String nameOfClassHavingStaticFieldToPersist)
- throws StoreClassNotFoundException, StoreException;
-
/**
* read root object
*
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-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/Store.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -30,7 +30,6 @@
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
-import java.util.Set;
import java.util.TreeMap;
import java.util.TreeSet;
import java.util.Vector;
@@ -64,7 +63,6 @@
import net.sf.joafip.store.service.binary.HelperBinaryConversion;
import net.sf.joafip.store.service.classinfo.ClassInfoException;
import net.sf.joafip.store.service.classinfo.ClassInfoFactory;
-import net.sf.joafip.store.service.garbage.GarbageException;
import net.sf.joafip.store.service.heaprecordable.HeapRecordableException;
import net.sf.joafip.store.service.objectio.ObjectIOClassNotFoundException;
import net.sf.joafip.store.service.objectio.ObjectIODataCorruptedException;
@@ -149,11 +147,6 @@
// private final Map<EnumKey, Enum> storedEnumMap = new PTreeMap<EnumKey,
// Enum>();
- /** set of class which for static field are persisted */
- private final Set<Class<?>> classHavingStaticFieldToPersistSet = new HashSet<Class<?>>();
-
- private boolean storedStaticFieldAdded = true;
-
/** exception throws in background */
private StoreException bacgroundException;
@@ -998,7 +991,6 @@
true ^ proxyMode).getObject();
assert storeRoot != null;
updateStoredEnumMap();
- updateStoredStaticField();
read = true;
} catch (final ObjectIODataRecordNotFoundException exception) {
@@ -1146,103 +1138,7 @@
}
}
- @StorableAccess
- private void addStoredStaticField() throws StoreException {
- try {
- if (!storedStaticFieldAdded) {
- storedStaticFieldAdded = true;
- Set<Long> set = storeRoot.getDataRecordIdOfpersistedStaticSet();
- if (set == null) {
- set = new PTreeSet<Long>();
- storeRoot.setDataRecordIdOfpersistedStaticSet(set);
- }
-
- for (final Class<?> classHavingStaticFieldToPersist : classHavingStaticFieldToPersistSet) {
- final ClassInfo classInfo = classInfoFactory
- .getNoProxyClassInfo(classHavingStaticFieldToPersist);
- final ObjectAndPersistInfo objectAndPersistInfo = objectIOManager
- .getOrCreateObjectAndPersistInfoOfClass(classInfo);
- if (objectAndPersistInfo.dataRecordIdentifier == null) {
- final DataRecordIdentifier dataRecordIdentifier = dataManager
- .getNewDataRecordIdentifier();
- objectAndPersistInfo
- .setDataRecordIdentifier(dataRecordIdentifier);
- set.add(dataRecordIdentifier.value);
- }
- }
- }
- } catch (final ObjectIOException exception) {
- throw new StoreException(exception);
- } catch (final ClassInfoException exception) {
- throw new StoreException(exception);
- } catch (final HeapException exception) {
- throw new StoreException(exception);
- }
- }
-
- @StorableAccess
- private void updateStoredStaticField() throws StoreException {
- try {
- final Set<Long> set = storeRoot
- .getDataRecordIdOfpersistedStaticSet();
- final List<DataRecordIdentifier> unexistingList = new LinkedList<DataRecordIdentifier>();
- if (set != null) {
- for (final long dataRecordIdentifierValue : set) {
- final DataRecordIdentifier dataRecordIdentifier = new DataRecordIdentifier(// NOPMD
- dataRecordIdentifierValue);
- if (objectIOManager.setStaticState(dataRecordIdentifier)
- .classDoesNotExist()) {
- unexistingList.add(dataRecordIdentifier);
- }
- }
- }
- if (garbageManagement) {
- for (final DataRecordIdentifier dataRecordIdentifier : unexistingList) {
- garbageManager.addToGarbage(dataRecordIdentifier);
- set.remove(dataRecordIdentifier.value);
- }
- }
-
- } catch (final ObjectIOException exception) {
- throw new StoreException(exception);
- } catch (final ObjectIODataCorruptedException exception) {
- throw new StoreException(exception);
- } catch (final ObjectIODataRecordNotFoundException exception) {
- throw new StoreException(exception);
- } catch (final ObjectIOClassNotFoundException exception) {
- throw new StoreException(exception);
- } catch (final ObjectIOInvalidClassException exception) {
- throw new StoreException(exception);
- } catch (final ObjectIONotSerializableException exception) {
- throw new StoreException(exception);
- } catch (final GarbageException exception) {
- throw new StoreException(exception);
- }
- }
-
@Override
- public void storedStaticField(final Class<?> classHavingStaticFieldToPersist)
- throws StoreException {
- classHavingStaticFieldToPersistSet.add(classHavingStaticFieldToPersist);
- storedStaticFieldAdded = false;
- }
-
- @Override
- public void storedStaticField(
- final String nameOfClassHavingStaticFieldToPersist)
- throws StoreClassNotFoundException, StoreException {
- Class<?> classHavingStaticFieldToPersist;
- try {
- classHavingStaticFieldToPersist = classInfoFactory
- .classForName(nameOfClassHavingStaticFieldToPersist);
- } catch (final ClassNotFoundException exception) {
- throw new StoreClassNotFoundException(exception);
- }
- classHavingStaticFieldToPersistSet.add(classHavingStaticFieldToPersist);
- storedStaticFieldAdded = false;
- }
-
- @Override
public void setAutoSaveEventListener(
final IAutoSaveEventListener saveEventListener) {
objectIOManager.setAutoSaveEventListener(saveEventListener);
@@ -1264,7 +1160,6 @@
throw new StoreException(FILE_ACCESS_SESSION_CLOSED);
}
- addStoredStaticField();
storeSaver.setRootOfObjectsToSave(storeRoot);
/*
* else { setStoreRootIsAlwaysUnreference(); }
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/AbstractObjectReplacer.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/AbstractObjectReplacer.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/AbstractObjectReplacer.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -47,7 +47,6 @@
/**
* @param conversionMode
- * @param staticFieldConversion
* @param objectIOManager
* @param converterList
* @param originalValuedFieldList
@@ -56,7 +55,6 @@
* @throws ConversionException
*/
public ValuedFieldList convert(final EnumConversionMode conversionMode,
- final boolean staticFieldConversion,
final IObjectIOManagerForObjectIO objectIOManager,
final Deque<ClassReplacementDef> replacementDefList,
final ValuedFieldList originalValuedFieldList,
@@ -64,14 +62,9 @@
ValuedFieldList valuedFieldList = originalValuedFieldList;
for (ClassReplacementDef replacementDef : replacementDefList) {
final ClassInfo converterClass;
- if (staticFieldConversion) {
- converterClass = replacementDef.getStaticConverterClass();
- } else {
- converterClass = replacementDef.getConverterClass();
- }
+ converterClass = replacementDef.getConverterClass();
if (ClassInfo.NULL.equals(converterClass)) {
- valuedFieldList = convertByReplacementDef(
- staticFieldConversion, valuedFieldList,
+ valuedFieldList = convertByReplacementDef(valuedFieldList,
fieldsToSetInfo, replacementDef);
if (valuedFieldList == null) {
throw new ConversionException("replacement "
@@ -92,7 +85,6 @@
}
protected abstract ValuedFieldList convertByReplacementDef(
- final boolean staticFieldConversion,
final ValuedFieldList valuedFieldList,
final FieldInfo[] fieldsToSetInfo,
final ClassReplacementDef replacementDef)
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/ObjectReplacerForImport.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/ObjectReplacerForImport.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/ObjectReplacerForImport.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -50,7 +50,6 @@
@Override
protected ValuedFieldList convertByReplacementDef(
- final boolean staticFieldConversion,
final ValuedFieldList valuedFieldList,
final FieldInfo[] fieldsToSetInfo,
final ClassReplacementDef replacementDef)
@@ -61,13 +60,8 @@
// replacement for read field by fieldInfo
final FieldInfo fieldInfo = fieldValue.getFieldInfo();
final FieldReplacementDef fieldReplacementDef;
- if (staticFieldConversion) {
- fieldReplacementDef = replacementDef
- .getReplacementStaticFieldInfo(fieldInfo);
- } else {
- fieldReplacementDef = replacementDef
- .getReplacementFieldInfo(fieldInfo);
- }
+ fieldReplacementDef = replacementDef
+ .getReplacementFieldInfo(fieldInfo);
final ObjectAndPersistInfo fiedlValue = fieldValue.getValue();
if (fieldReplacementDef == null) {
result.addNewFieldAndItsValue(index++, fieldInfo, fiedlValue);
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/ObjectReplacerOnTheFly.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/ObjectReplacerOnTheFly.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/conversion/ObjectReplacerOnTheFly.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -55,14 +55,13 @@
/**
*
- * @param staticFieldConversion
* @param objectIOManager
* @param objectAndPersistInfo
* @param fieldValueList
* @return
* @throws ConversionException
*/
- public ValuedFieldList convert(final boolean staticFieldConversion,
+ public ValuedFieldList convert(
final IObjectIOManagerForObjectIO objectIOManager,
final ObjectAndPersistInfo objectAndPersistInfo,
final List<ObjectAndPersistInfo> fieldValueList)
@@ -71,14 +70,13 @@
.getReplacementDefList();
final ValuedFieldList valuedFieldList = new ValuedFieldList(
fieldValueList);
- return convert(EnumConversionMode.ON_THE_FLY, staticFieldConversion,
- objectIOManager, replacementDefList, valuedFieldList,
+ return convert(EnumConversionMode.ON_THE_FLY, objectIOManager,
+ replacementDefList, valuedFieldList,
objectAndPersistInfo.fieldToSetInfo);
}
@Override
protected ValuedFieldList convertByReplacementDef(
- final boolean staticFieldConversion,
final ValuedFieldList valuedFieldList,
final FieldInfo[] fieldsToSetInfo,
final ClassReplacementDef replacementDef)
@@ -91,13 +89,8 @@
try {
// replacement for read field by index
final FieldReplacementDef fieldReplacementDef;
- if (staticFieldConversion) {
- fieldReplacementDef = replacementDef
- .getReplacementStaticFieldInfo(index);
- } else {
- fieldReplacementDef = replacementDef
- .getReplacementFieldInfo(index);
- }
+ fieldReplacementDef = replacementDef
+ .getReplacementFieldInfo(index);
if (fieldReplacementDef == null) {
result.setFieldValue(index, fieldValue);
} else if (!fieldReplacementDef.isDeletedField()) {
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/in/AbstractImporter.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/in/AbstractImporter.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/in/AbstractImporter.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -783,17 +783,14 @@
}
}
- protected ValuedFieldList convert(final boolean staticFieldConversion,
- final ValuedFieldList valuedFieldList,
+ protected ValuedFieldList convert(final ValuedFieldList valuedFieldList,
final Deque<ClassReplacementDef> replacementDef,
final FieldInfo[] fieldInfos) throws ImportException {
try {
final ValuedFieldList convertedValuedFieldList = OBJECT_REPLACER
- .convert(EnumConversionMode.FOR_IMPORT,
- staticFieldConversion, objectIOManager,
+ .convert(EnumConversionMode.FOR_IMPORT, objectIOManager,
replacementDef, valuedFieldList, fieldInfos);
- setFields(staticFieldConversion, fieldInfos,
- convertedValuedFieldList);
+ setFields(fieldInfos, convertedValuedFieldList);
return convertedValuedFieldList;
} catch (final ConversionException exception) {
throw new ImportException("\nfor original valued field list\n"
@@ -801,8 +798,7 @@
}
}
- private void setFields(final boolean staticFieldConversion,
- final FieldInfo[] fieldInfos,
+ private void setFields(final FieldInfo[] fieldInfos,
final ValuedFieldList convertedValuedFieldList)
throws ImportException {
// ASSERTX
@@ -812,8 +808,6 @@
// ASSERTX
assert assertFieldDefined(fieldInfo);
// ASSERTX
- assert assertStaticField(staticFieldConversion, fieldInfo);
- // ASSERTX
assert assertClassExists(fieldInfo);
Integer index = convertedValuedFieldList
.getFieldIndexByFieldInfo(fieldInfo);
@@ -886,15 +880,6 @@
return true;
}
- private boolean assertStaticField(final boolean staticFieldConversion,
- final FieldInfo fieldInfo) throws ClassInfoException,
- ImportException {
- if (fieldInfo.isStaticField() != staticFieldConversion) {
- throw new ImportException("\nbad static scope:\n" + fieldInfo);
- }
- return true;
- }
-
private boolean assertFieldDefined(final FieldInfo fieldInfo)
throws ImportException {
if (!fieldInfo.isFieldDefined()) {
@@ -1013,53 +998,6 @@
}
}
- /**
- * record class static field
- *
- * @param classInfo
- * @param dataRecordIdentifier
- * @param valuedFieldList
- * @throws ImportException
- * @throws ImportDataCorruptedException
- * @throws ImportInvalidClassException
- * @throws ImportNotSerializableException
- * @throws ImportClassNotFoundException
- * @throws ImportTooBigForSerializationException
- */
- public void recordClass(final ClassInfo classInfo,
- final DataRecordIdentifier dataRecordIdentifier,
- final ValuedFieldList valuedFieldList) throws ImportException,
- ImportDataCorruptedException, ImportInvalidClassException,
- ImportNotSerializableException, ImportClassNotFoundException,
- ImportTooBigForSerializationException {
- try {
- setObjectState(null, classInfo, valuedFieldList);
- objectIOManager.getOrCreateObjectAndPersistInfoOfClass(classInfo,
- dataRecordIdentifier);
- storeSaver.setRootOfObjectsToSave(null);
- storeSaver.saveForImport(/* null, */dummyObjectSet);
- notifyImported();
- objectIOManager.clearObjectState();
-
- } catch (final ObjectIOException exception) {
- throw new ImportException(exception);
- } catch (final StoreException exception) {
- throw new ImportException(exception);
- } catch (final StoreDataCorruptedException exception) {
- throw new ImportDataCorruptedException(exception);
- } catch (final StoreInvalidClassException exception) {
- throw new ImportInvalidClassException(exception);
- } catch (final StoreNotSerializableException exception) {
- throw new ImportNotSerializableException(exception);
- } catch (final StoreClassNotFoundException exception) {
- throw new ImportClassNotFoundException(exception);
- } catch (final StoreTooBigForSerializationException exception) {
- throw new ImportTooBigForSerializationException(exception);
- }
- objectMap.clear();
- dummyObjectSet.clear();
- }
-
protected ClassDef getClassReplacementDef(final Class<?> clazz)
throws ImportException {
try {
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/in/InObjectsHandler.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/in/InObjectsHandler.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/in/InObjectsHandler.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -205,36 +205,36 @@
}
private void endStaticElement() throws SAXException {
- try {
- final ClassDef classDef = currentObject.getClassDef();
- final DataRecordIdentifier dataRecordIdentifier = currentObject
- .getDataRecordIdentifier();
- final ValuedFieldList valuedFieldList = xmlImporter
- .convert(true, currentObject.getValuedFieldList(),
- classDef.getReplacementDef(),
- currentObject.getFieldsInfo());
- final ClassInfo classInfo = classDef.getReplacementClass();
- xmlImporter.recordClass(classInfo, dataRecordIdentifier,
- valuedFieldList);
- } catch (final ImportException exception) {
- logger.error(END_ELEMENT_ERROR + location(), exception);
- throw new SAXException(END_ELEMENT_ERROR + location(), exception);
- } catch (final ImportDataCorruptedException exception) {
- logger.error(END_ELEMENT_ERROR + location(), exception);
- throw new SAXException(END_ELEMENT_ERROR + location(), exception);
- } catch (final ImportInvalidClassException exception) {
- logger.error(END_ELEMENT_ERROR + location(), exception);
- throw new SAXException(END_ELEMENT_ERROR + location(), exception);
- } catch (final ImportNotSerializableException exception) {
- logger.error(END_ELEMENT_ERROR + location(), exception);
- throw new SAXException(END_ELEMENT_ERROR + location(), exception);
- } catch (final ImportClassNotFoundException exception) {
- logger.error(END_ELEMENT_ERROR + location(), exception);
- throw new SAXException(END_ELEMENT_ERROR + location(), exception);
- } catch (final ImportTooBigForSerializationException exception) {
- logger.error(END_ELEMENT_ERROR + location(), exception);
- throw new SAXException(END_ELEMENT_ERROR + location(), exception);
- }
+ // try {
+ // final ClassDef classDef = currentObject.getClassDef();
+ // final DataRecordIdentifier dataRecordIdentifier = currentObject
+ // .getDataRecordIdentifier();
+ // final ValuedFieldList valuedFieldList = xmlImporter
+ // .convert(true, currentObject.getValuedFieldList(),
+ // classDef.getReplacementDef(),
+ // currentObject.getFieldsInfo());
+ // final ClassInfo classInfo = classDef.getReplacementClass();
+ // xmlImporter.recordClass(classInfo, dataRecordIdentifier,
+ // valuedFieldList);
+ // } catch (final ImportException exception) {
+ // logger.error(END_ELEMENT_ERROR + location(), exception);
+ // throw new SAXException(END_ELEMENT_ERROR + location(), exception);
+ // } catch (final ImportDataCorruptedException exception) {
+ // logger.error(END_ELEMENT_ERROR + location(), exception);
+ // throw new SAXException(END_ELEMENT_ERROR + location(), exception);
+ // } catch (final ImportInvalidClassException exception) {
+ // logger.error(END_ELEMENT_ERROR + location(), exception);
+ // throw new SAXException(END_ELEMENT_ERROR + location(), exception);
+ // } catch (final ImportNotSerializableException exception) {
+ // logger.error(END_ELEMENT_ERROR + location(), exception);
+ // throw new SAXException(END_ELEMENT_ERROR + location(), exception);
+ // } catch (final ImportClassNotFoundException exception) {
+ // logger.error(END_ELEMENT_ERROR + location(), exception);
+ // throw new SAXException(END_ELEMENT_ERROR + location(), exception);
+ // } catch (final ImportTooBigForSerializationException exception) {
+ // logger.error(END_ELEMENT_ERROR + location(), exception);
+ // throw new SAXException(END_ELEMENT_ERROR + location(), exception);
+ // }
}
private void endArrayElement() throws SAXException {
@@ -271,7 +271,7 @@
try {
final ClassDef classDef = currentObject.getClassDef();
final ValuedFieldList valuedFieldList = xmlImporter
- .convert(false, currentObject.getValuedFieldList(),
+ .convert(currentObject.getValuedFieldList(),
classDef.getReplacementDef(),
currentObject.getFieldsInfo());
final Object object = currentObject.getObject();
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/out/AbstractExporter.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/out/AbstractExporter.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/out/AbstractExporter.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -291,7 +291,8 @@
.getObject();
final int dataModelIdentifier = dataModelIdentifier(storeRoot);
- final Set<Long> dataRecordIdOfpersistedStaticSet = dataRecordIdOfpersistedStaticSet(storeRoot);
+ // final Set<Long> dataRecordIdOfpersistedStaticSet =
+ // dataRecordIdOfpersistedStaticSet(storeRoot);
beginExportVisit(Version.JOAFIP_RELEASE, dataModelIdentifier,
dataRecordIdentifier.value);
@@ -305,41 +306,40 @@
dataRecordIdentifier = exportStoreQue.pollFirst();
while (dataRecordIdentifier != null) {
- if (dataRecordIdOfpersistedStaticSet != null
- && dataRecordIdOfpersistedStaticSet
- .contains(dataRecordIdentifier.value)) {
- final ClassInfo classInfo = storeAccessForExport
- .getClassInfo(dataRecordIdentifier);
- storeAccessForExport.setStaticState(dataRecordIdentifier);
- exportStatic(classInfo, dataRecordIdentifier);
+ // if (dataRecordIdOfpersistedStaticSet != null
+ // && dataRecordIdOfpersistedStaticSet
+ // .contains(dataRecordIdentifier.value)) {
+ // final ClassInfo classInfo = storeAccessForExport
+ // .getClassInfo(dataRecordIdentifier);
+ // storeAccessForExport.setStaticState(dataRecordIdentifier);
+ // exportStatic(classInfo, dataRecordIdentifier);
+ // } else {
+ objectAndItsClassInfo =
+ /**/storeAccessForExport
+ .createGenericObjectReadingInStoreNotLazy(dataRecordIdentifier);
+ final ClassInfo objectClassInfo = objectAndItsClassInfo.objectClassInfo;
+ if (exportPersistedClassByteCode) {
+ exportClass(objectClassInfo);
+ }
+ final Object object = objectAndItsClassInfo.getObject();
+ if (objectClassInfo.isStringType()) {
+ exportString(dataRecordIdentifier, (String) object);
+ } else if (objectClassInfo.isArrayType()) {
+ exportArray(dataRecordIdentifier, object, objectClassInfo);
+ } else if (objectClassInfo.isEnumType()) {
+ FieldInfo[] fieldInfos;
+ fieldInfos = objectClassInfo
+ .allDeclaredFieldsWithTransientWithoutStatic();
+ exportEnum(dataRecordIdentifier, object, objectClassInfo,
+ fieldInfos);
} else {
- objectAndItsClassInfo =
- /**/storeAccessForExport
- .createGenericObjectReadingInStoreNotLazy(dataRecordIdentifier);
- final ClassInfo objectClassInfo = objectAndItsClassInfo.objectClassInfo;
- if (exportPersistedClassByteCode) {
- exportClass(objectClassInfo);
- }
- final Object object = objectAndItsClassInfo.getObject();
- if (objectClassInfo.isStringType()) {
- exportString(dataRecordIdentifier, (String) object);
- } else if (objectClassInfo.isArrayType()) {
- exportArray(dataRecordIdentifier, object,
- objectClassInfo);
- } else if (objectClassInfo.isEnumType()) {
- FieldInfo[] fieldInfos;
- fieldInfos = objectClassInfo
- .allDeclaredFieldsWithTransientWithoutStatic();
- exportEnum(dataRecordIdentifier, object,
- objectClassInfo, fieldInfos);
- } else {
- FieldInfo[] fieldInfos;
- fieldInfos = objectClassInfo
- .allDeclaredFieldsWithTransientWithoutStatic();
- exportGeneric(dataRecordIdentifier, object,
- objectClassInfo, fieldInfos);
- }
+ FieldInfo[] fieldInfos;
+ fieldInfos = objectClassInfo
+ .allDeclaredFieldsWithTransientWithoutStatic();
+ exportGeneric(dataRecordIdentifier, object,
+ objectClassInfo, fieldInfos);
}
+ // }
storeAccessForExport.clearMemory();
numberExported = exportStoreQue.getNumberExported();
dataRecordIdentifier = exportStoreQue.pollFirst();
@@ -599,6 +599,7 @@
protected abstract void exportString(final int objectIdentifier,
final String string) throws StoreException;
+ @SuppressWarnings("unused")
private void exportStatic(final ClassInfo objectClassInfo,
final DataRecordIdentifier objectDataRecordIdentifier)
throws StoreException {
Modified: trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/out/StoreAccessForExport.java
===================================================================
--- trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/out/StoreAccessForExport.java 2011-10-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/export_import/out/StoreAccessForExport.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -182,33 +182,6 @@
return objectAndItsClassInfo;
}
- public void setStaticState(final DataRecordIdentifier dataRecordIdentifier)
- throws StoreException, StoreClassNotFoundException,
- StoreInvalidClassException, StoreDataCorruptedException,
- StoreNotSerializableException {
- try {
- objectIOManager.setStaticState(dataRecordIdentifier);
- } catch (ObjectIOException exception) {
- throw new StoreException(FOR_DATA_RECORD + dataRecordIdentifier,
- exception);
- } catch (ObjectIODataRecordNotFoundException exception) {
- throw new StoreException(FOR_DATA_RECORD + dataRecordIdentifier,
- exception);
- } catch (ObjectIOClassNotFoundException exception) {
- throw new StoreClassNotFoundException(FOR_DATA_RECORD
- + dataRecordIdentifier, exception);
- } catch (ObjectIOInvalidClassException exception) {
- throw new StoreInvalidClassException(FOR_DATA_RECORD
- + dataRecordIdentifier, exception);
- } catch (ObjectIODataCorruptedException exception) {
- throw new StoreDataCorruptedException(FOR_DATA_RECORD
- + dataRecordIdentifier, exception);
- } catch (ObjectIONotSerializableException exception) {
- throw new StoreNotSerializableException(FOR_DATA_RECORD
- + dataRecordIdentifier, exception);
- }
- }
-
/**
*
* @param object
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-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerDelegatingToStateMap.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -127,26 +127,6 @@
return dataRecordIdentifier;
}
- @Override
- public ObjectAndPersistInfo getOrCreateObjectAndPersistInfoOfClass(
- final ClassInfo objectClassInfo) throws ObjectIOException {
- return objectStateMgr
- .getOrCreateObjectAndPersistInfoOfClass(objectClassInfo);
- }
-
- @Override
- public ObjectAndPersistInfo createObjectAndPersistInfoOfClass(
- final ClassInfo objectClassInfo) throws ObjectIOException {
- return objectStateMgr
- .createObjectAndPersistInfoOfClass(objectClassInfo);
- }
-
- @Override
- public ObjectAndPersistInfo getObjectAndPersistInfoOfClass(
- final ClassInfo objectClassInfo) throws ObjectIOException {
- return objectStateMgr.getObjectAndPersistInfoOfClass(objectClassInfo);
- }
-
public void clearObjectState() throws ObjectIOException {
objectStateMgr.clear();
}
@@ -193,10 +173,6 @@
return objectStateMgr.getNumberOfReferenced();
}
- public Collection<ObjectAndPersistInfo> staticObjectAndPersistInfoSet() {
- return objectStateMgr.staticObjectAndPersistInfoSet();
- }
-
protected void objectIsAccessedDelegate(
final ObjectAndPersistInfo proxyObjectAndPersistInfo) {
objectStateMgr.objectIsAccessed(proxyObjectAndPersistInfo);
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-16 04:45:29 UTC (rev 2921)
+++ trunk/joafip/src/main/java/net/sf/joafip/store/service/objectio/manager/AbstractObjectIOManagerIOForObject.java 2011-10-16 08:35:26 UTC (rev 2922)
@@ -72,7 +72,6 @@
import net.sf.joafip.store.service.objectio.serialize.input.ObjectInputSerialize;
import net.sf.joafip.store.service.objectio.serialize.input.ObjectInputSerializeGZipped;
import net.sf.joafip.store.service.objectio.serialize.input.ObjectInputSerializeZipped;
-import net.sf.joafip.store.service.objectio.serialize.input.ObjectInputStatic;
import net.sf.joafip.store.service.objectio.serialize.output.IObjectOutput;
import net.sf.joafip.store.service.objectio.serialize.output.ObjectIOOutputStream;
import net.sf.joafip.store.service.objectio.serialize.output.ObjectOutputExternalizable;
@@ -85,7 +84,6 @@
import net.sf.joafip.store.service.objectio.serialize.output.ObjectOutputSerialize;
import net.sf.joafip.store.service.objectio.serialize.output.ObjectOutputSerializeGZipped;
import net.sf.joafip.store.service.objectio.serialize.output.ObjectOutputSerializeZipped;
-import net.sf.joafip.store.service.objectio.serialize.output.ObjectOutputStatic;
import net.sf.joafip.store.service.proxy.IInstanceFactory;
import net.sf.joafip.store.service.proxy.IProxyManagerForObjectIO;
import net.sf.joafip.store.service.proxy.ProxyException;
@@ -132,10 +130,6 @@
protected final IObjectOutput[] objectOutputs;
- private final ObjectInputStatic objectInputStatic;
-
- protected ObjectOutputStatic objectOutputStatic;
-
private final ObjectIOOutputStream objectIOOutputStream;
private final ObjectIOInputStream objectIOInputStream;
@@ -325,11 +319,6 @@
objectInputs[EnumObjectInput.OBJECT_INPUT_SPECIFIC.ordinal()] = objectIODummy;
objectOutputs[EnumObjectOutput.OBJECT_OUTPUT_SPECIFIC.ordinal()] = objectIODummy;
- objectInputStatic = new ObjectInputStatic(this, classInfoFactory,
- proxyManager2, helperBinaryConversion);
- objectOutputStatic = new ObjectOutputStatic(this, classInfoFactory,
- proxyManager2, helperBinaryConversion);
-
objectIOInputStream.setObjectIOGeneric(objectInputImmediateGeneric);
objectIOOutputStream.setObjectIOGeneric(objectOutputGeneric);
@@ -666,8 +655,6 @@
headerReader.read(binary, dataRecordIdentifier);
final ClassInfo classInfo = headerReader.objectClassInfo;
assertStorable(classInfo);
- // ASSERTX
- assert assertNotStaticPersistence(classInfo);
final Deque<ClassReplacementDef> replacementDef = replacementDefForHeader(classInfo);
final ObjectAndPersistInfo objectAndPersistInfo;
@@ -767,15 +754,6 @@
return true;
}
- private boolean assertNotStaticPersistence(final ClassInfo classInfo)
- throws ObjectIOException {
- if (headerReader.staticPersistence) {
- throw new ObjectIOException("static field state of class "
- + classInfo.toString());
- }
- return true;
- }
-
protected abstract void notToGarbage(
final DataRecordIdentifier dataRecordIdentifier,
final ObjectAndPersistInfo objectAndPersistInfo)
@@ -795,8 +773,6 @@
assertNotSubstituted(objectAndPersistInfo);
// ASSERTX
assert assertHasPersistenceState(objectAndPersistInfo);
- // ASSERTX
- assert !objectAndPersistInfo.staticPersistence : "static state can not be set trought proxy";
final ClassInfo classInfo = objectAndPersistInfo.objectClassInfo;
// ASSERTX
assert assertStorable(classInfo);
@@ -1018,11 +994,7 @@
final ClassInfo classInfo = headerReader.objectClassInfo;
final IObjectInput objectInput;
try {
- if (headerReader.staticPersistence) {
- objectInput = objectInputStatic;
- } else {
- objectInput = getObjectInput(classInfo, false);
- }
+ objectInput = getObjectInput(classInfo, false);
final DataRecordIdentifier[] referencedList = objectInput
.getReferencedList(binary, headerReader.headerDataSize);
Class<?> objectClass;
@@ -1060,17 +1032,11 @@
// ASSERTX
assert classInfo != null && classInfo != ClassInfo.NULL : "class information for object not defined";
final IObjectOutput objectOutput;
- final boolean staticPersistence = objectAndItsPersistInfo.staticPersistence;
- if (staticPersistence) {
- objectOutput = objectOutputStatic;
- } else {
- objectOutput = getObjectOutput(classInfo);
- }
+ objectOutput = getObjectOutput(classInfo);
final int byteSize = objectOutput.byteSize(toWriteObjectAndPersistInfo,
HEADER_DATA_SIZE);
final byte[] binary = new byte[byteSize];
- final int offset = headerWriter.write(classInfo, binary,
- staticPersistence);
+ final int offset = headerWriter.write(classInfo, binary);
if (offset != HEADER_DATA_SIZE) {
throw new ObjectIOException("header data size missmatch");
}
@@ -1089,24 +1055,21 @@
private boolean assertWritable(
final ObjectAndPersistInfo objectAndPersistInfo)
throws ObjectIOException {
- if (!objectAndPersistInfo.staticPersistence) {
- final Object object = objectAndPersistInfo.getObject();
- if (object == null) {
- throw new ObjectIOException("can not save null");
+ final Object object = objectAndPersistInfo.getObject();
+ if (object == null) {
+ throw new ObjectIOException("can not save null");
+ }
+ try {
+ if (!ProxyManager2.isLoadedOrNotAProxy(object)) {
+ throw new ObjectIOException("can not save not loaded object "
+ + object.getClass() + "@"
+ + System.identityHashCode(object)
+ + ", objectAndPersistInfo.isLoaded()="
+ + objectAndPersistInfo.isLoaded());
}
- try {
- if (!ProxyManager2.isLoadedOrNotAProxy(object)) {
- throw new ObjectIOException(
- "can not save not loaded object "
- + object.getClass() + "@"
- + System.identityHashCode(object)
- + ", objectAndPersistInfo.isLoaded()="
- + objectAndPersistInfo.isLoaded());
- }
- } catch (final ProxyException exception) {
- throw new ObjectIOException("can not save not loaded object",
- exception);
- }
+ } catch (final ProxyException exception) {
+ throw new ObjectIOException("can not save not loaded object",
+ exception);
}
return true;
}
@@ -1140,15 +1103,9 @@
/**/substituteObject(objectAndPersistInfo);
final Object object = substituteObjectAndPersistInfo.getObject();
final IObjectOutput objectOutput;
- if (objectAndPersistInfo.staticPersistence) {
- // ASSERTX
- assert assertNoInstance(substituteObjectAndPersistInfo, object);
- objectOutput = objectOutputStatic;
- } else {
- // ASSERTX
- assert assertHasInstance(substituteObjectAndPersistInfo, object);
- objectOutput = getObjectOutput(substituteObjectAndPersistInfo.objectClassInfo);
- }
+ // ASSERTX
+ assert assertHasInstance(substituteObjectAndPersistInfo, object);
+ objectOutput = getObjectOutput(substituteObjectAndPersistInfo.objectClassInfo);
objectOutput.prepareWrite(substituteObjectAndPersistInfo);
objectAndPersistInfo
.setSubstituteObjectAndPersistInfo(substituteObjectAndPersistInfo);
@@ -1156,15 +1113,9 @@
// write original object
final Object object = objectAndPersistInfo.getObject();
final IObjectOutput objectOutput;
- if (objectAndPersistInfo.staticPersistence) {
- // ASSERTX
- assert assertNoInstance(objectAndPersistInfo, object);
- objectOutput = objectOutputStatic;
- } else {
- // ASSERTX
- assert assertHasInstance(objectAndPersistInfo, object);
- objectOutput = getObjectOutput(classInfo);
- }
+ // ASSERTX
+ assert assertHasInstance(objectAndPersistInfo, object);
+ objectOutput = getObjectOutput(classInfo);
objectOutput.prepareWrite(objectAndPersistInfo);
}
}
@@ -1180,17 +1131,6 @@
return true;
}
- private boolean assertNoInstance(
- final ObjectAndPersistInfo substituteObjectAndPersistInfo,
- final Object object) throws ObjectIOException {
- if (object != null) {
- throw new ObjectIOException(
- "must not have instance for static persistence "
- + substituteObjectAndPersistInfo.toString());
- }
- return true;
- }
-
protected ObjectAndPersistInfo substituteObject(
final ObjectAndPersistInfo objectAndPersistInfo)
throws ObjectIOException, ObjectIODataCorruptedException {
@@ -1212,86 +1152,6 @@
return substituteObjectAndPersistInfo;
}
- /**
- * set static state of a class
- *
- * @param dataRecordIdentifier
- * data record identifier of record containing object state
- * @return persistence information, null if class does not exist
- * @throws ObjectIOException
- * @throws ObjectIODataCorruptedException
- * @throws ObjectIODataRecordNotFoundException
- * @throws ObjectIOClassNotFoundException
- * @throws ObjectIOInvalidClassException
- * @throws ObjectIONotSerializableException
- */
- public ObjectAndPersistInfo setStaticState(
- final DataRecordIdentifier dataRecordIdentifier)
- throws ObjectIOException, ObjectIODataCorruptedException,
- ObjectIODataRecordNotFoundException,
- ObjectIOClassNotFoundException, ObjectIOInvalidClassException,
- ObjectIONotSerializableException {
- final byte[] binary = getDataOfDataRecord(dataRecordIdentifier);
- headerReader.read(binary, dataRecordIdentifier);
- final ClassInfo classInfo = headerReader.objectClassInfo;
- // ASSERTX
- assert assertStorable(classInfo);
- // ASSERTX
- assert assertStaticPersistence(classInfo);
- final Deque<ClassReplacementDef> replacementDef = replacementDefForHeader(classInfo);
- final ObjectAndPersistInfo objectAndPersistInfo;
- final int offset = headerReader.headerDataSize;
-
- if (replacementDef.isEmpty()) {
- if (classInfo.classExists()) {
- objectAndPersistInfo = createObjectAndPersistInfoOfClass(classInfo);
- objectAndPersistInfo
- .setDataRecordIdentifier(dataRecordIdentifier);
- objectAndPersistInfo.setReplacementDefList(replacementDef);
- objectInputStatic.setObjectStaticState(objectAndPersistInfo,
- binary, offset);
- // not a new object to add to storage, created reading in
- // storage
- objectAndPersistInfo.setNewObject(false);
- } else {
- objectAndPersistInfo = new ObjectAndPersistInfo(classInfo);
- }
- } else {
-
- assertOriginalClassInfo(classInfo, replacementDef);
-
- final ClassInfo replacementClassInfo = replacementDef.peekLast()
- .getReplacementClass();
-
- if (replacementClassInfo.classExists()) {
- objectAndPersistInfo = createObjectAndPersistInfoOfClass(replacementClassInfo);
- objectAndPersistInfo
- .setDataRecordIdentifier(dataRecordIdentifier);
- objectAndPersistInfo.setReplacementDefList(replacementDef);
- objectInputStatic.setObjectState(objectAndPersistInfo, binary,
- offset);
- } else {
- objectAndPersistInfo = new ObjectAndPersistInfo(
- replacementClassInfo);
- }
-
- }
- objectAndPersistInfo.setJoafipReleaseId(headerReader.joafipReleaseId);
- objectAndPersistInfo
- .setDataModelIdentifier(headerReader.dataModelIdentifier);
- return objectAndPersistInfo;
- }
-
- private boolean assertStaticPersistence(final ClassInfo classInfo)
- throws ObjectIOException {
- if (!headerReader.staticPersistence) {
- throw new ObjectIOException(
- "not a record for static field state of class "
- + classInfo.toString());
- }
- return true;
- }
-
private boolean assertStorable(final ClassInfo classInfo)
throws ObjectIOException {
if (classInfo.isNotStorable()) {
@@ -1302,43 +1162,6 @@
}
@Override
- public ObjectAndPersistInfo getOrCreateObjectAndPersistInfoOfClass(
- final ClassInfo objectClassInfo,
- final DataRecordIdentifier dataRecordIdentifier)
- throws ObjectIOException {
-
- // final ObjectAndPersistInfo objectPersistInfoOfObject =
- // /**/getOrCreateObjectAndPersistInfoOfClass(objectClassInfo);
- // objectPersistInfoOfObject.setDataRecordIdentifier(dataRecordIdentifier);
- // dataRecordIdentifierAssociatedToObjectSetted(objectPersistInfoOfObject);
- ObjectAndPersistInfo objectPersistInfoOfObject =
- /**/getObjectAndPersistInfoOfClass(objectClassInfo);
- if (objectPersistInfoOfObject == null) {
- objectPersistInfoOfObject = createObjectAndPersistInfoOfClass(objectClassInfo);
- objectPersistInfoOfObject
- .setDataRecordIdentifier(dataRecordIdentifier);
- dataRecordIdentifierAssociatedToObjectSetted(objectPersistInfoOfObject);
- } else if (objectPersistInfoOfObject.dataRecordIdentifier.value != dataRecordIdentifier.value) {
- throw new ObjectIOException("data record id...
[truncated message content] |