dw.util
Class Bytes
Object
dw.util.Bytes
A simple immutable class representing an array of bytes, used for working with binary data in a scripting context. Limitation: The size of the resulting byte representation is limited to 10k bytes.
Constants
MAX_BYTES  :  Number = 10240L
The maximum number of bytes that a Bytes object can represent == 10KB
Properties
length  :  Number  (Read Only)
The number of bytes represented by this object.
Constructor Summary
Bytes(string : String)
Construct a Bytes object from the given string using the default encoding.
Bytes(string : String, encoding : String)
Construct a Bytes object from the given string using the given encoding.
Method Summary
byteAt(index : Number) : Number
Returns the value of the byte at position index as an integer.
bytesAt(index : Number, length : Number) : Bytes
Return a new Bytes object containing the subsequence of this object's bytes specified by the index and length parameters.
getLength() : Number
Returns the number of bytes represented by this object.
intAt(index : Number) : Number
Absolute get method for reading a signed integer value (32 bit) in network byte order(= big endian).
reverse() : Bytes
Return a new Bytes object which has the same bytes as this one in reverse order.
shortAt(index : Number) : Number
Absolute get method for reading a signed short value (16 bit) in network byte order(= big endian).
toString() : String
Constructs a new String by decoding this array of bytes using the default encoding.
toString(encoding : String) : String
Constructs a new String by decoding this array of bytes using the specified encoding.
Methods inherited from class Object
Constructor Detail
Bytes
public Bytes(string : String)
Construct a Bytes object from the given string using the default encoding. Convenience for Bytes( string, "UTF-8" ).
Parameters:
string - The string to encode into a Bytes object, must not be null.
Throws:
IllegalArgumentException - If the encoded byte sequence exceeds the maximum number of bytes.

Bytes
public Bytes(string : String, encoding : String)
Construct a Bytes object from the given string using the given encoding. This method always replaces malformed input and unmappable character sequences with encoding defaults.
Parameters:
string - The string to encode into a Bytes object, must not be null.
encoding - The name of a supported encoding, or null in which case the default encoding (UTF-8) is used.
Throws:
IllegalArgumentException - If the named encoding is not supported or if the encoded byte sequence exceeds the maximum number of bytes.

Method Detail
byteAt
byteAt(index : Number) : Number
Returns the value of the byte at position index as an integer. If index is out of range an exception is thrown. The byte is interpreted as signed and so the value returned will always be between -128 and +127.
Parameters:
index - The index of the byte.
Returns:
The byte value at the specified index.
Throws:
IndexOutOfBoundsException - If the index argument is negative or not less than the length of this byte array.

bytesAt
bytesAt(index : Number, length : Number) : Bytes
Return a new Bytes object containing the subsequence of this object's bytes specified by the index and length parameters.
Parameters:
index - The initial index of the range to be copied, inclusive
length - The number of bytes in the range to be copied.
Returns:
a new Bytes object representing a subsequence of this Bytes object.
Throws:
ArrayIndexOutOfBoundsException - If index < 0 or index > getLength() or index + length > getLength()
IllegalArgumentException - If length < 0

getLength
getLength() : Number
Returns the number of bytes represented by this object.
Returns:
The number of bytes.

intAt
intAt(index : Number) : Number
Absolute get method for reading a signed integer value (32 bit) in network byte order(= big endian).
Parameters:
index - The byte index at which to read the number.
Returns:
The read number.
Throws:
IndexOutOfBoundsException - If index is negative or not smaller than the number of bytes minus three.

reverse
reverse() : Bytes
Return a new Bytes object which has the same bytes as this one in reverse order.
Returns:
a new Bytes object representing the reverse of this Bytes object.

shortAt
shortAt(index : Number) : Number
Absolute get method for reading a signed short value (16 bit) in network byte order(= big endian).
Parameters:
index - The byte index at which to read the number.
Returns:
The read number.
Throws:
IndexOutOfBoundsException - If index is negative or not smaller than the number of bytes minus one.

toString
toString() : String
Constructs a new String by decoding this array of bytes using the default encoding. Convenience for toString( "UTF-8" ).
Returns:
A String representing the decoded array of bytes.

toString
toString(encoding : String) : String
Constructs a new String by decoding this array of bytes using the specified encoding.
Parameters:
encoding - The name of a supported encoding.
Returns:
A String representing the decoded array of bytes.
Throws:
IllegalArgumentException - If the named encoding is not supported.