org.jboss.netty.channel

## Class DefaultFileRegion

- java.lang.Object
- - org.jboss.netty.channel.DefaultFileRegion

All Implemented Interfaces:
  FileRegion, ExternalResourceReleasable

    public class DefaultFileRegion
    extends Object
    implements FileRegion

### Constructor Summary

Constructors
Constructor and Description
`DefaultFileRegion(FileChannel file, long position, long count)`
`DefaultFileRegion(FileChannel file, long position, long count, boolean releaseAfterTransfer)`

### Method Summary

Methods
`long` `getCount()` Returns the number of bytes to transfer.
`long` `getPosition()` Returns the offset in the file where the transfer began.
`boolean` `releaseAfterTransfer()`
`void` `releaseExternalResources()` Releases the external resources that this object depends on.
`long` `transferTo(WritableByteChannel target, long position)` Transfers the content of this file region to the specified channel.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### DefaultFileRegion

    public DefaultFileRegion(FileChannel file,
                     long position,
                     long count)

#### DefaultFileRegion

    public DefaultFileRegion(FileChannel file,
                     long position,
                     long count,
                     boolean releaseAfterTransfer)

### Method Detail

#### getPosition

    public long getPosition()

Description copied from interface: `FileRegion`
Returns the offset in the file where the transfer began.

Specified by:
  `getPosition` in interface `FileRegion`

#### getCount

    public long getCount()

Description copied from interface: `FileRegion`
Returns the number of bytes to transfer.

Specified by:
  `getCount` in interface `FileRegion`

#### releaseAfterTransfer

    public boolean releaseAfterTransfer()

#### transferTo

    public long transferTo(WritableByteChannel target,
                  long position)
                    throws IOException

Description copied from interface: `FileRegion`
Transfers the content of this file region to the specified channel.

Specified by:
  `transferTo` in interface `FileRegion`
Parameters:
  `target` - the destination of the transfer
  `position` - the relative offset of the file where the transfer begins from. For example, `0` will make the transfer start from `FileRegion.getPosition()`th byte and ``FileRegion.getCount()` - 1` will make the last byte of the region transferred.
Throws:
  `IOException`

#### releaseExternalResources

    public void releaseExternalResources()

Description copied from interface: `ExternalResourceReleasable`
Releases the external resources that this object depends on. You should not call this method if the external resources (e.g. thread pool) are in use by other objects.

Specified by:
  `releaseExternalResources` in interface `ExternalResourceReleasable`