Package org.apache.tools.ant.taskdefs.optional.ssh

# Class SSHBase

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.ssh.SSHBase

All Implemented Interfaces:
  `Cloneable`, `LogListener`

Direct Known Subclasses:
  `Scp`, `SSHExec`, `SSHSession`

public abstract class SSHBase extends Task implements LogListener
Base class for Ant tasks using jsch.

Since:
  Ant 1.6

## Field Summary

### Fields inherited from class org.apache.tools.ant.Task

`target, taskName, taskType, wrapper`

### Fields inherited from class org.apache.tools.ant.ProjectComponent

`description, location, project`

## Constructor Summary

Constructors
Constructor
Description
`SSHBase()`
Constructor for SSHBase.

## Method Summary

Modifier and Type
Method
Description
`void`
`addConfiguredAdditionalConfig(Environment.Variable v)`
`boolean`
`getFailonerror()`
Get the failonerror flag.
`String`
`getHost()`
Get the host.
`int`
`getPort()`
Get the port attribute.
`int`
`getServerAliveCountMax()`
Get the serverAliveCountMax value.
`int`
`getServerAliveIntervalSeconds()`
Get the serverAliveIntervalSeconds value in seconds.
`String`
`getSshConfig()`
Get the OpenSSH config file (~/.ssh/config).
`protected SSHUserInfo`
`getUserInfo()`
Get the user information.
`boolean`
`getVerbose()`
Get the verbose flag.
`void`
`init()`
Initialize the task.
`protected void`
`loadSshConfig()`
Load the SSH configuration file.
`protected com.jcraft.jsch.Session`
`openSession()`
Open an ssh session.
`void`
`setFailonerror(boolean failure)`
Set the failonerror flag.
`void`
`setHost(String host)`
Remote host, either DNS name or IP.
`void`
`setKeyfile(String keyfile)`
Sets the keyfile for the user.
`void`
`setKnownhosts(String knownHosts)`
Sets the path to the file that has the identities of all known hosts.
`void`
`setPassphrase(String passphrase)`
Sets the passphrase for the users key.
`void`
`setPassword(String password)`
Sets the password for the user.
`void`
`setPort(int port)`
Changes the port used to connect to the remote host.
`void`
`setServerAliveCountMax(int countMax)`
Set the serverAliveCountMax value.
`void`
`setServerAliveIntervalSeconds(int interval)`
Set the serverAliveIntervalSeconds value in seconds.
`void`
`setSshConfig(String sshConfig)`
Set the OpenSSH config file (~/.ssh/config).
`void`
`setTrust(boolean yesOrNo)`
Setting this to true trusts hosts whose identity is unknown.
`void`
`setUsername(String username)`
Username known to remote host.
`void`
`setVerbose(boolean verbose)`
Set the verbose flag.

### Methods inherited from class org.apache.tools.ant.Task

`bindToOwner, execute, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

### Methods inherited from class org.apache.tools.ant.ProjectComponent

`clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.apache.tools.ant.taskdefs.optional.ssh.LogListener

`log`

## Constructor Details

### SSHBase

public SSHBase()
Constructor for SSHBase.

## Method Details

### setHost

public void setHost(String host)
Remote host, either DNS name or IP.

Parameters:
  `host` - The new host value

### getHost

public String getHost()
Get the host.

Returns:
  the host

### setFailonerror

public void setFailonerror(boolean failure)
Set the failonerror flag. Default is true

Parameters:
  `failure` - if true throw a build exception when a failure occurs, otherwise just log the failure and continue

### getFailonerror

public boolean getFailonerror()
Get the failonerror flag.

Returns:
  the failonerror flag

### setVerbose

public void setVerbose(boolean verbose)
Set the verbose flag.

Parameters:
  `verbose` - if true output more verbose logging
Since:
  Ant 1.6.2

### getVerbose

public boolean getVerbose()
Get the verbose flag.

Returns:
  the verbose flag
Since:
  Ant 1.6.2

### getSshConfig

public String getSshConfig()
Get the OpenSSH config file (~/.ssh/config).

Returns:
  the OpenSSH config file
Since:
  Ant 1.10.8

### setSshConfig

public void setSshConfig(String sshConfig)
Set the OpenSSH config file (~/.ssh/config).

Parameters:
  `sshConfig` - the OpenSSH config file
Since:
  Ant 1.10.8

### setServerAliveCountMax

public void setServerAliveCountMax(int countMax)
Set the serverAliveCountMax value.

Parameters:
  `countMax` - int
Since:
  Ant 1.9.7

### getServerAliveCountMax

public int getServerAliveCountMax()
Get the serverAliveCountMax value.

Returns:
  the serverAliveCountMax value
Since:
  Ant 1.9.7

### setServerAliveIntervalSeconds

public void setServerAliveIntervalSeconds(int interval)
Set the serverAliveIntervalSeconds value in seconds.

Parameters:
  `interval` - int
Since:
  Ant 1.9.7

### getServerAliveIntervalSeconds

public int getServerAliveIntervalSeconds()
Get the serverAliveIntervalSeconds value in seconds.

Returns:
  the serverAliveIntervalSeconds value in seconds
Since:
  Ant 1.9.7

### setUsername

public void setUsername(String username)
Username known to remote host.

Parameters:
  `username` - The new username value

### setPassword

public void setPassword(String password)
Sets the password for the user.

Parameters:
  `password` - The new password value

### setKeyfile

public void setKeyfile(String keyfile)
Sets the keyfile for the user.

Parameters:
  `keyfile` - The new keyfile value

### setPassphrase

public void setPassphrase(String passphrase)
Sets the passphrase for the users key.

Parameters:
  `passphrase` - The new passphrase value

### setKnownhosts

public void setKnownhosts(String knownHosts)
Sets the path to the file that has the identities of all known hosts. This is used by SSH protocol to validate the identity of the host. The default is ${user.home}/.ssh/known_hosts.

Parameters:
  `knownHosts` - a path to the known hosts file.

### setTrust

public void setTrust(boolean yesOrNo)
Setting this to true trusts hosts whose identity is unknown.

Parameters:
  `yesOrNo` - if true trust the identity of unknown hosts.

### setPort

public void setPort(int port)
Changes the port used to connect to the remote host.

Parameters:
  `port` - port number of remote host.

### getPort

public int getPort()
Get the port attribute.

Returns:
  the port

### addConfiguredAdditionalConfig

public void addConfiguredAdditionalConfig(Environment.Variable v)

### init

public void init() throws BuildException
Initialize the task. This initializes the known hosts and sets the default port.

Overrides:
  `init` in class `Task`
Throws:
  `BuildException` - on error

### loadSshConfig

protected void loadSshConfig() throws BuildException
Load the SSH configuration file.

Throws:
  `BuildException` - on error

### openSession

protected com.jcraft.jsch.Session openSession() throws com.jcraft.jsch.JSchException
Open an ssh session.

Returns:
  the opened session
Throws:
  `com.jcraft.jsch.JSchException` - on error

### getUserInfo

protected SSHUserInfo getUserInfo()
Get the user information.

Returns:
  the user information