Interface Session
- All Superinterfaces:
AutoCloseable
,Channel
,Closeable
,ErrorNotifiable
,SSHPacketHandler
- All Known Implementing Classes:
SessionChannel
A
session
channel provides for execution of a remote command
, shell
or subsystem
. Before this requests like starting X11 forwarding, setting environment variables, allocating a
PTY etc. can be made.
It is not legal to reuse a session
channel for more than one of command, shell, or subsystem. Once one of
these has been started this instance's API is invalid and that of the specific
targets
returned
should be used.- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interface
Command API.static interface
Shell API.static interface
Subsystem API.Nested classes/interfaces inherited from interface net.schmizz.sshj.connection.channel.Channel
Channel.Direct, Channel.Forwarded
Nested classes/interfaces inherited from interface net.schmizz.sshj.common.ErrorNotifiable
ErrorNotifiable.Util
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Allocates a default PTY.void
allocatePTY
(String term, int cols, int rows, int width, int height, Map<PTYMode, Integer> modes) Allocate a psuedo-terminal for this session.Execute a remote command.void
reqX11Forwarding
(String authProto, String authCookie, int screen) Request X11 forwarding.void
Set an environment variable.Request a shell.startSubsystem
(String name) Request a subsystem.Methods inherited from interface net.schmizz.sshj.connection.channel.Channel
close, getAutoExpand, getID, getInputStream, getLocalMaxPacketSize, getLocalWinSize, getLoggerFactory, getOutputStream, getRecipient, getRemoteCharset, getRemoteMaxPacketSize, getRemoteWinSize, getType, isEOF, isOpen, join, join, setAutoExpand
Methods inherited from interface net.schmizz.sshj.common.ErrorNotifiable
notifyError
Methods inherited from interface net.schmizz.sshj.common.SSHPacketHandler
handle
-
Method Details
-
allocateDefaultPTY
Allocates a default PTY. The default PTY is"vt100"
with the echo modes disabled. -
allocatePTY
void allocatePTY(String term, int cols, int rows, int width, int height, Map<PTYMode, Integer> modes) throws ConnectionException, TransportExceptionAllocate a psuedo-terminal for this session.0
dimension parameters will be ignored by the server.- Parameters:
term
-TERM
environment variable value (e.g.,vt100
)cols
- terminal width, cols (e.g., 80)rows
- terminal height, rows (e.g., 24)width
- terminal width, pixels (e.g., 640)height
- terminal height, pixels (e.g., 480)modes
-- Throws:
ConnectionException
TransportException
-
exec
Execute a remote command.- Parameters:
command
-- Returns:
Session.Command
instance which should now be used- Throws:
ConnectionException
- if the request to execute the command failedTransportException
- if there is an error sending the request
-
reqX11Forwarding
void reqX11Forwarding(String authProto, String authCookie, int screen) throws ConnectionException, TransportException Request X11 forwarding.- Parameters:
authProto
- X11 authentication protocol nameauthCookie
- X11 authentication cookiescreen
- X11 screen number- Throws:
ConnectionException
- if the request failedTransportException
- if there was an error sending the request
-
setEnvVar
Set an environment variable.- Parameters:
name
- name of the variablevalue
- value to set- Throws:
ConnectionException
- if the request failedTransportException
- if there was an error sending the request
-
startShell
Request a shell.- Returns:
Session.Shell
instance which should now be used- Throws:
ConnectionException
- if the request failedTransportException
- if there was an error sending the request
-
startSubsystem
Request a subsystem.- Parameters:
name
- subsystem name- Returns:
Session.Subsystem
instance which should now be used- Throws:
ConnectionException
- if the request failedTransportException
- if there was an error sending the request
-