Package com.sshtools.j2ssh.connection
Class Channel
- java.lang.Object
-
- com.sshtools.j2ssh.connection.Channel
-
- Direct Known Subclasses:
BindingChannel,IOChannel,SocketChannel,SubsystemChannel
public abstract class Channel extends java.lang.Object- Version:
- $Revision: 1.74 $
- Author:
- $author$
-
-
Field Summary
Fields Modifier and Type Field Description protected ConnectionProtocolconnectionprotected longlocalChannelIdprotected longlocalPacketSizeprotected ChannelDataWindowlocalWindowprotected longremoteChannelIdprotected longremotePacketSizeprotected ChannelDataWindowremoteWindowprotected ChannelStatestate
-
Constructor Summary
Constructors Constructor Description Channel()Creates a new Channel object.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddEventListener(ChannelEventListener eventListener)voidclose()protected voidfinalizeClose()abstract byte[]getChannelConfirmationData()abstract byte[]getChannelOpenData()abstract java.lang.StringgetChannelType()longgetLocalChannelId()longgetLocalPacketSize()ChannelDataWindowgetLocalWindow()protected abstract intgetMaximumPacketSize()protected abstract intgetMaximumWindowSpace()protected abstract intgetMinimumWindowSpace()java.lang.StringgetName()longgetRemoteChannelId()longgetRemotePacketSize()ChannelDataWindowgetRemoteWindow()ChannelStategetState()protected voidinit(ConnectionProtocol connection, long localChannelId, long senderChannelId, long initialWindowSize, long maximumPacketSize)protected voidinit(ConnectionProtocol connection, long localChannelId, long senderChannelId, long initialWindowSize, long maximumPacketSize, ChannelEventListener eventListener)booleanisClosed()booleanisLocalEOF()booleanisOpen()booleanisRemoteEOF()protected abstract voidonChannelClose()protected abstract voidonChannelData(SshMsgChannelData msg)protected abstract voidonChannelEOF()protected abstract voidonChannelExtData(SshMsgChannelExtendedData msg)protected abstract voidonChannelOpen()protected abstract voidonChannelRequest(java.lang.String requestType, boolean wantReply, byte[] requestData)protected voidopen()protected voidprocessChannelData(SshMsgChannelData msg)protected voidprocessChannelData(SshMsgChannelExtendedData msg)protected voidremoteClose()protected voidsendChannelData(byte[] data)protected voidsendChannelExtData(int type, byte[] data)voidsetLocalEOF()voidsetName(java.lang.String name)protected voidsetRemoteEOF()
-
-
-
Field Detail
-
localWindow
protected ChannelDataWindow localWindow
-
remoteWindow
protected ChannelDataWindow remoteWindow
-
connection
protected ConnectionProtocol connection
-
localChannelId
protected long localChannelId
-
localPacketSize
protected long localPacketSize
-
remoteChannelId
protected long remoteChannelId
-
remotePacketSize
protected long remotePacketSize
-
state
protected ChannelState state
-
-
Method Detail
-
getChannelOpenData
public abstract byte[] getChannelOpenData()
- Returns:
-
getChannelConfirmationData
public abstract byte[] getChannelConfirmationData()
- Returns:
-
getChannelType
public abstract java.lang.String getChannelType()
- Returns:
-
getMinimumWindowSpace
protected abstract int getMinimumWindowSpace()
- Returns:
-
getMaximumWindowSpace
protected abstract int getMaximumWindowSpace()
- Returns:
-
getMaximumPacketSize
protected abstract int getMaximumPacketSize()
- Returns:
-
onChannelData
protected abstract void onChannelData(SshMsgChannelData msg) throws java.io.IOException
- Parameters:
msg-- Throws:
java.io.IOException
-
processChannelData
protected void processChannelData(SshMsgChannelData msg) throws java.io.IOException
- Parameters:
msg-- Throws:
java.io.IOException
-
isClosed
public boolean isClosed()
- Returns:
-
isOpen
public boolean isOpen()
- Returns:
-
sendChannelData
protected void sendChannelData(byte[] data) throws java.io.IOException- Parameters:
data-- Throws:
java.io.IOException
-
sendChannelExtData
protected void sendChannelExtData(int type, byte[] data) throws java.io.IOException- Parameters:
type-data-- Throws:
java.io.IOException
-
onChannelExtData
protected abstract void onChannelExtData(SshMsgChannelExtendedData msg) throws java.io.IOException
- Parameters:
msg-- Throws:
java.io.IOException
-
processChannelData
protected void processChannelData(SshMsgChannelExtendedData msg) throws java.io.IOException
- Parameters:
msg-- Throws:
java.io.IOException
-
getLocalChannelId
public long getLocalChannelId()
- Returns:
-
getLocalPacketSize
public long getLocalPacketSize()
- Returns:
-
getLocalWindow
public ChannelDataWindow getLocalWindow()
- Returns:
-
getRemoteChannelId
public long getRemoteChannelId()
- Returns:
-
getRemotePacketSize
public long getRemotePacketSize()
- Returns:
-
getRemoteWindow
public ChannelDataWindow getRemoteWindow()
- Returns:
-
getState
public ChannelState getState()
- Returns:
-
close
public void close() throws java.io.IOException- Throws:
java.io.IOException
-
remoteClose
protected void remoteClose() throws java.io.IOException- Throws:
java.io.IOException
-
finalizeClose
protected void finalizeClose() throws java.io.IOException- Throws:
java.io.IOException
-
setLocalEOF
public void setLocalEOF() throws java.io.IOException- Throws:
java.io.IOException
-
isLocalEOF
public boolean isLocalEOF()
- Returns:
-
isRemoteEOF
public boolean isRemoteEOF()
- Returns:
-
setRemoteEOF
protected void setRemoteEOF() throws java.io.IOException- Throws:
java.io.IOException
-
addEventListener
public void addEventListener(ChannelEventListener eventListener)
- Parameters:
eventListener-
-
init
protected void init(ConnectionProtocol connection, long localChannelId, long senderChannelId, long initialWindowSize, long maximumPacketSize) throws java.io.IOException
- Parameters:
connection-localChannelId-senderChannelId-initialWindowSize-maximumPacketSize-- Throws:
java.io.IOException
-
open
protected void open() throws java.io.IOException- Throws:
java.io.IOException
-
init
protected void init(ConnectionProtocol connection, long localChannelId, long senderChannelId, long initialWindowSize, long maximumPacketSize, ChannelEventListener eventListener) throws java.io.IOException
- Parameters:
connection-localChannelId-senderChannelId-initialWindowSize-maximumPacketSize-eventListener-- Throws:
java.io.IOException
-
onChannelClose
protected abstract void onChannelClose() throws java.io.IOException- Throws:
java.io.IOException
-
onChannelEOF
protected abstract void onChannelEOF() throws java.io.IOException- Throws:
java.io.IOException
-
onChannelOpen
protected abstract void onChannelOpen() throws java.io.IOException- Throws:
java.io.IOException
-
onChannelRequest
protected abstract void onChannelRequest(java.lang.String requestType, boolean wantReply, byte[] requestData) throws java.io.IOException- Parameters:
requestType-wantReply-requestData-- Throws:
java.io.IOException
-
setName
public void setName(java.lang.String name)
- Parameters:
name-
-
getName
public java.lang.String getName()
- Returns:
-
-