public class RAFBuffer extends Object implements ContentBuffer
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
cloneRafContent |
protected boolean |
closeRaf |
protected boolean |
deleteTempOnExit |
protected boolean |
flushOnClose |
protected Lock |
lock |
protected RandomAccessFile |
raf |
protected boolean |
releaseRaf |
protected boolean |
throwNotSetRaf |
| Constructor and Description |
|---|
RAFBuffer() |
RAFBuffer(Lock lock) |
RAFBuffer(RAFBuffer src) |
RAFBuffer(RAFBuffer src,
Lock lock) |
| Modifier and Type | Method and Description |
|---|---|
void |
clear()
Очистка буфера, устанавливает размер в ноль
|
RAFBuffer |
clone() |
void |
close()
Закрытие буфера
|
protected File |
createTempFile() |
protected RandomAccessFile |
createTempRAF() |
void |
flush()
Запись содержимого на диск/память
|
byte[] |
get(long offset,
int dataLen)
Получение байтов.
|
Lock |
getLock() |
RandomAccessFile |
getRaf() |
long |
getSize()
Возвращает размер буфера в байтах
|
boolean |
isCloneRafContent()
Указывает клонировать во временный файл содержимое буфера
|
boolean |
isCloseRaf()
Указывает закрывать RandomAccessFile при вызове close.
|
boolean |
isDeleteTempOnExit()
Указывает удалять временно клонированный файл при выходе
|
boolean |
isFlushOnClose()
Указывает сбрасывать содержимое памяти на диск при закрытии
|
boolean |
isReleaseRaf()
Указывает освобаждать ссылку (устанавливать свойство raf в null) на RandomAccessFile
|
boolean |
isThrowNotSetRaf() |
void |
set(long offset,
byte[] data,
int dataOffset,
int dataLen)
Установить байты в массиве.
|
void |
setCloneRafContent(boolean cloneRafContent)
Указывает клонировать во временный файл содержимое буфера
|
void |
setCloseRaf(boolean closeRaf)
Указывает закрывать RandomAccessFile при вызове close.
|
void |
setDeleteTempOnExit(boolean deleteTempOnExit)
Указывает удалять временно клонированный файл при выходе
|
void |
setFlushOnClose(boolean flushOnClose)
Указывает сбрасывать содержимое памяти на диск при закрытии
|
void |
setRaf(RandomAccessFile raf) |
void |
setReleaseRaf(boolean releaseRaf)
Указывает освобаждать ссылку (устанавливать свойство raf в null) на RandomAccessFile
|
void |
setSize(long size)
Устанавливает размер буфера
|
void |
setThrowNotSetRaf(boolean throwNotSetRaf) |
protected final Lock lock
protected boolean cloneRafContent
protected RandomAccessFile raf
protected boolean throwNotSetRaf
protected boolean deleteTempOnExit
protected boolean flushOnClose
protected boolean closeRaf
protected boolean releaseRaf
public RAFBuffer()
public RAFBuffer(Lock lock)
public RAFBuffer(RAFBuffer src)
public boolean isCloneRafContent()
public void setCloneRafContent(boolean cloneRafContent)
cloneRafContent - true (по умолчанию) - клонироватьpublic Lock getLock()
public RandomAccessFile getRaf()
public void setRaf(RandomAccessFile raf)
public boolean isThrowNotSetRaf()
public void setThrowNotSetRaf(boolean throwNotSetRaf)
public long getSize()
ContentBuffergetSize in interface ContentBufferpublic void setSize(long size)
ContentBuffersetSize in interface ContentBuffersize - кол-во байт в буфереpublic void set(long offset,
byte[] data,
int dataOffset,
int dataLen)
ContentBufferПо возможности, массив должен быть расширен до необходимого размера, инче должно быть сгененировано исключение
set in interface ContentBufferoffset - смещение в буфере от нуляdata - массив байтовdataOffset - смещение в массиве байтовdataLen - кол-во добавляемых байтов из массиваpublic byte[] get(long offset,
int dataLen)
ContentBuffer
Если данные в заданном диапазоне отсуствуют - то должыен быть ввозвращает пустой массив.
Если данные присуствуют в ограниченном размере - то данные, то возвращается массив длинной имеющимся данным.
get in interface ContentBufferoffset - смещение (от нуля)dataLen - кол-во байтовpublic void clear()
ContentBufferclear in interface ContentBufferpublic boolean isDeleteTempOnExit()
public void setDeleteTempOnExit(boolean deleteTempOnExit)
deleteTempOnExit - true (по умолчанию) - удалять клонированный файлprotected File createTempFile()
protected RandomAccessFile createTempRAF()
public void flush()
ContentBufferflush in interface ContentBufferpublic boolean isFlushOnClose()
public void setFlushOnClose(boolean flushOnClose)
flushOnClose - true (по умолчанию) - сбрасывать.public boolean isCloseRaf()
public void setCloseRaf(boolean closeRaf)
closeRaf - true (по умолчанию) - закрывать.public boolean isReleaseRaf()
public void setReleaseRaf(boolean releaseRaf)
releaseRaf - true (по умолчанию) - освобождать.public void close()
ContentBufferclose in interface ContentBufferCopyright © 2018. All rights reserved.