public BasicPersistentLockStore(ObjectStoreEnvironmentBean objectStoreEnvironmentBean) throws ObjectStoreException { if (txojLogger.logger.isTraceEnabled()) { txojLogger.logger.trace("BasicPersistentLockStore.BasicPersistentLockStore()"); } /* * Use the ShadowingStore since it has file-level locking which we * require. The default object store assumes locking is provided * entirely by the object. */ _lockStore = new ShadowingStore(objectStoreEnvironmentBean); }
tsLogger.logger.trace("ShadowingStore.read_state(" + objUid + ", " + tName + ", " + StateType.stateTypeString(ft) + ")"); int state = currentState(objUid, tName); String fname = genPathName(objUid, tName, ft); File fd = openAndLock(fname, FileLock.F_RDLCK, false); closeAndUnlock(fd, ifile, null); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_7(); closeAndUnlock(fd, ifile, null); throw new ObjectStoreException( "ShadowingStore::read_state failed: " + e, e); if (!closeAndUnlock(fd, ifile, null)) { tsLogger.i18NLogger.warn_objectstore_ShadowingStore_8(fname); throw new ObjectStoreException( "ShadowStore::read_state - " + tsLogger.i18NLogger.get_objectstore_notypenameuid() + objUid);
String path = genPathName(objUid, tName, StateType.OS_SHADOW); if (exists(path)) if (exists(path)) path = genPathName(objUid, tName, StateType.OS_ORIGINAL); if (exists(path)) if (exists(path)) StateStatus.stateStatusString(theState));
if (storeValid()) String path = genPathName(objUid, tName, ObjectStore.OS_SHADOW); if (exists(path)) if (exists(path)) path = genPathName(objUid, tName, ObjectStore.OS_ORIGINAL); if (exists(path)) if (exists(path))
tsLogger.logger.trace("ShadowingStore.remove_state(" + objUid + ", " + name + ", " + StateType.stateTypeString(ft) + ")"); int state = currentState(objUid, name); String fname = genPathName(objUid, name, ft); File fd = openAndLock(fname, FileLock.F_WRLCK, false); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_9(objUid, name); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_10(objUid, name); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_11(fname); closeAndUnlock(fd, null, null);
tsLogger.logger.trace("ShadowingStore.write_state(" + objUid + ", " + tName + ", " + StateType.stateTypeString(ft) + ")"); String fname = genPathName(objUid, tName, ft); File fd = openAndLock(fname, FileLock.F_WRLCK, true); int imageSize = (int) state.length(); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_18(fname); if (synchronousWrites()) closeAndUnlock(fd, null, ofile); throw new ObjectStoreException( "ShadowingStore::write_state() - write failed to sync for " + fname, e); closeAndUnlock(fd, null, ofile); throw new ObjectStoreException( "ShadowingStore::write_state() - write failed to locate file " + fname + ": " + e, e); closeAndUnlock(fd, null, ofile); if (!closeAndUnlock(fd, null, ofile)) { tsLogger.i18NLogger.warn_objectstore_ShadowingStore_19(fname);
int state = currentState(objUid, tName); shadow = genPathName(objUid, tName, StateType.OS_SHADOW); filename = genPathName(objUid, tName, StateType.OS_ORIGINAL); result = renameFromTo(shadowState, originalState); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_2(shadow, filename); throw new ObjectStoreException( "ShadowStore::commit_state - " + tsLogger.i18NLogger.get_objectstore_notypenameuid() + objUid);
int state = currentState(objUid, tName); String path1 = null; String path2 = null; path1 = genPathName(objUid, tName, StateType.OS_SHADOW); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path1); if (renameFromTo(newState, oldState)) tsLogger.i18NLogger.warn_objectstore_ShadowingStore_4(newState.getName(), oldState.getName()); path1 = genPathName(objUid, tName, StateType.OS_ORIGINAL); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path1); if (renameFromTo(newState, oldState)) tsLogger.i18NLogger.warn_objectstore_ShadowingStore_4(newState.getName(), oldState.getName());
int state = currentState(objUid, tName); String path1 = null; String path2 = null; case StateStatus.OS_COMMITTED: path1 = genPathName(objUid, tName, StateType.OS_ORIGINAL); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path2); if (renameFromTo(newState, oldState)) tsLogger.i18NLogger.warn_objectstore_ShadowingStore_3(newState.getName(), oldState.getName()); path1 = genPathName(objUid, tName, StateType.OS_SHADOW); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path2); if (renameFromTo(newState, oldState)) tsLogger.i18NLogger.warn_objectstore_ShadowingStore_3(newState.getName(), oldState.getName());
if (!storeValid()) int state = currentState(objUid, tName); String fname = genPathName(objUid, tName, ft); File fd = openAndLock(fname, FileLock.F_RDLCK, false); closeAndUnlock(fd, ifile, null); throw new ObjectStoreException( "ShadowingStore::read_state error: " + e, e); closeAndUnlock(fd, ifile, null); throw new ObjectStoreException( "ShadowingStore::read_state failed: " + e, e); if (!closeAndUnlock(fd, ifile, null)) throw new ObjectStoreException( "ShadowStore::read_state - " + tsLogger.log_mesg
if (!storeValid()) int state = currentState(objUid, tName); shadow = genPathName(objUid, tName, ObjectStore.OS_SHADOW); filename = genPathName(objUid, tName, ObjectStore.OS_ORIGINAL); result = renameFromTo(shadowState, originalState); throw new ObjectStoreException( "ShadowStore::commit_state - " + tsLogger.log_mesg
if (!storeValid()) return false; String fname = genPathName(objUid, tName, ft); File fd = openAndLock(fname, FileLock.F_WRLCK, true); int imageSize = (int) state.length(); if (synchronousWrites()) closeAndUnlock(fd, null, ofile); throw new ObjectStoreException( "ShadowingStore::write_state() - write failed to sync for " + fname, e); closeAndUnlock(fd, null, ofile); throw new ObjectStoreException( "ShadowingStore::write_state() - write failed to locate file " + fname + ": " + e, e); closeAndUnlock(fd, null, ofile); throw new ObjectStoreException( "ShadowingStore::write_state() - write failed for " + fname + ": " + e, e); if (!closeAndUnlock(fd, null, ofile))
tsLogger.logger.trace("ShadowingStore.remove_state(" + objUid + ", " + name + ", " + StateType.stateTypeString(ft) + ")"); int state = currentState(objUid, name); String fname = genPathName(objUid, name, ft); File fd = openAndLock(fname, FileLock.F_WRLCK, false); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_9(objUid, name); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_10(objUid, name); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_11(fname); closeAndUnlock(fd, null, null);
tsLogger.logger.trace("ShadowingStore.write_state(" + objUid + ", " + tName + ", " + StateType.stateTypeString(ft) + ")"); String fname = genPathName(objUid, tName, ft); File fd = openAndLock(fname, FileLock.F_WRLCK, true); int imageSize = (int) state.length(); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_18(fname); if (synchronousWrites()) closeAndUnlock(fd, null, ofile); throw new ObjectStoreException( "ShadowingStore::write_state() - write failed to sync for " + fname, e); closeAndUnlock(fd, null, ofile); throw new ObjectStoreException( "ShadowingStore::write_state() - write failed to locate file " + fname + ": " + e, e); closeAndUnlock(fd, null, ofile); if (!closeAndUnlock(fd, null, ofile)) { tsLogger.i18NLogger.warn_objectstore_ShadowingStore_19(fname);
int state = currentState(objUid, tName); shadow = genPathName(objUid, tName, StateType.OS_SHADOW); filename = genPathName(objUid, tName, StateType.OS_ORIGINAL); result = renameFromTo(shadowState, originalState); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_2(shadow, filename); throw new ObjectStoreException( "ShadowStore::commit_state - " + tsLogger.i18NLogger.get_objectstore_notypenameuid() + objUid);
int state = currentState(objUid, tName); String path1 = null; String path2 = null; path1 = genPathName(objUid, tName, StateType.OS_SHADOW); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path1); if (renameFromTo(newState, oldState)) tsLogger.i18NLogger.warn_objectstore_ShadowingStore_4(newState.getName(), oldState.getName()); path1 = genPathName(objUid, tName, StateType.OS_ORIGINAL); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path1); if (renameFromTo(newState, oldState)) tsLogger.i18NLogger.warn_objectstore_ShadowingStore_4(newState.getName(), oldState.getName());
int state = currentState(objUid, tName); String path1 = null; String path2 = null; case StateStatus.OS_COMMITTED: path1 = genPathName(objUid, tName, StateType.OS_ORIGINAL); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path2); if (renameFromTo(newState, oldState)) tsLogger.i18NLogger.warn_objectstore_ShadowingStore_3(newState.getName(), oldState.getName()); path1 = genPathName(objUid, tName, StateType.OS_SHADOW); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path2); if (renameFromTo(newState, oldState)) tsLogger.i18NLogger.warn_objectstore_ShadowingStore_3(newState.getName(), oldState.getName());
if (!storeValid()) return false; int state = currentState(objUid, name); String fname = genPathName(objUid, name, ft); File fd = openAndLock(fname, FileLock.F_WRLCK, false); closeAndUnlock(fd, null, null);
if (storeValid()) int state = currentState(objUid, tName); String path1 = null; String path2 = null; case ObjectStore.OS_COMMITTED: path1 = genPathName(objUid, tName, ObjectStore.OS_ORIGINAL); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path2); if (renameFromTo(newState, oldState)) path1 = genPathName(objUid, tName, ObjectStore.OS_SHADOW); path2 = new String(path1) + HIDDINGCHAR; File oldState = new File(path2); if (renameFromTo(newState, oldState))
tsLogger.logger.trace("ShadowingStore.remove_state(" + objUid + ", " + name + ", " + StateType.stateTypeString(ft) + ")"); int state = currentState(objUid, name); String fname = genPathName(objUid, name, ft); File fd = openAndLock(fname, FileLock.F_WRLCK, false); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_9(objUid, name); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_10(objUid, name); tsLogger.i18NLogger.warn_objectstore_ShadowingStore_11(fname); closeAndUnlock(fd, null, null);