com.ibm.icu.util
Class ByteArrayWrapper
- Comparable
public class ByteArrayWrapper
implements Comparable
A simple utility class to wrap a byte array.
Generally passed as an argument object into a method. The method takes
responsibility of writing into the internal byte array and increasing its
size when necessary.
byte[] | bytes - Internal byte array.
|
int | size - Size of the internal byte array used.
|
ByteArrayWrapper() - Construct a new ByteArrayWrapper with no data.
|
ByteArrayWrapper(ByteBuffer source) - Construct a new ByteArrayWrapper from the contents of a ByteBuffer.
|
ByteArrayWrapper(byte[] bytesToAdopt, int size) - Construct a new ByteArrayWrapper from a byte array and size
|
ByteArrayWrapper | append(byte[] src, int start, int limit) - Appends the internal byte array from offset size with the
contents of src from offset start to limit.
|
int | compareTo(Object other) - Compare this object to another ByteArrayWrapper, which must not be null.
|
ByteArrayWrapper | ensureCapacity(int capacity) - Ensure that the internal byte array is at least of length capacity.
|
boolean | equals(Object other) - Return true if the bytes in each wrapper are equal.
|
int | hashCode() - Return the hashcode.
|
byte[] | releaseBytes() - Releases the internal byte array to the caller, resets the internal
byte array to null and its size to 0.
|
ByteArrayWrapper | set(byte[] src, int start, int limit) - Set the internal byte array from offset 0 to (limit - start) with the
contents of src from offset start to limit.
|
String | toString() - Returns string value for debugging
|
bytes
public byte[] bytes
Internal byte array.
size
public int size
Size of the internal byte array used.
Different from bytes.length, size will be <= bytes.length.
Semantics of size is similar to java.util.Vector.size().
ByteArrayWrapper
public ByteArrayWrapper()
Construct a new ByteArrayWrapper with no data.
ByteArrayWrapper
public ByteArrayWrapper(ByteBuffer source)
Construct a new ByteArrayWrapper from the contents of a ByteBuffer.
source
- the ByteBuffer from which to get the data.
ByteArrayWrapper
public ByteArrayWrapper(byte[] bytesToAdopt,
int size)
Construct a new ByteArrayWrapper from a byte array and size
bytesToAdopt
- the byte array to adoptsize
- the length of valid data in the byte array
append
public final ByteArrayWrapper append(byte[] src,
int start,
int limit)
Appends the internal byte array from offset size with the
contents of src from offset start to limit. This increases the size of
the internal byte array to (size + limit - start).
src
- source byte array to copy fromstart
- start offset of src to copy fromlimit
- end + 1 offset of src to copy from
compareTo
public int compareTo(Object other)
Compare this object to another ByteArrayWrapper, which must not be null.
other
- the object to compare to.
- a value <0, 0, or >0 as this compares less than, equal to, or
greater than other.
ensureCapacity
public ByteArrayWrapper ensureCapacity(int capacity)
Ensure that the internal byte array is at least of length capacity.
If the byte array is null or its length is less than capacity, a new
byte array of length capacity will be allocated.
The contents of the array (between 0 and size) remain unchanged.
capacity
- minimum length of internal byte array.
equals
public boolean equals(Object other)
Return true if the bytes in each wrapper are equal.
other
- the object to compare to.
- true if the two objects are equal.
hashCode
public int hashCode()
Return the hashcode.
releaseBytes
public final byte[] releaseBytes()
Releases the internal byte array to the caller, resets the internal
byte array to null and its size to 0.
set
public final ByteArrayWrapper set(byte[] src,
int start,
int limit)
Set the internal byte array from offset 0 to (limit - start) with the
contents of src from offset start to limit. If the byte array is null or its length is less than capacity, a new
byte array of length (limit - start) will be allocated.
This resets the size of the internal byte array to (limit - start).
src
- source byte array to copy fromstart
- start offset of src to copy fromlimit
- end + 1 offset of src to copy from
toString
public String toString()
Returns string value for debugging
Copyright (c) 2006 IBM Corporation and others.