Package adams.flow.standalone
Class SSHConnection
-
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,SSHSessionProvider
,OptionHandler
,PasswordPrompter
,PasswordSupporter
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,TechnicalInformationHandler
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ErrorHandler
,InteractiveActor
,OptionalPasswordPrompt
,StopModeSupporter
,Serializable
,Comparable
public class SSHConnection extends AbstractStandalone implements TechnicalInformationHandler, OptionalPasswordPrompt, SSHSessionProvider, PasswordPrompter
Provides access to a remote host via SSH.
For more information see:
(2011). JSch - JSch is a pure Java implementation of SSH2..
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING min-user-mode: Expert
-name <java.lang.String> (property: name) The name of the actor. default: SSHConnection
-annotation <adams.core.base.BaseAnnotation> (property: annotations) The annotations to attach to this actor. default:
-skip <boolean> (property: skip) If set to true, transformation is skipped and the input token is just forwarded as it is. default: false
-stop-flow-on-error <boolean> (property: stopFlowOnError) If set to true, the flow execution at this level gets stopped in case this actor encounters an error; the error gets propagated; useful for critical actors. default: false min-user-mode: Expert
-silent <boolean> (property: silent) If enabled, then no errors are output in the console; Note: the enclosing actor handler must have this enabled as well. default: false min-user-mode: Expert
-host <java.lang.String> (property: host) The host (name/IP address) to connect to. default:
-port <int> (property: port) The port to connect to. default: 22 minimum: 1 maximum: 65535
-authentication-type <CREDENTIALS|PUBLIC_KEY> (property: authenticationType) The type of authentication to use. default: CREDENTIALS
-user <java.lang.String> (property: user) The SSH user to use for connecting.
-password <adams.core.base.BasePassword> (property: password) The password of the SSH user to use for connecting.
-private-key-file <adams.core.io.PlaceholderFile> (property: privateKeyFile) The location of the private key. default: ${HOME}/.ssh/id_rsa
-private-key-passphrase <adams.core.base.BasePassword> (property: privateKeyPassphrase) The passphrase for the private key file, ignored if empty.
-known-hosts <adams.core.io.PlaceholderFile> (property: knownHosts) The file storing the known hosts. default: ${HOME}/.ssh/known_hosts
-strict-host-key-checking <boolean> (property: strictHostKeyChecking) Enables/disables strict host key checking - strict checking is the recommended setting, as disabling it is very insecure! default: true
-forward-x <boolean> (property: forwardX) If set to true, then X is forwarded. default: false
-x-host <java.lang.String> (property: XHost) The xhost (name/IP address) to connect to. default:
-x-port <int> (property: XPort) The xport to connect to. default: 6000 minimum: 1 maximum: 65535
-prompt-for-password <boolean> (property: promptForPassword) If enabled, the user gets prompted for enter a password if none has been provided in the setup. default: false
-timeout <int> (property: timeout) The timeout in milliseconds. default: 0 minimum: 0
-stop-if-canceled <boolean> (property: stopFlowIfCanceled) If enabled, the flow gets stopped in case the user cancels the dialog. default: false
-custom-stop-message <java.lang.String> (property: customStopMessage) The custom stop message to use in case a user cancelation stops the flow (default is the full name of the actor) default:
-stop-mode <GLOBAL|STOP_RESTRICTOR> (property: stopMode) The stop mode to use. default: GLOBAL
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected BasePassword
m_ActualPassword
the actual SMTP password to use.protected SSHAuthenticationType
m_AuthenticationType
the type of authentication to use.protected String
m_CustomStopMessage
the custom stop message to use if flow gets stopped due to cancelation.protected boolean
m_ForwardX
whether to forward X11.protected String
m_Host
the SSH host.protected PlaceholderFile
m_KnownHosts
the file with known hosts.protected BasePassword
m_Password
the SSH password to use.protected int
m_Port
the SSH port.protected PlaceholderFile
m_PrivateKeyFile
the location of the private key.protected BasePassword
m_PrivateKeyPassphrase
the passphrase for the private key.protected boolean
m_PromptForPassword
whether to prompt the user for a password if none provided.protected com.jcraft.jsch.Session
m_Session
the SSH session.protected boolean
m_StopFlowIfCanceled
whether to stop the flow if canceled.protected StopMode
m_StopMode
how to perform the stop.protected boolean
m_StrictHostKeyChecking
whether to perform strict host key checking (only disable for testing!! insecure!!).protected int
m_Timeout
the timeout to use (milliseconds).protected String
m_User
the SSH user to use.protected String
m_XHost
the xhost to use.protected int
m_XPort
the xport to use.-
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_ExecutionListeningSupporter, m_FullName, m_LoggingPrefix, m_Name, m_Parent, m_ScopeHandler, m_Self, m_Silent, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
-
Fields inherited from interface adams.flow.core.InteractiveActor
INTERACTION_CANCELED
-
-
Constructor Summary
Constructors Constructor Description SSHConnection()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
authenticationTypeTipText()
Returns the tip text for this property.String
customStopMessageTipText()
Returns the tip text for this property.void
defineOptions()
Adds options to the internal list of options.protected void
disconnect()
Disconnects the SSH session, if necessary.protected String
doExecute()
Executes the flow item.String
doInteract()
Performs the interaction with the user.String
doInteractHeadless()
Performs the interaction with the user in a headless environment.String
forwardXTipText()
Returns the tip text for this property.SSHAuthenticationType
getAuthenticationType()
Returns the type of authentication to use.String
getCustomStopMessage()
Returns the custom message to use when stopping the flow.boolean
getForwardX()
Returns whether X11 is forwarded.String
getHost()
Returns the host to connect to.PlaceholderFile
getKnownHosts()
Returns the file with the known hosts.BasePassword
getPassword()
Returns the SSH password to use.int
getPort()
Returns the port to connect to.PlaceholderFile
getPrivateKeyFile()
Returns the location of the private key file.BasePassword
getPrivateKeyPassphrase()
Returns the passphrase for the private key file, ignored if empty.boolean
getPromptForPassword()
Returns whether to prompt for a password if none currently provided.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.com.jcraft.jsch.Session
getSession()
Returns the SSH session.boolean
getStopFlowIfCanceled()
Returns whether to stop the flow if dialog canceled.StopMode
getStopMode()
Returns the stop mode.boolean
getStrictHostKeyChecking()
Returns whether to perform strict host key checking.TechnicalInformation
getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.int
getTimeout()
Returns the timeout in milliseconds.String
getUser()
Returns the SSH user name to use.String
getXHost()
Returns the xhost to connect to.int
getXPort()
Returns the xport to connect to.String
globalInfo()
Returns a string describing the object.String
hostTipText()
Returns the tip text for this property.String
knownHostsTipText()
Returns the tip text for this property.com.jcraft.jsch.Session
newSession()
Returns a new session for the host/port defined in the options.com.jcraft.jsch.Session
newSession(String host, int port)
Returns a new session for the given host/port.String
passwordTipText()
Returns the tip text for this property.String
portTipText()
Returns the tip text for this property.String
privateKeyFileTipText()
Returns the tip text for this property.String
privateKeyPassphraseTipText()
Returns the tip text for this property.String
promptForPasswordTipText()
Returns the tip text for this property.protected void
reset()
Resets the actor.void
setAuthenticationType(SSHAuthenticationType value)
Sets the type of authentication to use.void
setCustomStopMessage(String value)
Sets the custom message to use when stopping the flow.void
setForwardX(boolean value)
Sets whether to forward X11.void
setHost(String value)
Sets the host to connect to.void
setKnownHosts(PlaceholderFile value)
Sets the file with the known hosts.void
setPassword(BasePassword value)
Sets the SSH password to use.void
setPort(int value)
Sets the port to connect to.void
setPrivateKeyFile(PlaceholderFile value)
Sets the location of the private key file.void
setPrivateKeyPassphrase(BasePassword value)
Sets the passphrase for the private key file, ignored if empty.void
setPromptForPassword(boolean value)
Sets whether to prompt for a password if none currently provided.void
setStopFlowIfCanceled(boolean value)
Sets whether to stop the flow if dialog canceled.void
setStopMode(StopMode value)
Sets the stop mode.void
setStrictHostKeyChecking(boolean value)
Sets whether to perform strict host key checking.void
setTimeout(int value)
Sets the timeout in milliseconds.void
setUser(String value)
Sets the SSH user to use.void
setXHost(String value)
Sets the xhost to connect to.void
setXPort(int value)
Sets the xport to connect to.String
stopFlowIfCanceledTipText()
Returns the tip text for this property.String
stopModeTipText()
Returns the tip text for this property.String
strictHostKeyCheckingTipText()
Returns the tip text for this property.boolean
supportsHeadlessInteraction()
Returns whether headless interaction is supported.String
timeoutTipText()
Returns the tip text for this property.String
userTipText()
Returns the tip text for this property.void
wrapUp()
Cleans up after the execution has finished.String
XHostTipText()
Returns the tip text for this property.String
XPortTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.standalone.AbstractStandalone
preExecute
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, backupState, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, configureLogger, destroy, equals, execute, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, initialize, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, postExecute, pruneBackup, pruneBackup, restoreState, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, destroy, equals, execute, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, stopExecution, stopExecution, toCommandLine, variableChanged
-
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel, setLoggingLevel
-
Methods inherited from interface adams.core.logging.LoggingSupporter
getLogger, isLoggingEnabled
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
-
Methods inherited from interface adams.core.VariablesInspectionHandler
canInspectOptions
-
-
-
-
Field Detail
-
m_Host
protected String m_Host
the SSH host.
-
m_Port
protected int m_Port
the SSH port.
-
m_AuthenticationType
protected SSHAuthenticationType m_AuthenticationType
the type of authentication to use.
-
m_User
protected String m_User
the SSH user to use.
-
m_Password
protected BasePassword m_Password
the SSH password to use.
-
m_PrivateKeyFile
protected PlaceholderFile m_PrivateKeyFile
the location of the private key.
-
m_PrivateKeyPassphrase
protected BasePassword m_PrivateKeyPassphrase
the passphrase for the private key.
-
m_KnownHosts
protected PlaceholderFile m_KnownHosts
the file with known hosts.
-
m_StrictHostKeyChecking
protected boolean m_StrictHostKeyChecking
whether to perform strict host key checking (only disable for testing!! insecure!!).
-
m_ForwardX
protected boolean m_ForwardX
whether to forward X11.
-
m_XHost
protected String m_XHost
the xhost to use.
-
m_XPort
protected int m_XPort
the xport to use.
-
m_ActualPassword
protected BasePassword m_ActualPassword
the actual SMTP password to use.
-
m_PromptForPassword
protected boolean m_PromptForPassword
whether to prompt the user for a password if none provided.
-
m_Timeout
protected int m_Timeout
the timeout to use (milliseconds).
-
m_StopFlowIfCanceled
protected boolean m_StopFlowIfCanceled
whether to stop the flow if canceled.
-
m_CustomStopMessage
protected String m_CustomStopMessage
the custom stop message to use if flow gets stopped due to cancelation.
-
m_StopMode
protected StopMode m_StopMode
how to perform the stop.
-
m_Session
protected transient com.jcraft.jsch.Session m_Session
the SSH session.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
getTechnicalInformation
public TechnicalInformation getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.- Specified by:
getTechnicalInformation
in interfaceTechnicalInformationHandler
- Returns:
- the technical information about this class
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractActor
-
reset
protected void reset()
Resets the actor.- Overrides:
reset
in classAbstractActor
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceActor
- Specified by:
getQuickInfo
in interfaceQuickInfoSupporter
- Overrides:
getQuickInfo
in classAbstractActor
- Returns:
- null if no info available, otherwise short string
-
setHost
public void setHost(String value)
Sets the host to connect to.- Parameters:
value
- the host name/ip
-
getHost
public String getHost()
Returns the host to connect to.- Returns:
- the host name/ip
-
hostTipText
public String hostTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPort
public void setPort(int value)
Sets the port to connect to.- Parameters:
value
- the port
-
getPort
public int getPort()
Returns the port to connect to.- Returns:
- the port
-
portTipText
public String portTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setAuthenticationType
public void setAuthenticationType(SSHAuthenticationType value)
Sets the type of authentication to use.- Parameters:
value
- the type
-
getAuthenticationType
public SSHAuthenticationType getAuthenticationType()
Returns the type of authentication to use.- Returns:
- the type
-
authenticationTypeTipText
public String authenticationTypeTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setUser
public void setUser(String value)
Sets the SSH user to use.- Parameters:
value
- the user name
-
getUser
public String getUser()
Returns the SSH user name to use.- Returns:
- the user name
-
userTipText
public String userTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPassword
public void setPassword(BasePassword value)
Sets the SSH password to use.- Specified by:
setPassword
in interfacePasswordSupporter
- Parameters:
value
- the password
-
getPassword
public BasePassword getPassword()
Returns the SSH password to use.- Specified by:
getPassword
in interfacePasswordSupporter
- Returns:
- the password
-
passwordTipText
public String passwordTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPrivateKeyFile
public void setPrivateKeyFile(PlaceholderFile value)
Sets the location of the private key file.- Parameters:
value
- the key file
-
getPrivateKeyFile
public PlaceholderFile getPrivateKeyFile()
Returns the location of the private key file.- Returns:
- the key file
-
privateKeyFileTipText
public String privateKeyFileTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPrivateKeyPassphrase
public void setPrivateKeyPassphrase(BasePassword value)
Sets the passphrase for the private key file, ignored if empty.- Parameters:
value
- the passphrase
-
getPrivateKeyPassphrase
public BasePassword getPrivateKeyPassphrase()
Returns the passphrase for the private key file, ignored if empty.- Returns:
- the passphrase
-
privateKeyPassphraseTipText
public String privateKeyPassphraseTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setKnownHosts
public void setKnownHosts(PlaceholderFile value)
Sets the file with the known hosts.- Parameters:
value
- the file
-
getKnownHosts
public PlaceholderFile getKnownHosts()
Returns the file with the known hosts.- Returns:
- the file
-
knownHostsTipText
public String knownHostsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setStrictHostKeyChecking
public void setStrictHostKeyChecking(boolean value)
Sets whether to perform strict host key checking. NB: only disabled for testing, as it is very insecure to disable it!- Parameters:
value
- if true then strict checking is on
-
getStrictHostKeyChecking
public boolean getStrictHostKeyChecking()
Returns whether to perform strict host key checking. NB: only disabled for testing, as it is very insecure to disable it!- Returns:
- true if strict checking is on
-
strictHostKeyCheckingTipText
public String strictHostKeyCheckingTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setForwardX
public void setForwardX(boolean value)
Sets whether to forward X11.- Parameters:
value
- if true then X11 is forwarded
-
getForwardX
public boolean getForwardX()
Returns whether X11 is forwarded.- Returns:
- true if X11 is forwarded
-
forwardXTipText
public String forwardXTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setXHost
public void setXHost(String value)
Sets the xhost to connect to.- Parameters:
value
- the host name/ip
-
getXHost
public String getXHost()
Returns the xhost to connect to.- Returns:
- the host name/ip
-
XHostTipText
public String XHostTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setXPort
public void setXPort(int value)
Sets the xport to connect to.- Parameters:
value
- the port
-
getXPort
public int getXPort()
Returns the xport to connect to.- Returns:
- the port
-
XPortTipText
public String XPortTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPromptForPassword
public void setPromptForPassword(boolean value)
Sets whether to prompt for a password if none currently provided.- Specified by:
setPromptForPassword
in interfaceOptionalPasswordPrompt
- Specified by:
setPromptForPassword
in interfacePasswordPrompter
- Parameters:
value
- true if to prompt for a password
-
getPromptForPassword
public boolean getPromptForPassword()
Returns whether to prompt for a password if none currently provided.- Specified by:
getPromptForPassword
in interfaceOptionalPasswordPrompt
- Specified by:
getPromptForPassword
in interfacePasswordPrompter
- Returns:
- true if to prompt for a password
-
promptForPasswordTipText
public String promptForPasswordTipText()
Returns the tip text for this property.- Specified by:
promptForPasswordTipText
in interfaceOptionalPasswordPrompt
- Specified by:
promptForPasswordTipText
in interfacePasswordPrompter
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setTimeout
public void setTimeout(int value)
Sets the timeout in milliseconds.- Parameters:
value
- the timeout
-
getTimeout
public int getTimeout()
Returns the timeout in milliseconds.- Returns:
- the timeout
-
timeoutTipText
public String timeoutTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setStopFlowIfCanceled
public void setStopFlowIfCanceled(boolean value)
Sets whether to stop the flow if dialog canceled.- Specified by:
setStopFlowIfCanceled
in interfaceInteractiveActor
- Parameters:
value
- if true flow gets stopped if dialog canceled
-
getStopFlowIfCanceled
public boolean getStopFlowIfCanceled()
Returns whether to stop the flow if dialog canceled.- Specified by:
getStopFlowIfCanceled
in interfaceInteractiveActor
- Returns:
- true if the flow gets stopped if dialog canceled
-
stopFlowIfCanceledTipText
public String stopFlowIfCanceledTipText()
Returns the tip text for this property.- Specified by:
stopFlowIfCanceledTipText
in interfaceInteractiveActor
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setCustomStopMessage
public void setCustomStopMessage(String value)
Sets the custom message to use when stopping the flow.- Specified by:
setCustomStopMessage
in interfaceInteractiveActor
- Parameters:
value
- the stop message
-
getCustomStopMessage
public String getCustomStopMessage()
Returns the custom message to use when stopping the flow.- Specified by:
getCustomStopMessage
in interfaceInteractiveActor
- Returns:
- the stop message
-
customStopMessageTipText
public String customStopMessageTipText()
Returns the tip text for this property.- Specified by:
customStopMessageTipText
in interfaceInteractiveActor
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setStopMode
public void setStopMode(StopMode value)
Sets the stop mode.- Specified by:
setStopMode
in interfaceStopModeSupporter
- Parameters:
value
- the mode
-
getStopMode
public StopMode getStopMode()
Returns the stop mode.- Specified by:
getStopMode
in interfaceStopModeSupporter
- Returns:
- the mode
-
stopModeTipText
public String stopModeTipText()
Returns the tip text for this property.- Specified by:
stopModeTipText
in interfaceStopModeSupporter
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
doInteract
public String doInteract()
Performs the interaction with the user.- Specified by:
doInteract
in interfaceInteractiveActor
- Returns:
- null if successfully interacted, otherwise error message
-
supportsHeadlessInteraction
public boolean supportsHeadlessInteraction()
Returns whether headless interaction is supported.- Specified by:
supportsHeadlessInteraction
in interfaceInteractiveActor
- Returns:
- true if interaction in headless environment is possible
-
doInteractHeadless
public String doInteractHeadless()
Performs the interaction with the user in a headless environment.- Specified by:
doInteractHeadless
in interfaceInteractiveActor
- Returns:
- null if successfully interacted, otherwise error message
-
getSession
public com.jcraft.jsch.Session getSession()
Returns the SSH session. Attempts to reconnect when necessary or create new session when none present.- Specified by:
getSession
in interfaceSSHSessionProvider
- Returns:
- the SSH session, null if not connected
-
newSession
public com.jcraft.jsch.Session newSession()
Returns a new session for the host/port defined in the options.- Specified by:
newSession
in interfaceSSHSessionProvider
- Returns:
- the session
-
newSession
public com.jcraft.jsch.Session newSession(String host, int port)
Returns a new session for the given host/port.- Specified by:
newSession
in interfaceSSHSessionProvider
- Parameters:
host
- the host to create the session for- Returns:
- the session
-
doExecute
protected String doExecute()
Executes the flow item.- Specified by:
doExecute
in classAbstractActor
- Returns:
- null if ok, otherwise error message
-
disconnect
protected void disconnect()
Disconnects the SSH session, if necessary.
-
wrapUp
public void wrapUp()
Cleans up after the execution has finished.- Specified by:
wrapUp
in interfaceActor
- Overrides:
wrapUp
in classAbstractActor
-
-