org.apache.tools.ant.taskdefs.optional.ssh
Class SSHSession

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by org.apache.tools.ant.taskdefs.optional.ssh.SSHBase
              extended by org.apache.tools.ant.taskdefs.optional.ssh.SSHSession
All Implemented Interfaces:
java.lang.Cloneable, LogListener

public class SSHSession
extends SSHBase

Establishes an ssh session with a remote machine, optionally establishing port forwarding, then executes any nested task(s) before closing the session.

Since:
Ant 1.8.0

Nested Class Summary
 class SSHSession.LocalTunnel
           
static class SSHSession.NestedSequential
          The class corresponding to the sequential nested element.
 class SSHSession.RemoteTunnel
           
 
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
SSHSession()
           
 
Method Summary
 void addTask(Task nestedTask)
          Add a nested task to Sequential.
 SSHSession.LocalTunnel createLocalTunnel()
           
 SSHSession.RemoteTunnel createRemoteTunnel()
           
 SSHSession.NestedSequential createSequential()
          This is the sequential nested element of the macrodef.
 void execute()
          Establish the ssh session and execute all nestedTasks
 void setLocaltunnels(java.lang.String tunnels)
          Changes the comma-delimited list of local tunnels to establish on the connection.
 void setRemotetunnels(java.lang.String tunnels)
          Changes the comma-delimited list of remote tunnels to establish on the connection.
 void setTimeout(long timeout)
          The connection can be dropped after a specified number of milliseconds.
 
Methods inherited from class org.apache.tools.ant.taskdefs.optional.ssh.SSHBase
getFailonerror, getHost, getPort, getUserInfo, getVerbose, init, openSession, setFailonerror, setHost, setKeyfile, setKnownhosts, setPassphrase, setPassword, setPort, setTrust, setUsername, setVerbose
 
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, 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 Detail

SSHSession

public SSHSession()
Method Detail

addTask

public void addTask(Task nestedTask)
Add a nested task to Sequential.

Parameters:
nestedTask - Nested task to execute Sequential


setTimeout

public void setTimeout(long timeout)
The connection can be dropped after a specified number of milliseconds. This is sometimes useful when a connection may be flaky. Default is 0, which means "wait forever".

Parameters:
timeout - The new timeout value in seconds

setLocaltunnels

public void setLocaltunnels(java.lang.String tunnels)
Changes the comma-delimited list of local tunnels to establish on the connection.

Parameters:
tunnels - a comma-delimited list of lport:rhost:rport tunnel specifications

setRemotetunnels

public void setRemotetunnels(java.lang.String tunnels)
Changes the comma-delimited list of remote tunnels to establish on the connection.

Parameters:
tunnels - a comma-delimited list of rport:lhost:lport tunnel specifications

execute

public void execute()
             throws BuildException
Establish the ssh session and execute all nestedTasks

Overrides:
execute in class Task
Throws:
BuildException - if one of the nested tasks fails, or network error or bad parameter.

createLocalTunnel

public SSHSession.LocalTunnel createLocalTunnel()

createRemoteTunnel

public SSHSession.RemoteTunnel createRemoteTunnel()

createSequential

public SSHSession.NestedSequential createSequential()
This is the sequential nested element of the macrodef.

Returns:
a sequential element to be configured.