public interface ClientChannel extends Channel, ClientSessionHolder
Modifier and Type | Interface and Description |
---|---|
static class |
ClientChannel.Streaming |
AttributeRepository.AttributeKey<T>
CHANNEL_EXEC, CHANNEL_SHELL, CHANNEL_SUBSYSTEM
EMPTY
NONE
CLOSE_WAIT_TIMEOUT, DEFAULT_CLOSE_WAIT_TIMEOUT
Modifier and Type | Method and Description |
---|---|
IoInputStream |
getAsyncErr() |
IoOutputStream |
getAsyncIn() |
IoInputStream |
getAsyncOut() |
java.util.Set<ClientChannelEvent> |
getChannelState() |
java.lang.String |
getChannelType() |
default ClientSession |
getClientSession() |
java.lang.String |
getExitSignal() |
java.lang.Integer |
getExitStatus() |
java.io.InputStream |
getInvertedErr() |
java.io.OutputStream |
getInvertedIn()
Access to an output stream to send data directly to the remote channel.
|
java.io.InputStream |
getInvertedOut() |
ClientChannel.Streaming |
getStreaming() |
OpenFuture |
open() |
void |
setErr(java.io.OutputStream err) |
void |
setIn(java.io.InputStream in)
Set an input stream that will be read by this channel and forwarded to the remote channel.
|
void |
setOut(java.io.OutputStream out) |
void |
setStreaming(ClientChannel.Streaming streaming) |
static void |
validateCommandExitStatusCode(java.lang.String command,
java.lang.Integer exitStatus)
Makes sure remote command exit status has been provided and it is zero
|
default java.util.Set<ClientChannelEvent> |
waitFor(java.util.Collection<ClientChannelEvent> mask,
java.time.Duration timeout)
Waits until any of the specified events in the mask is signaled
|
java.util.Set<ClientChannelEvent> |
waitFor(java.util.Collection<ClientChannelEvent> mask,
long timeout)
Waits until any of the specified events in the mask is signaled
|
addRequestHandler, addRequestHandlers, getId, getLocalWindow, getRecipient, getRemoteWindow, getRequestHandlers, handleClose, handleData, handleEof, handleExtendedData, handleFailure, handleOpenFailure, handleOpenSuccess, handleRequest, handleSuccess, handleWindowAdjust, init, isEofSignalled, isInitialized, open, removeRequestHandler, removeRequestHandlers, resolveAttribute, resolveAttribute
getSession, getSessionContext
addChannelListener, getChannelListenerProxy, removeChannelListener
getBoolean, getBooleanProperty, getCharset, getInteger, getIntProperty, getLong, getLongProperty, getObject, getParentPropertyResolver, getProperties, getString, getStringProperty
clearAttributes, computeAttributeIfAbsent, removeAttribute, setAttribute
attributeKeys, getAttribute, getAttributesCount, ofAttributesMap, ofKeyValuePair
calculatePadLength, writePacket
getChannelStreamPacketWriterResolver, resolveChannelStreamPacketWriter, resolveChannelStreamPacketWriterResolver, setChannelStreamPacketWriterResolver
addCloseFutureListener, close, close, close, getMaxCloseWaitTime, isClosed, isClosing, isOpen, removeCloseFutureListener
default ClientSession getClientSession()
getClientSession
in interface ClientSessionHolder
ClientSession
usedjava.lang.String getChannelType()
ClientChannel.Streaming getStreaming()
void setStreaming(ClientChannel.Streaming streaming)
IoOutputStream getAsyncIn()
IoInputStream getAsyncOut()
IoInputStream getAsyncErr()
java.io.OutputStream getInvertedIn()
setIn(java.io.InputStream)
method and having the channel polling for data in that stream.java.io.InputStream getInvertedOut()
java.io.InputStream getInvertedErr()
void setIn(java.io.InputStream in)
getInvertedIn()
method instead and
write data directly.in
- an InputStream to be polled and forwardedvoid setOut(java.io.OutputStream out)
void setErr(java.io.OutputStream err)
OpenFuture open() throws java.io.IOException
java.io.IOException
java.util.Set<ClientChannelEvent> getChannelState()
waitFor(Collection, long)
java.util.Set<ClientChannelEvent> waitFor(java.util.Collection<ClientChannelEvent> mask, long timeout)
mask
- The ClientChannelEvent
s masktimeout
- The timeout to wait (msec.) - if non-positive then foreverClientChannelEvent.TIMEOUT
if timeout expired before
the expected event was signaleddefault java.util.Set<ClientChannelEvent> waitFor(java.util.Collection<ClientChannelEvent> mask, java.time.Duration timeout)
mask
- The ClientChannelEvent
s masktimeout
- The timeout to wait - if null then foreverClientChannelEvent.TIMEOUT
if timeout expired before
the expected event was signaledjava.lang.Integer getExitStatus()
null
if not signaledjava.lang.String getExitSignal()
null
if not signaledstatic void validateCommandExitStatusCode(java.lang.String command, java.lang.Integer exitStatus) throws java.rmi.RemoteException
command
- The command string - used only for exception textexitStatus
- The exit status valuejava.rmi.RemoteException
- If exitStatus is null
or non-zero