net.i2p.data
Class SessionTag

java.lang.Object
  extended by net.i2p.data.DataStructureImpl
      extended by net.i2p.data.SimpleDataStructure
          extended by net.i2p.data.SessionTag
All Implemented Interfaces:
Serializable, DataStructure

public class SessionTag
extends SimpleDataStructure

32 bytes, usually of random data. Changed from ByteArray to SimpleDataStructure in 0.8.2.

See Also:
Serialized Form

Field Summary
static int BYTE_LENGTH
           
 
Fields inherited from class net.i2p.data.SimpleDataStructure
_data
 
Constructor Summary
SessionTag()
           
SessionTag(boolean create)
           
SessionTag(byte[] val)
           
 
Method Summary
 int hashCode()
          SessionTags are generated both locally and by peers, in quantity, and are used as keys in several datastructures (see TransientSessionKeyManager), so we use a secure hashCode function.
 int length()
          The legal length of the byte array in this data structure
 void readBytes(InputStream in)
          Sets the data.
 void setData(byte[] data)
          Sets the data.
 
Methods inherited from class net.i2p.data.SimpleDataStructure
calculateHash, equals, fromBase64, fromByteArray, getData, toBase64, toByteArray, toString, writeBytes
 
Methods inherited from class net.i2p.data.DataStructureImpl
read
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

BYTE_LENGTH

public static final int BYTE_LENGTH
See Also:
Constant Field Values
Constructor Detail

SessionTag

public SessionTag()

SessionTag

public SessionTag(boolean create)
Parameters:
create - if true, instantiate the data array and fill it with random data.

SessionTag

public SessionTag(byte[] val)
Method Detail

length

public int length()
Description copied from class: SimpleDataStructure
The legal length of the byte array in this data structure

Specified by:
length in class SimpleDataStructure

setData

public void setData(byte[] data)
Description copied from class: SimpleDataStructure
Sets the data.

Overrides:
setData in class SimpleDataStructure
Parameters:
data - of correct length, or null

readBytes

public void readBytes(InputStream in)
               throws DataFormatException,
                      IOException
Description copied from class: SimpleDataStructure
Sets the data.

Specified by:
readBytes in interface DataStructure
Overrides:
readBytes in class SimpleDataStructure
Parameters:
in - the stream to read
Throws:
DataFormatException - if the data is improperly formatted
IOException - if there was a problem reading the stream

hashCode

public int hashCode()
SessionTags are generated both locally and by peers, in quantity, and are used as keys in several datastructures (see TransientSessionKeyManager), so we use a secure hashCode function.

Overrides:
hashCode in class SimpleDataStructure