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 interfaceCommand API.static interfaceShell API.static interfaceSubsystem API.Nested classes/interfaces inherited from interface Channel
Channel.Direct, Channel.ForwardedNested classes/interfaces inherited from interface ErrorNotifiable
ErrorNotifiable.Util -
Method Summary
Modifier and TypeMethodDescriptionvoidAllocates a default PTY.voidallocatePTY(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.voidreqX11Forwarding(String authProto, String authCookie, int screen) Request X11 forwarding.voidSet an environment variable.Request a shell.startSubsystem(String name) Request a subsystem.Methods inherited from interface Channel
close, getAutoExpand, getID, getInputStream, getLocalMaxPacketSize, getLocalWinSize, getLoggerFactory, getOutputStream, getRecipient, getRemoteCharset, getRemoteMaxPacketSize, getRemoteWinSize, getType, isEOF, isOpen, join, join, setAutoExpandMethods inherited from interface ErrorNotifiable
notifyErrorMethods inherited from interface 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.0dimension parameters will be ignored by the server.- Parameters:
term-TERMenvironment 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:
ConnectionExceptionTransportException
-
exec
Execute a remote command.- Parameters:
command-- Returns:
Session.Commandinstance 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.Shellinstance 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.Subsysteminstance which should now be used- Throws:
ConnectionException- if the request failedTransportException- if there was an error sending the request
-