ru.biosoft.util
Class ConservativeFastFileBuffer
ru.biosoft.util.FileBuffer
|
+--ru.biosoft.util.ConservativeFastFileBuffer
- public class ConservativeFastFileBuffer
- extends FileBuffer
Optimized by speed implementation of FileBuffer interface.
| Method Summary |
void | close() Closes the buffer. |
byte | read(int pos) Reads one byte from requested position. |
void | write(int pos, byte bt) Writes one byte to the requested position
in the buffer. |
ConservativeFastFileBuffer
public ConservativeFastFileBuffer(File rndFile, int sz)
throws java.io.IOException
- Constructs the RandomAccessBuffer object .
Creates two buffers by size sz
fills them with preceding reading- Parameters:
- rndFile - random access file
- sz - Size of one buffer.
- Throws:
- IOException - any I/O errors
ConservativeFastFileBuffer
public ConservativeFastFileBuffer(File rndFile)
throws java.io.IOException
- Constructs the RandomAccessBuffer object .
Creates two buffers by size sz
fills them with preceding reading- Parameters:
- rndFile - random access file
- Throws:
- IOException - any I/O errors
close
public void close()
throws java.io.IOException
- Closes the buffer.
- Throws:
- IOException - if an I/O error occurs.
read
public byte read(int pos)
throws java.io.IOException
- Reads one byte from requested position.
If byte is already in any buffer
then it returns. Otherwise one of two buffers
is filled by new data from position pos
minus half buffer size. Method selects buffer which more
distant from specified position.
- Parameters:
- pos - position of requested byte
- Returns: requested byte
- Throws:
- IOException - any I/O errors
write
public void write(int pos, byte bt)
throws java.io.IOException
- Writes one byte to the requested position
in the buffer. If specified position
maps to any region in any of the two buffers
the byte is stored into the buffer.
Otherwise one of the two buffers
is written into file and required
portion of data is read from file
back into buffer so it will satisfy
the requested position. Method selects buffer which more
distant from specified position.
- Parameters:
- pos - position of requested byte
- bt - stored byte
- Throws:
- IOException - any I/O errors
to Class org.apache.log4j.Category
to Class java.io.File
BOTTOM