org.ka2ddo.opentrac
Class OpenTracByteArray

java.lang.Object
  extended by org.ka2ddo.opentrac.OpenTracElement
      extended by org.ka2ddo.opentrac.OpenTracByteArray
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
OpenTracMapSymbol

public class OpenTracByteArray
extends OpenTracElement

This class represents any type of OpenTRAC data element that has an array of bytes as its value. It can also be used as a hashmap key.

See Also:
OpenTracMapSymbol, Serialized Form

Field Summary
 
Fields inherited from class org.ka2ddo.opentrac.OpenTracElement
id
 
Constructor Summary
OpenTracByteArray()
          Create an untyped empty OpenTracByteArray element.
OpenTracByteArray(int type, byte[] body, int offset, int length)
          Create an OpenTRAC element with an arbitrary-length byte array value from the next series of bytes in an encoded OpenTRAC message.
 
Method Summary
 int computeBody(byte[] buf, int offset)
          Append this element to a message buffer
 boolean equals(java.lang.Object obj)
          Indicates whether some other object is "equal to" this one.
 boolean equals(OpenTracElement other)
          Test if this OpenTracElement has the same type and value as another OpenTracElement.
 byte[] getByteArray()
           
 int hashCode()
          Returns a hash code value for the object.
 int length()
          Return the number of bytes needed to encode this element.
 java.lang.String toString()
          Returns a string representation of the object.
 java.lang.String valueString()
          Get the string representation of the value of this element.
 
Methods inherited from class org.ka2ddo.opentrac.OpenTracElement
getId
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OpenTracByteArray

public OpenTracByteArray()
Create an untyped empty OpenTracByteArray element.


OpenTracByteArray

public OpenTracByteArray(int type,
                         byte[] body,
                         int offset,
                         int length)
Create an OpenTRAC element with an arbitrary-length byte array value from the next series of bytes in an encoded OpenTRAC message.

Parameters:
type - OpenTRAC element type code
body - byte array containing the encoded OpenTRAC elements
offset - starting index in the array where this element begins
length - remaining number of bytes in the OpenTRAC encoded message
Method Detail

valueString

public java.lang.String valueString()
Get the string representation of the value of this element.

Specified by:
valueString in class OpenTracElement
Returns:
value string

computeBody

public int computeBody(byte[] buf,
                       int offset)
Append this element to a message buffer

Specified by:
computeBody in class OpenTracElement
Parameters:
buf - byte array to add the element to
offset - starting index to store the element
Returns:
index after the end of the stored element

getByteArray

public byte[] getByteArray()

length

public int length()
Return the number of bytes needed to encode this element.

Specified by:
length in class OpenTracElement
Returns:
byte count needed to hold this element

equals

public boolean equals(java.lang.Object obj)
Indicates whether some other object is "equal to" this one.

Overrides:
equals in class java.lang.Object
Parameters:
obj - the reference object with which to compare.
Returns:
true if this object is the same as the obj argument; false otherwise.
See Also:
hashCode()

hashCode

public int hashCode()
Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable.

Overrides:
hashCode in class java.lang.Object
Returns:
a hash code value for this object.
See Also:
Object.equals(Object)

toString

public java.lang.String toString()
Returns a string representation of the object.

Overrides:
toString in class OpenTracElement
Returns:
a string representation of the object.

equals

public boolean equals(OpenTracElement other)
Test if this OpenTracElement has the same type and value as another OpenTracElement.

Specified by:
equals in class OpenTracElement
Parameters:
other - OpenTracElement to compare against this element
Returns:
boolean true if elements are of the same type, class, and value