net.i2p.data
Class RouterIdentity

java.lang.Object
  extended by net.i2p.data.DataStructureImpl
      extended by net.i2p.data.RouterIdentity
All Implemented Interfaces:
DataStructure

public class RouterIdentity
extends DataStructureImpl

Defines the unique identifier of a router, including any certificate or public key.

Author:
jrandom

Constructor Summary
RouterIdentity()
           
 
Method Summary
 Hash calculateHash()
          Calculate the SHA256 value of this object (useful for a few scenarios)
 boolean equals(java.lang.Object object)
           
 Certificate getCertificate()
           
 Hash getHash()
           
 PublicKey getPublicKey()
           
 SigningPublicKey getSigningPublicKey()
           
 int hashCode()
          the public key has enough randomness in it to use it by itself for speed
 boolean isHidden()
          This router specified that they should not be used as a part of a tunnel, nor queried for the netDb, and that disclosure of their contact information should be limited.
 void readBytes(java.io.InputStream in)
          Load up the current object with data from the given stream.
 void setCertificate(Certificate cert)
           
 void setPublicKey(PublicKey key)
           
 void setSigningPublicKey(SigningPublicKey key)
           
 java.lang.String toString()
           
 void writeBytes(java.io.OutputStream out)
          Write out the data structure to the stream, using the format defined in the I2P data structure specification.
 
Methods inherited from class net.i2p.data.DataStructureImpl
fromBase64, fromByteArray, read, toBase64, toByteArray
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RouterIdentity

public RouterIdentity()
Method Detail

getCertificate

public Certificate getCertificate()

setCertificate

public void setCertificate(Certificate cert)

getPublicKey

public PublicKey getPublicKey()

setPublicKey

public void setPublicKey(PublicKey key)

getSigningPublicKey

public SigningPublicKey getSigningPublicKey()

setSigningPublicKey

public void setSigningPublicKey(SigningPublicKey key)

isHidden

public boolean isHidden()
This router specified that they should not be used as a part of a tunnel, nor queried for the netDb, and that disclosure of their contact information should be limited.


readBytes

public void readBytes(java.io.InputStream in)
               throws DataFormatException,
                      java.io.IOException
Description copied from interface: DataStructure
Load up the current object with data from the given stream. Data loaded this way must match the I2P data structure specification.

Parameters:
in - stream to read from
Throws:
DataFormatException - if the data is improperly formatted
java.io.IOException - if there was a problem reading the stream

writeBytes

public void writeBytes(java.io.OutputStream out)
                throws DataFormatException,
                       java.io.IOException
Description copied from interface: DataStructure
Write out the data structure to the stream, using the format defined in the I2P data structure specification.

Parameters:
out - stream to write to
Throws:
DataFormatException - if the data was incomplete or not yet ready to be written
java.io.IOException - if there was a problem writing to the stream

equals

public boolean equals(java.lang.Object object)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
the public key has enough randomness in it to use it by itself for speed

Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

calculateHash

public Hash calculateHash()
Description copied from interface: DataStructure
Calculate the SHA256 value of this object (useful for a few scenarios)

Specified by:
calculateHash in interface DataStructure
Overrides:
calculateHash in class DataStructureImpl
Returns:
SHA256 hash, or null if there were problems (data format or io errors)

getHash

public Hash getHash()