Package org.jboss.netty.buffer
Class HeapChannelBufferFactory
- java.lang.Object
-
- org.jboss.netty.buffer.AbstractChannelBufferFactory
-
- org.jboss.netty.buffer.HeapChannelBufferFactory
-
- All Implemented Interfaces:
ChannelBufferFactory
public class HeapChannelBufferFactory extends AbstractChannelBufferFactory
AChannelBufferFactory
which merely allocates a heap buffer with the specified capacity.HeapChannelBufferFactory
should perform very well in most situations because it relies on the JVM garbage collector, which is highly optimized for heap allocation.
-
-
Field Summary
Fields Modifier and Type Field Description private static HeapChannelBufferFactory
INSTANCE_BE
private static HeapChannelBufferFactory
INSTANCE_LE
-
Constructor Summary
Constructors Constructor Description HeapChannelBufferFactory()
Creates a new factory whose defaultByteOrder
isByteOrder.BIG_ENDIAN
.HeapChannelBufferFactory(java.nio.ByteOrder defaultOrder)
Creates a new factory with the specified defaultByteOrder
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ChannelBuffer
getBuffer(java.nio.ByteBuffer nioBuffer)
Returns aChannelBuffer
whose content is equal to the sub-region of the specifiednioBuffer
.ChannelBuffer
getBuffer(java.nio.ByteOrder order, byte[] array, int offset, int length)
Returns aChannelBuffer
whose content is equal to the sub-region of the specifiedarray
.ChannelBuffer
getBuffer(java.nio.ByteOrder order, int capacity)
static ChannelBufferFactory
getInstance()
static ChannelBufferFactory
getInstance(java.nio.ByteOrder endianness)
-
Methods inherited from class org.jboss.netty.buffer.AbstractChannelBufferFactory
getBuffer, getBuffer, getDefaultOrder
-
-
-
-
Field Detail
-
INSTANCE_BE
private static final HeapChannelBufferFactory INSTANCE_BE
-
INSTANCE_LE
private static final HeapChannelBufferFactory INSTANCE_LE
-
-
Constructor Detail
-
HeapChannelBufferFactory
public HeapChannelBufferFactory()
Creates a new factory whose defaultByteOrder
isByteOrder.BIG_ENDIAN
.
-
HeapChannelBufferFactory
public HeapChannelBufferFactory(java.nio.ByteOrder defaultOrder)
Creates a new factory with the specified defaultByteOrder
.- Parameters:
defaultOrder
- the defaultByteOrder
of this factory
-
-
Method Detail
-
getInstance
public static ChannelBufferFactory getInstance()
-
getInstance
public static ChannelBufferFactory getInstance(java.nio.ByteOrder endianness)
-
getBuffer
public ChannelBuffer getBuffer(java.nio.ByteOrder order, int capacity)
Description copied from interface:ChannelBufferFactory
- Parameters:
order
- the endianness of the returnedChannelBuffer
capacity
- the capacity of the returnedChannelBuffer
- Returns:
- a
ChannelBuffer
with the specifiedendianness
andcapacity
, whosereaderIndex
andwriterIndex
are0
-
getBuffer
public ChannelBuffer getBuffer(java.nio.ByteOrder order, byte[] array, int offset, int length)
Description copied from interface:ChannelBufferFactory
Returns aChannelBuffer
whose content is equal to the sub-region of the specifiedarray
. Depending on the factory implementation, the returned buffer could wrap thearray
or create a new copy of thearray
.- Parameters:
order
- the endianness of the returnedChannelBuffer
array
- the byte arrayoffset
- the offset of the byte arraylength
- the length of the byte array- Returns:
- a
ChannelBuffer
with the specified content, whosereaderIndex
andwriterIndex
are0
and(length - offset)
respectively
-
getBuffer
public ChannelBuffer getBuffer(java.nio.ByteBuffer nioBuffer)
Description copied from interface:ChannelBufferFactory
Returns aChannelBuffer
whose content is equal to the sub-region of the specifiednioBuffer
. Depending on the factory implementation, the returned buffer could wrap thenioBuffer
or create a new copy of thenioBuffer
.- Parameters:
nioBuffer
- the NIOByteBuffer
- Returns:
- a
ChannelBuffer
with the specified content, whosereaderIndex
andwriterIndex
are0
andnioBuffer.remaining()
respectively
-
-