Closeable, AutoCloseable, SAMMessageSess, SessionMasterSessionclass SAMv3StreamSession extends SAMStreamSession implements Session
SAMStreamSession.DisconnectListener, SAMStreamSession.SAMStreamSessionServer, SAMStreamSession.SAMStreamSessionSocketReader, SAMStreamSession.SAMv1StreamSessionSocketReader, SAMStreamSession.StreamSender_isOwnSession, _log, canCreate, DEFAULT_FORCE_FLUSH, forceFlush, PROP_FORCE_FLUSH, recv, server, SOCKET_HANDLER_BUF_SIZE, socketMgr| Constructor | Description |
|---|---|
SAMv3StreamSession(String login) |
Create a new SAM STREAM session, according to information
registered with the given nickname
Caller MUST call start().
|
SAMv3StreamSession(String login,
Properties props,
SAMv3Handler handler,
I2PSocketManager mgr,
int listenPort) |
Build a Stream Session on an existing I2P session
registered with the given nickname
Caller MUST call start().
|
| Modifier and Type | Method | Description |
|---|---|---|
void |
accept(SAMv3Handler handler,
boolean verbose) |
Accept a single incoming STREAM on the socket stolen from the handler.
|
void |
close() |
Close the stream session
TODO Why do we override?
|
void |
connect(SAMv3Handler handler,
String dest,
Properties props) |
Connect the SAM STREAM session to the specified Destination
for a single connection, using the socket stolen from the handler.
|
static SessionsDB |
getDB() |
|
String |
getNick() |
|
protected I2PServerSocket |
getSocketServer() |
|
boolean |
queueSocket(I2PSocket sock) |
Put a socket on the accept queue.
|
void |
startForwardingIncoming(Properties props,
boolean sendPorts) |
Forward sockets from I2P to the host/port provided.
|
void |
stopForwardingIncoming() |
stop Forwarding Incoming connection coming from I2P
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetDestination, getListenPort, getListenProtocol, sendBytes, sendBytes, startcheckSocketHandlerId, closeConnection, connect, createSocketHandler, getDestination, getListenPort, getListenProtocol, getSocketReader, newSAMStreamSessionSocketReader, newStreamSender, removeSocketHandler, sendBytes, sendBytes, sendBytes, setReceiveLimit, startpublic SAMv3StreamSession(String login) throws IOException, DataFormatException, SAMException
login - The nicknameIOExceptionDataFormatExceptionSAMExceptionNullPointerException - if login nickname is not registeredpublic SAMv3StreamSession(String login, Properties props, SAMv3Handler handler, I2PSocketManager mgr, int listenPort) throws IOException, DataFormatException, SAMException
login - nickname of the sessionIOExceptionDataFormatExceptionSAMExceptionpublic boolean queueSocket(I2PSocket sock)
public static SessionsDB getDB()
public void connect(SAMv3Handler handler, String dest, Properties props) throws I2PException, ConnectException, NoRouteToHostException, DataFormatException, InterruptedIOException, IOException
handler - The handler that communicates with the requesting clientdest - Base64-encoded Destination to connect toprops - Options to be used for connectionDataFormatException - if the destination is not validConnectException - if the destination refuses connectionsNoRouteToHostException - if the destination can't be reachedInterruptedIOException - if the connection timeoutsI2PException - if there's another I2P-related errorIOExceptionpublic void accept(SAMv3Handler handler, boolean verbose) throws I2PException, InterruptedIOException, IOException, SAMException
handler - The handler that communicates with the requesting clientverbose - If true, SAM will send the Base64-encoded peer Destination of an
incoming socket as the first line of data sent to its client
on the handler socketDataFormatException - if the destination is not validConnectException - if the destination refuses connectionsNoRouteToHostException - if the destination can't be reachedInterruptedIOException - if the connection timeoutsI2PException - if there's another I2P-related errorIOExceptionSAMExceptionpublic void startForwardingIncoming(Properties props, boolean sendPorts) throws SAMException, InterruptedIOException
SAMExceptionInterruptedIOExceptionprotected I2PServerSocket getSocketServer()
public void stopForwardingIncoming()
throws SAMException,
InterruptedIOException
SAMExceptionInterruptedIOExceptionpublic void close()
close in interface AutoCloseableclose in interface Closeableclose in interface SAMMessageSessclose in class SAMStreamSession