package com.sleepycat.je.log; import com.sleepycat.je.latch.Latch; import com.sleepycat.je.latch.LatchSupport; abstract public class LogManager { protected Latch logWriteLatch; protected void hook502( EnvironmentImpl envImpl) throws DatabaseException { logWriteLatch=LatchSupport.makeLatch(DEBUG_NAME,envImpl); original(envImpl); } protected boolean hook503( ByteBuffer marshalledBuffer, int entrySize, long currentLsn, boolean usedTemporaryBuffer, LogBuffer useLogBuffer) throws IOException, DatabaseException, Exception { useLogBuffer.latchForWrite(); try { usedTemporaryBuffer=original(marshalledBuffer,entrySize,currentLsn,usedTemporaryBuffer,useLogBuffer); } finally { useLogBuffer.release(); } return usedTemporaryBuffer; } }