Package com.itextpdf.text.pdf
Class MappedRandomAccessFile
- java.lang.Object
-
- com.itextpdf.text.pdf.MappedRandomAccessFile
-
public class MappedRandomAccessFile extends java.lang.Object
AMappedByteBuffer
wrapped as aRandomAccessFile
-
-
Field Summary
Fields Modifier and Type Field Description private static int
BUFSIZE
private java.nio.channels.FileChannel
channel
private java.nio.MappedByteBuffer[]
mappedBuffers
private long
pos
private long
size
-
Constructor Summary
Constructors Constructor Description MappedRandomAccessFile(java.lang.String filename, java.lang.String mode)
Constructs a new MappedRandomAccessFile instance
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static boolean
clean(java.nio.ByteBuffer buffer)
invokes the clean method on the ByteBuffer's cleanervoid
close()
protected void
finalize()
invokes the close methodjava.nio.channels.FileChannel
getChannel()
long
getFilePointer()
private void
init(java.nio.channels.FileChannel channel, java.nio.channels.FileChannel.MapMode mapMode)
initializes the channel and mapped bytebufferlong
length()
int
read()
int
read(byte[] bytes, int off, int len)
void
seek(long pos)
-
-
-
Field Detail
-
BUFSIZE
private static final int BUFSIZE
- See Also:
- Constant Field Values
-
channel
private java.nio.channels.FileChannel channel
-
mappedBuffers
private java.nio.MappedByteBuffer[] mappedBuffers
-
size
private long size
-
pos
private long pos
-
-
Constructor Detail
-
MappedRandomAccessFile
public MappedRandomAccessFile(java.lang.String filename, java.lang.String mode) throws java.io.FileNotFoundException, java.io.IOException
Constructs a new MappedRandomAccessFile instance- Parameters:
filename
- Stringmode
- String r, w or rw- Throws:
java.io.FileNotFoundException
java.io.IOException
-
-
Method Detail
-
init
private void init(java.nio.channels.FileChannel channel, java.nio.channels.FileChannel.MapMode mapMode) throws java.io.IOException
initializes the channel and mapped bytebuffer- Parameters:
channel
- FileChannelmapMode
- FileChannel.MapMode- Throws:
java.io.IOException
-
getChannel
public java.nio.channels.FileChannel getChannel()
- Since:
- 2.0.8
-
read
public int read()
- Returns:
- int next integer or -1 on EOF
- See Also:
RandomAccessFile.read()
-
read
public int read(byte[] bytes, int off, int len)
- Parameters:
bytes
- byte[]off
- int offsetlen
- int length- Returns:
- int bytes read or -1 on EOF
- See Also:
RandomAccessFile.read(byte[], int, int)
-
getFilePointer
public long getFilePointer()
- Returns:
- long
- See Also:
RandomAccessFile.getFilePointer()
-
seek
public void seek(long pos)
- Parameters:
pos
- long position- See Also:
RandomAccessFile.seek(long)
-
length
public long length()
- Returns:
- long length
- See Also:
RandomAccessFile.length()
-
close
public void close() throws java.io.IOException
- Throws:
java.io.IOException
- See Also:
Cleans the mapped bytebuffer and closes the channel
-
finalize
protected void finalize() throws java.lang.Throwable
invokes the close method- Overrides:
finalize
in classjava.lang.Object
- Throws:
java.lang.Throwable
- See Also:
Object.finalize()
-
clean
public static boolean clean(java.nio.ByteBuffer buffer)
invokes the clean method on the ByteBuffer's cleaner- Parameters:
buffer
- ByteBuffer- Returns:
- boolean true on success
-
-