## org.h2.store.fs
Class FileBase

    java.lang.Object
      java.nio.channels.spi.AbstractInterruptibleChannel
          java.nio.channels.FileChannel
              org.h2.store.fs.FileBase

All Implemented Interfaces:
  java.io.Closeable, java.nio.channels.ByteChannel, java.nio.channels.Channel, java.nio.channels.GatheringByteChannel, java.nio.channels.InterruptibleChannel, java.nio.channels.ReadableByteChannel, java.nio.channels.ScatteringByteChannel, java.nio.channels.WritableByteChannel

Direct Known Subclasses:
  FilePathCache.FileCache

    public abstract class FileBase

extends java.nio.channels.FileChannel

The base class for file implementations.

Nested Class Summary

Nested classes/interfaces inherited from class java.nio.channels.FileChannel
`java.nio.channels.FileChannel.MapMode`

Constructor Summary
`FileBase()`

Method Summary
`void` `force(boolean metaData)`
`protected void` `implCloseChannel()`
`java.nio.channels.FileLock` `lock(long position, long size, boolean shared)`
`java.nio.MappedByteBuffer` `map(java.nio.channels.FileChannel.MapMode mode, long position, long size)`
`abstract long` `position()`
`abstract java.nio.channels.FileChannel` `position(long newPosition)`
`abstract int` `read(java.nio.ByteBuffer dst)`
`long` `read(java.nio.ByteBuffer[] dsts, int offset, int length)`
`int` `read(java.nio.ByteBuffer dst, long position)`
`abstract long` `size()`
`long` `transferFrom(java.nio.channels.ReadableByteChannel src, long position, long count)`
`long` `transferTo(long position, long count, java.nio.channels.WritableByteChannel target)`
`abstract java.nio.channels.FileChannel` `truncate(long size)`
`java.nio.channels.FileLock` `tryLock(long position, long size, boolean shared)`
`abstract int` `write(java.nio.ByteBuffer src)`
`long` `write(java.nio.ByteBuffer[] srcs, int offset, int length)`
`int` `write(java.nio.ByteBuffer src, long position)`

Methods inherited from class java.nio.channels.FileChannel
`lock, read, tryLock, write`

Methods inherited from class java.nio.channels.spi.AbstractInterruptibleChannel
`begin, close, end, isOpen`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface java.nio.channels.Channel
`close, isOpen`

Constructor Detail

### FileBase

    public FileBase()

Method Detail

### size

    public abstract long size()
                       throws java.io.IOException

  Specified by:
    `size` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### position

    public abstract long position()
                           throws java.io.IOException

  Specified by:
    `position` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### position

    public abstract java.nio.channels.FileChannel position(long newPosition)
                                                    throws java.io.IOException

  Specified by:
    `position` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### read

    public abstract int read(java.nio.ByteBuffer dst)
                      throws java.io.IOException

  Specified by:
    `read` in interface `java.nio.channels.ReadableByteChannel`
  Specified by:
    `read` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### write

    public abstract int write(java.nio.ByteBuffer src)
                       throws java.io.IOException

  Specified by:
    `write` in interface `java.nio.channels.WritableByteChannel`
  Specified by:
    `write` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### read

    public int read(java.nio.ByteBuffer dst,
                    long position)
             throws java.io.IOException

  Specified by:
    `read` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### write

    public int write(java.nio.ByteBuffer src,
                     long position)
              throws java.io.IOException

  Specified by:
    `write` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### truncate

    public abstract java.nio.channels.FileChannel truncate(long size)
                                                    throws java.io.IOException

  Specified by:
    `truncate` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### force

    public void force(boolean metaData)
               throws java.io.IOException

  Specified by:
    `force` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### implCloseChannel

    protected void implCloseChannel()
                             throws java.io.IOException

  Specified by:
    `implCloseChannel` in class `java.nio.channels.spi.AbstractInterruptibleChannel`
  Throws:
    `java.io.IOException`

### lock

    public java.nio.channels.FileLock lock(long position,
                                           long size,
                                           boolean shared)
                                    throws java.io.IOException

  Specified by:
    `lock` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### map

    public java.nio.MappedByteBuffer map(java.nio.channels.FileChannel.MapMode mode,
                                         long position,
                                         long size)
                                  throws java.io.IOException

  Specified by:
    `map` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### read

    public long read(java.nio.ByteBuffer[] dsts,
                     int offset,
                     int length)
              throws java.io.IOException

  Specified by:
    `read` in interface `java.nio.channels.ScatteringByteChannel`
  Specified by:
    `read` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### transferFrom

    public long transferFrom(java.nio.channels.ReadableByteChannel src,
                             long position,
                             long count)
                      throws java.io.IOException

  Specified by:
    `transferFrom` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### transferTo

    public long transferTo(long position,
                           long count,
                           java.nio.channels.WritableByteChannel target)
                    throws java.io.IOException

  Specified by:
    `transferTo` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### tryLock

    public java.nio.channels.FileLock tryLock(long position,
                                              long size,
                                              boolean shared)
                                       throws java.io.IOException

  Specified by:
    `tryLock` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`

### write

    public long write(java.nio.ByteBuffer[] srcs,
                      int offset,
                      int length)
               throws java.io.IOException

  Specified by:
    `write` in interface `java.nio.channels.GatheringByteChannel`
  Specified by:
    `write` in class `java.nio.channels.FileChannel`
  Throws:
    `java.io.IOException`