net.i2p.sam
Class SAMRawSession

java.lang.Object
  extended by net.i2p.sam.SAMMessageSession
      extended by net.i2p.sam.SAMRawSession
All Implemented Interfaces:
Closeable
Direct Known Subclasses:
SAMv3RawSession

 class SAMRawSession
extends SAMMessageSession

SAM RAW session class.

Author:
human

Nested Class Summary
 
Nested classes/interfaces inherited from class net.i2p.sam.SAMMessageSession
SAMMessageSession.SAMMessageSessionHandler
 
Field Summary
static int RAW_SIZE_MAX
           
protected  SAMRawReceiver recv
           
 
Fields inherited from class net.i2p.sam.SAMMessageSession
_log
 
Constructor Summary
SAMRawSession(InputStream destStream, Properties props, SAMRawReceiver recv)
          Create a new SAM RAW session.
SAMRawSession(String dest, Properties props, SAMRawReceiver recv)
          Create a new SAM RAW session.
 
Method Summary
protected  void messageReceived(byte[] msg)
          Handle a new received message
 boolean sendBytes(String dest, byte[] data)
          Send bytes through a SAM RAW session.
protected  void shutDown()
          Do whatever is needed to shutdown the SAM session
 
Methods inherited from class net.i2p.sam.SAMMessageSession
close, getDestination, getI2PSession, sendBytesThroughMessageSession
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RAW_SIZE_MAX

public static final int RAW_SIZE_MAX
See Also:
Constant Field Values

recv

protected SAMRawReceiver recv
Constructor Detail

SAMRawSession

public SAMRawSession(String dest,
                     Properties props,
                     SAMRawReceiver recv)
              throws IOException,
                     DataFormatException,
                     I2PSessionException
Create a new SAM RAW session.

Parameters:
dest - Base64-encoded destination and private keys (same format as PrivateKeyFile)
props - Properties to setup the I2P session
recv - Object that will receive incoming data
Throws:
IOException
DataFormatException
I2PSessionException

SAMRawSession

public SAMRawSession(InputStream destStream,
                     Properties props,
                     SAMRawReceiver recv)
              throws IOException,
                     DataFormatException,
                     I2PSessionException
Create a new SAM RAW session.

Parameters:
destStream - Input stream containing the destination and private keys (same format as PrivateKeyFile)
props - Properties to setup the I2P session
recv - Object that will receive incoming data
Throws:
IOException
DataFormatException
I2PSessionException
Method Detail

sendBytes

public boolean sendBytes(String dest,
                         byte[] data)
                  throws DataFormatException,
                         I2PSessionException
Send bytes through a SAM RAW session.

Specified by:
sendBytes in class SAMMessageSession
Parameters:
data - Bytes to be sent
dest - Destination
Returns:
True if the data was sent, false otherwise
Throws:
DataFormatException - on unknown / bad dest
I2PSessionException - on serious error, probably session closed

messageReceived

protected void messageReceived(byte[] msg)
Description copied from class: SAMMessageSession
Handle a new received message

Specified by:
messageReceived in class SAMMessageSession
Parameters:
msg - Message payload

shutDown

protected void shutDown()
Description copied from class: SAMMessageSession
Do whatever is needed to shutdown the SAM session

Specified by:
shutDown in class SAMMessageSession