public void mark(int pReadLimit) throws IOException { if (pReadLimit < 0){ throw new IllegalArgumentException("Read limit < 0"); } synchronized (finalLock) { ensureOpen(); mark = next; markedString = currentSting; current.mark(pReadLimit); } }
public void reset() throws IOException { synchronized (finalLock) { ensureOpen(); if (currentSting != markedString) { currentSting = markedString - 1; nextReader(); current.skip(mark); } else { current.reset(); } next = mark; } }
public void mark(int pReadLimit) throws IOException { if (pReadLimit < 0){ throw new IllegalArgumentException("Read limit < 0"); } synchronized (finalLock) { ensureOpen(); mark = next; markedString = currentSting; current.mark(pReadLimit); } }
public void mark(int pReadLimit) throws IOException { if (pReadLimit < 0){ throw new IllegalArgumentException("Read limit < 0"); } synchronized (mLock) { ensureOpen(); mMark = mNext; mMarkedString = mCurrentSting; mCurrent.mark(pReadLimit); } }
public void reset() throws IOException { synchronized (finalLock) { ensureOpen(); if (currentSting != markedString) { currentSting = markedString - 1; nextReader(); current.skip(mark); } else { current.reset(); } next = mark; } }
public void reset() throws IOException { synchronized (mLock) { ensureOpen(); if (mCurrentSting != mMarkedString) { mCurrentSting = mMarkedString - 1; nextReader(); mCurrent.skip(mMark); } else { mCurrent.reset(); } mNext = mMark; } }