|
|||||||||
上一个类 下一个类 | 框架 无框架 | ||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object org.jboss.netty.buffer.ChannelBuffers
public class ChannelBuffers
使用分配新空间或包装、拷贝已存在的字节数组、字节缓冲和字符串来创建一个新的ChannelBuffer
.
import static org.jboss.netty.buffer.ChannelBuffers
.*;ChannelBuffer
heapBuffer = buffer(128);ChannelBuffer
directBuffer = directBuffer(256);ChannelBuffer
dynamicBuffer = dynamicBuffer(512);ChannelBuffer
wrappedBuffer = wrappedBuffer(new byte[128], new byte[256]);ChannelBuffer
copiedBuffe r = copiedBuffer(ByteBuffer
.allocate(128));
buffer(int)
分配一个新的固定capacity的堆缓冲.directBuffer(int)
分配一个新的固定capacity的直接缓冲.dynamicBuffer(int)
分配一个新的capacity会根据写操作的需要动态增加的动态capacity的堆缓冲.wrappedBuffer()
. 如果你想创建一个由多个数组组合而成的缓冲,你可以使用一些可以接受可变参数的方法创建已减少内存拷贝的数量.
copiedBuffer()
.可以很方便的使用这个操作合并多个缓冲.
字段摘要 | |
---|---|
static java.nio.ByteOrder |
BIG_ENDIAN
Big endian字节序. |
static ChannelBuffer |
EMPTY_BUFFER
容量为0的缓冲. |
static java.nio.ByteOrder |
LITTLE_ENDIAN
Little endian 字节序. |
方法摘要 | |
---|---|
static ChannelBuffer |
buffer(java.nio.ByteOrder endianness,
int capacity)
使用指定的字节序和容量创建一个java堆缓冲.该缓冲的readerIndex和writerIndex皆为0. |
static ChannelBuffer |
buffer(int capacity)
使用指定的容量创建一个big-endian的java堆缓冲.该缓冲的readerIndex和writerIndex皆为0. |
static int |
compare(ChannelBuffer bufferA,
ChannelBuffer bufferB)
比较两个指定的缓冲,如 ChannelBuffer.compareTo(ChannelBuffer)
所描述,该方法在实现一个新的缓冲类型时很有用. |
static ChannelBuffer |
copiedBuffer(byte[]... arrays)
合并拷贝一个指定数组的内容创建一个新的big-endian缓冲.该缓冲的readerIndex和writerIndex分别为0和所有数组的长度(= length)之和. |
static ChannelBuffer |
copiedBuffer(byte[] array)
拷贝一个指定数组的内容创建一个新的big-endian缓冲.该缓冲的readerIndex和writerIndex分别为0、array. |
static ChannelBuffer |
copiedBuffer(byte[] array,
int offset,
int length)
拷贝一个指定数组子部分的内容创建一个big-endian缓冲.该缓冲的readerIndex和writerIndex分别为0和指定的length. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteBuffer... buffers)
合并拷贝一个指定缓冲数组的切片创建一个新的缓冲.该缓冲的readerIndex和writerIndex分别为0和所有缓冲的可读字节(= remaining)之和. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteBuffer buffer)
拷贝一个指定缓冲当前切片创建一个缓冲.该缓冲的readerIndex和writerIndex分别为0和buffer.remaining. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteOrder endianness,
byte[]... arrays)
合并拷贝一个指定数组的内容创建一个指定字节序缓冲.该缓冲的readerIndex和writerIndex分别为0和所有数组的长度(= length)之和. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteOrder endianness,
byte[] array)
拷贝一个指定数组的内容创建一个指定字节序的缓冲.该缓冲的readerIndex和writerIndex分别为0、array.length. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteOrder endianness,
byte[] array,
int offset,
int length)
拷贝一个指定数组子部分的内容建一个指定字节序 的缓冲.该缓冲的readerIndex和writerIndex分别为0和指定的length. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteOrder endianness,
char[] array,
java.nio.charset.Charset charset)
使用指定字符集编码的数组内容创建一个指定字节序的缓冲. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteOrder endianness,
char[] array,
int offset,
int length,
java.nio.charset.Charset charset)
使用指定字符集编码的数组子部分内容创建一个指定字节序的缓冲. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteOrder endianness,
java.lang.CharSequence string,
java.nio.charset.Charset charset)
使用指定字符集编码的字符串内容创建一个指定字节序的缓冲. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteOrder endianness,
java.lang.CharSequence string,
int offset,
int length,
java.nio.charset.Charset charset)
使用指定字符集编码的字符串子部分内容创建一个指定字节序的缓冲. |
static ChannelBuffer |
copiedBuffer(java.nio.ByteOrder endianness,
java.lang.String string,
java.lang.String charsetName)
已过时。 使用 copiedBuffer(ByteOrder, CharSequence, Charset) 代替. |
static ChannelBuffer |
copiedBuffer(ChannelBuffer... buffers)
合并拷贝一个指定缓冲数组的可读内容创建一个新的缓冲.该缓冲的readerIndex和writerIndex分别为0和所有缓冲的可读字节(= readableBytes)之和. |
static ChannelBuffer |
copiedBuffer(ChannelBuffer buffer)
拷贝一个指定缓冲的可读字节创建一个新的缓冲.该缓冲的readerIndex和writerIndex分别为0和buffer. |
static ChannelBuffer |
copiedBuffer(char[] array,
java.nio.charset.Charset charset)
使用指定字符集编码的字符串内容创建一个big-endian缓冲. |
static ChannelBuffer |
copiedBuffer(char[] array,
int offset,
int length,
java.nio.charset.Charset charset)
使用指定字符集编码的数组的子部分内容创建一个big-endian缓冲. |
static ChannelBuffer |
copiedBuffer(java.lang.CharSequence string,
java.nio.charset.Charset charset)
使用指定字符集编码的字符串内容创建一个新的big-endian缓冲. |
static ChannelBuffer |
copiedBuffer(java.lang.CharSequence string,
int offset,
int length,
java.nio.charset.Charset charset)
使用指定字符集编码的字符串子部分内容创建一个新的big-endian缓冲. |
static ChannelBuffer |
copiedBuffer(java.lang.String string,
java.lang.String charsetName)
已过时。 使用 copiedBuffer(CharSequence, Charset) 代替. |
static ChannelBuffer |
directBuffer(java.nio.ByteOrder endianness,
int capacity)
使用指定的字节序和容量创建一个新的直接缓冲.该缓冲的readerIndex和writerIndex皆为0. |
static ChannelBuffer |
directBuffer(int capacity)
使用指定的容量创建一个big-endian的直接缓冲.该缓冲的readerIndex和writerIndex皆为0. |
static ChannelBuffer |
dynamicBuffer()
创建一个数据长度估计为256个字节的big-endian动态缓冲.该缓冲的readerIndex和writerIndex皆为0. |
static ChannelBuffer |
dynamicBuffer(java.nio.ByteOrder endianness,
int estimatedLength)
使用一个指定估算数据长度和字节序创建一个big-endian动态缓冲.更精确的估算可以减少意外的空间重新分配开销.. |
static ChannelBuffer |
dynamicBuffer(java.nio.ByteOrder endianness,
int estimatedLength,
ChannelBufferFactory factory)
使用一个指定估算数据长度、工厂及字节序创建一个big-endian动态缓冲.更精确的估算可以减少意外的空间重新分配开销.. |
static ChannelBuffer |
dynamicBuffer(ChannelBufferFactory factory)
|
static ChannelBuffer |
dynamicBuffer(int estimatedLength)
使用一个指定估算数据长度创建一个big-endian动态缓冲.更精确的估算可以减少意外的空间重新分配开销.. |
static ChannelBuffer |
dynamicBuffer(int estimatedLength,
ChannelBufferFactory factory)
使用一个指定估算数据长度和工厂创建一个big-endian动态缓冲.更精确的估算可以减少意外的空间重新分配开销.. |
static boolean |
equals(ChannelBuffer bufferA,
ChannelBuffer bufferB)
只有当指定的缓冲相同时如 ChannelBuffer#equals(Object)
所描述才返回true,该方法在实现一个新的缓冲类型时很有用. |
static int |
hashCode(ChannelBuffer buffer)
计算指定缓冲的哈希值,该方法在实现一个新的缓冲类型时很有用. |
static java.lang.String |
hexDump(ChannelBuffer buffer)
返回指定缓冲可读字节的hex dump. |
static java.lang.String |
hexDump(ChannelBuffer buffer,
int fromIndex,
int length)
返回指定缓冲子部分的hex dump. |
static int |
indexOf(ChannelBuffer buffer,
int fromIndex,
int toIndex,
byte value)
ChannelBuffer.indexOf(int, int, byte) 的默认实现,该方法在实现一个新的缓冲类型时很有用. |
static int |
indexOf(ChannelBuffer buffer,
int fromIndex,
int toIndex,
ChannelBufferIndexFinder indexFinder)
ChannelBuffer.indexOf(int, int, ChannelBufferIndexFinder)
的默认实现,该方法在实现一个新的缓冲类型时很有用. |
static int |
swapInt(int value)
切换指定32位整型的字节序 |
static long |
swapLong(long value)
切换指定64位长整型的字节序 |
static int |
swapMedium(int value)
切换指定24位整型的字节序 |
static short |
swapShort(short value)
切换指定16位短整型的字节序 |
static ChannelBuffer |
unmodifiableBuffer(ChannelBuffer buffer)
使用指定的缓冲创建一个不允许任何操作的可读缓冲.该缓冲的readerIndex和writerIndex和指定的缓冲一样 . |
static ChannelBuffer |
wrappedBuffer(byte[]... arrays)
包装指定的数组成一个新的big-endian组合缓冲,并不是拷贝它们.任何对指定数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(byte[] array)
使用指定的数组创建一个big-endian缓冲.任何对指定数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(byte[] array,
int offset,
int length)
包装指定的数组的子部分内容成一个新的big-endian缓冲.任何对指定数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(java.nio.ByteBuffer... buffers)
包装指定的NIO缓冲数组的切片成一个新的big-endian组合缓冲,并不是拷贝它们.任何对指定缓冲数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(java.nio.ByteBuffer buffer)
包装指定NIO缓冲当前的切片成一个新的缓冲.任何对指定数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(java.nio.ByteOrder endianness,
byte[]... arrays)
包装指定的数组成一个新的big-endian组合缓冲,并不是拷贝它们.任何对指定数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(java.nio.ByteOrder endianness,
byte[] array)
使用指定的字节序包装指定数组成一个新的缓冲.任何对指定数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(java.nio.ByteOrder endianness,
byte[] array,
int offset,
int length)
使用指定的字节序包装指定的数组子部分成一个新的缓冲.任何对指定数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(ChannelBuffer... buffers)
包装指定缓冲数组的可读字节成一个新的big-endian组合缓冲,并不是拷贝它们.任何对指定缓冲数组的修改对返回的缓冲都是可见的. |
static ChannelBuffer |
wrappedBuffer(ChannelBuffer buffer)
包装指定缓冲的可读字节成一个新的缓冲.任何对指定数组的修改对返回的缓冲都是可见的. |
从类 java.lang.Object 继承的方法 |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
public static final java.nio.ByteOrder BIG_ENDIAN
public static final java.nio.ByteOrder LITTLE_ENDIAN
public static final ChannelBuffer EMPTY_BUFFER
方法详细信息 |
---|
public static ChannelBuffer buffer(int capacity)
public static ChannelBuffer buffer(java.nio.ByteOrder endianness, int capacity)
public static ChannelBuffer directBuffer(int capacity)
public static ChannelBuffer directBuffer(java.nio.ByteOrder endianness, int capacity)
public static ChannelBuffer dynamicBuffer()
public static ChannelBuffer dynamicBuffer(ChannelBufferFactory factory)
public static ChannelBuffer dynamicBuffer(int estimatedLength)
public static ChannelBuffer dynamicBuffer(java.nio.ByteOrder endianness, int estimatedLength)
public static ChannelBuffer dynamicBuffer(int estimatedLength, ChannelBufferFactory factory)
public static ChannelBuffer dynamicBuffer(java.nio.ByteOrder endianness, int estimatedLength, ChannelBufferFactory factory)
public static ChannelBuffer wrappedBuffer(byte[] array)
public static ChannelBuffer wrappedBuffer(java.nio.ByteOrder endianness, byte[] array)
public static ChannelBuffer wrappedBuffer(byte[] array, int offset, int length)
public static ChannelBuffer wrappedBuffer(java.nio.ByteOrder endianness, byte[] array, int offset, int length)
public static ChannelBuffer wrappedBuffer(java.nio.ByteBuffer buffer)
public static ChannelBuffer wrappedBuffer(ChannelBuffer buffer)
public static ChannelBuffer wrappedBuffer(byte[]... arrays)
public static ChannelBuffer wrappedBuffer(java.nio.ByteOrder endianness, byte[]... arrays)
endianness
- 新缓冲的字节序public static ChannelBuffer wrappedBuffer(ChannelBuffer... buffers)
java.lang.IllegalArgumentException
- 如果指定的缓冲数组的字节序不同则抛出异常public static ChannelBuffer wrappedBuffer(java.nio.ByteBuffer... buffers)
java.lang.IllegalArgumentException
- 如果指定的缓冲数组的字节序不相同时抛出异常public static ChannelBuffer copiedBuffer(byte[] array)
public static ChannelBuffer copiedBuffer(java.nio.ByteOrder endianness, byte[] array)
public static ChannelBuffer copiedBuffer(byte[] array, int offset, int length)
public static ChannelBuffer copiedBuffer(java.nio.ByteOrder endianness, byte[] array, int offset, int length)
public static ChannelBuffer copiedBuffer(java.nio.ByteBuffer buffer)
public static ChannelBuffer copiedBuffer(ChannelBuffer buffer)
public static ChannelBuffer copiedBuffer(byte[]... arrays)
public static ChannelBuffer copiedBuffer(java.nio.ByteOrder endianness, byte[]... arrays)
public static ChannelBuffer copiedBuffer(ChannelBuffer... buffers)
java.lang.IllegalArgumentException
- 如果缓冲数组的字节序不同则抛出异常public static ChannelBuffer copiedBuffer(java.nio.ByteBuffer... buffers)
java.lang.IllegalArgumentException
- 如果缓冲数组的字节序不同则抛出异常public static ChannelBuffer copiedBuffer(java.lang.CharSequence string, java.nio.charset.Charset charset)
public static ChannelBuffer copiedBuffer(java.lang.CharSequence string, int offset, int length, java.nio.charset.Charset charset)
public static ChannelBuffer copiedBuffer(java.nio.ByteOrder endianness, java.lang.CharSequence string, java.nio.charset.Charset charset)
public static ChannelBuffer copiedBuffer(java.nio.ByteOrder endianness, java.lang.CharSequence string, int offset, int length, java.nio.charset.Charset charset)
public static ChannelBuffer copiedBuffer(char[] array, java.nio.charset.Charset charset)
public static ChannelBuffer copiedBuffer(char[] array, int offset, int length, java.nio.charset.Charset charset)
public static ChannelBuffer copiedBuffer(java.nio.ByteOrder endianness, char[] array, java.nio.charset.Charset charset)
public static ChannelBuffer copiedBuffer(java.nio.ByteOrder endianness, char[] array, int offset, int length, java.nio.charset.Charset charset)
@Deprecated public static ChannelBuffer copiedBuffer(java.lang.String string, java.lang.String charsetName)
copiedBuffer(CharSequence, Charset)
代替.
@Deprecated public static ChannelBuffer copiedBuffer(java.nio.ByteOrder endianness, java.lang.String string, java.lang.String charsetName)
copiedBuffer(ByteOrder, CharSequence, Charset)
代替.
public static ChannelBuffer unmodifiableBuffer(ChannelBuffer buffer)
public static java.lang.String hexDump(ChannelBuffer buffer)
public static java.lang.String hexDump(ChannelBuffer buffer, int fromIndex, int length)
public static int hashCode(ChannelBuffer buffer)
public static boolean equals(ChannelBuffer bufferA, ChannelBuffer bufferB)
ChannelBuffer#equals(Object)
所描述才返回true,该方法在实现一个新的缓冲类型时很有用.
public static int compare(ChannelBuffer bufferA, ChannelBuffer bufferB)
ChannelBuffer.compareTo(ChannelBuffer)
所描述,该方法在实现一个新的缓冲类型时很有用.
public static int indexOf(ChannelBuffer buffer, int fromIndex, int toIndex, byte value)
ChannelBuffer.indexOf(int, int, byte)
的默认实现,该方法在实现一个新的缓冲类型时很有用.
public static int indexOf(ChannelBuffer buffer, int fromIndex, int toIndex, ChannelBufferIndexFinder indexFinder)
ChannelBuffer.indexOf(int, int, ChannelBufferIndexFinder)
的默认实现,该方法在实现一个新的缓冲类型时很有用.
public static short swapShort(short value)
public static int swapMedium(int value)
public static int swapInt(int value)
public static long swapLong(long value)
|
|||||||||
上一个类 下一个类 | 框架 无框架 | ||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |