public final class ByteChunk extends AbstractChunk
Modifier and Type | Class and Description |
---|---|
static interface |
ByteChunk.ByteInputChannel
Input interface, used when the buffer is empty.
|
static interface |
ByteChunk.ByteOutputChannel
When we need more space we'll either grow the buffer ( up to the limit )
or send it to a channel.
|
Modifier and Type | Field and Description |
---|---|
static java.nio.charset.Charset |
DEFAULT_CHARSET
Default encoding used to convert to strings.
|
ARRAY_MAX_SIZE, end, hasHashCode, isSet, start
Constructor and Description |
---|
ByteChunk()
Creates a new, uninitialized ByteChunk object.
|
ByteChunk(int initial) |
Modifier and Type | Method and Description |
---|---|
void |
allocate(int initial,
int limit) |
void |
append(byte b) |
void |
append(byte[] src,
int off,
int len)
Add data to the buffer.
|
void |
append(ByteChunk src) |
java.lang.Object |
clone() |
static byte[] |
convertToBytes(java.lang.String value)
Convert specified String to a byte array.
|
boolean |
equals(byte[] b2,
int off2,
int len2) |
boolean |
equals(ByteChunk bb) |
boolean |
equals(char[] c2,
int off2,
int len2) |
boolean |
equals(CharChunk cc) |
boolean |
equals(java.lang.Object obj) |
boolean |
equals(java.lang.String s)
Compares the message bytes to the specified String object.
|
boolean |
equalsIgnoreCase(java.lang.String s)
Compares the message bytes to the specified String object.
|
static int |
findByte(byte[] bytes,
int start,
int end,
byte b)
Returns the first instance of the given byte in the byte array between
the specified start and end.
|
static int |
findBytes(byte[] bytes,
int start,
int end,
byte[] b)
Returns the first instance of any of the given bytes in the byte array
between the specified start and end.
|
void |
flushBuffer()
Send the buffer to the sink.
|
byte[] |
getBuffer() |
protected int |
getBufferElement(int index) |
byte[] |
getBytes() |
java.nio.charset.Charset |
getCharset() |
long |
getLong() |
static int |
indexOf(byte[] bytes,
int start,
int end,
char s)
Returns the first instance of the given character in the given byte array
between the specified start and end.
|
int |
indexOf(char c,
int starting)
Returns the first instance of the given character in this ByteChunk
starting at the specified byte.
|
void |
makeSpace(int count)
Make space for len bytes.
|
void |
recycle()
Resets the chunk to an uninitialized state.
|
void |
reset() |
void |
setByteInputChannel(ByteChunk.ByteInputChannel in)
When the buffer is empty, read the data from the input channel.
|
void |
setByteOutputChannel(ByteChunk.ByteOutputChannel out)
When the buffer is full, write the data to the output channel.
|
void |
setBytes(byte[] b,
int off,
int len)
Sets the buffer to the specified subarray of bytes.
|
void |
setCharset(java.nio.charset.Charset charset) |
boolean |
startsWith(java.lang.String s,
int pos)
Returns true if the buffer starts with the specified string when tested
in a case sensitive manner.
|
boolean |
startsWithIgnoreCase(java.lang.String s,
int pos)
Returns true if the buffer starts with the specified string when tested
in a case insensitive manner.
|
int |
substract() |
int |
substract(byte[] dest,
int off,
int len) |
byte |
substractB() |
java.lang.String |
toString() |
java.lang.String |
toStringInternal() |
public static final java.nio.charset.Charset DEFAULT_CHARSET
public ByteChunk()
public ByteChunk(int initial)
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class java.lang.Object
java.lang.CloneNotSupportedException
public void recycle()
AbstractChunk
recycle
in class AbstractChunk
public void reset()
public void allocate(int initial, int limit)
public void setBytes(byte[] b, int off, int len)
b
- the ascii bytesoff
- the start offset of the byteslen
- the length of the bytespublic void setCharset(java.nio.charset.Charset charset)
public java.nio.charset.Charset getCharset()
public byte[] getBytes()
public byte[] getBuffer()
public void setByteInputChannel(ByteChunk.ByteInputChannel in)
in
- The input channelpublic void setByteOutputChannel(ByteChunk.ByteOutputChannel out)
out
- The output channelpublic void append(byte b) throws java.io.IOException
java.io.IOException
public void append(ByteChunk src) throws java.io.IOException
java.io.IOException
public void append(byte[] src, int off, int len) throws java.io.IOException
src
- Bytes arrayoff
- Offsetlen
- Lengthjava.io.IOException
- Writing overflow data to the output channel failedpublic int substract() throws java.io.IOException
java.io.IOException
public byte substractB() throws java.io.IOException
java.io.IOException
public int substract(byte[] dest, int off, int len) throws java.io.IOException
java.io.IOException
public void flushBuffer() throws java.io.IOException
java.io.IOException
- Writing overflow data to the output channel failedpublic void makeSpace(int count)
AbstractChunk.ARRAY_MAX_SIZE
.count
- The sizepublic java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String toStringInternal()
public long getLong()
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public boolean equals(java.lang.String s)
s
- the String to comparetrue
if the comparison succeeded, false
otherwisepublic boolean equalsIgnoreCase(java.lang.String s)
s
- the String to comparetrue
if the comparison succeeded, false
otherwisepublic boolean equals(ByteChunk bb)
public boolean equals(byte[] b2, int off2, int len2)
public boolean equals(CharChunk cc)
public boolean equals(char[] c2, int off2, int len2)
public boolean startsWith(java.lang.String s, int pos)
s
- the stringpos
- The positiontrue
if the start matchespublic boolean startsWithIgnoreCase(java.lang.String s, int pos)
s
- the stringpos
- The positiontrue
if the start matchesprotected int getBufferElement(int index)
getBufferElement
in class AbstractChunk
public int indexOf(char c, int starting)
c
- The characterstarting
- The start positionpublic static int indexOf(byte[] bytes, int start, int end, char s)
bytes
- The array to searchstart
- The point to start searching from in the arrayend
- The point to stop searching in the arrays
- The character to search forpublic static int findByte(byte[] bytes, int start, int end, byte b)
bytes
- The byte array to searchstart
- The point to start searching from in the byte arrayend
- The point to stop searching in the byte arrayb
- The byte to search forpublic static int findBytes(byte[] bytes, int start, int end, byte[] b)
bytes
- The byte array to searchstart
- The point to start searching from in the byte arrayend
- The point to stop searching in the byte arrayb
- The array of bytes to search forpublic static final byte[] convertToBytes(java.lang.String value)
value
- to convert to byte arrayCopyright © 2000-2018 Apache Software Foundation. All Rights Reserved.