## org.apache.tools.ant.taskdefs.optional.ssh
Class Scp

    java.lang.Object
      |
      +--org.apache.tools.ant.ProjectComponent
            |
            +--org.apache.tools.ant.Task
                  |
                  +--org.apache.tools.ant.taskdefs.optional.ssh.SSHBase
                        |
                        +--org.apache.tools.ant.taskdefs.optional.ssh.Scp

All Implemented Interfaces:
  LogListener

public class Scp
extends SSHBase

Ant task for sending files to remote machine over ssh/scp.

Since:
  Ant 1.6

Field Summary

Fields inherited from class org.apache.tools.ant.Task
`description, location, target, taskName, taskType, wrapper`

Fields inherited from class org.apache.tools.ant.ProjectComponent
`project`

Constructor Summary
`Scp()`

Method Summary
`void` `addFileset(FileSet set)` Adds a FileSet tranfer to remote host.
`void` `execute()` Called by the project to let the task do its work.
`void` `init()` Called by the project to let the task initialize properly.
`void` `setFile(java.lang.String aFromUri)` Sets the file to be transferred.
`void` `setLocalFile(java.lang.String aFromUri)` Similiar to `setFile` but explicitly states that the file is a local file.
`void` `setLocalTodir(java.lang.String aToUri)` Similiar to `setTodir` but explicitly states that the directory is a local.
`void` `setLocalTofile(java.lang.String aToUri)` Changes the file name to the given name while receiving it, only useful if receiving a single file.
`void` `setRemoteFile(java.lang.String aFromUri)` Similiar to `setFile` but explicitly states that the file is a remote file.
`void` `setRemoteTodir(java.lang.String aToUri)` Similiar to `setTodir` but explicitly states that the directory is a remote.
`void` `setRemoteTofile(java.lang.String aToUri)` Changes the file name to the given name while sending it, only useful if sending a single file.
`void` `setTodir(java.lang.String aToUri)` Sets the location where files will be transferred to.

Methods inherited from class org.apache.tools.ant.taskdefs.optional.ssh.SSHBase
`getFailonerror, getHost, getPort, getUserInfo, getVerbose, openSession, setFailonerror, setHost, setKeyfile, setKnownhosts, setPassphrase, setPassword, setPort, setTrust, setUsername, setVerbose`

Methods inherited from class org.apache.tools.ant.Task
`getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

Methods inherited from class org.apache.tools.ant.ProjectComponent
`getProject, setProject`

Methods inherited from class java.lang.Object
`clone, 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

### Scp

    public Scp()

Method Detail

### setFile

    public void setFile(java.lang.String aFromUri)

  Sets the file to be transferred. This can either be a remote file or a local file. Remote files take the form:
  user:password@host:/directory/path/file.example
  Files to transfer can also include a wildcard to include all files in a remote directory. For example:
  user:password@host:/directory/path/*

  Parameters:
    `aFromUri` - a string representing the file to transfer.

### setTodir

    public void setTodir(java.lang.String aToUri)

  Sets the location where files will be transferred to. This can either be a remote directory or a local directory. Remote directories take the form of:
  user:password@host:/directory/path/
  This parameter is required.

  Parameters:
    `aToUri` - a string representing the target of the copy.

### setLocalFile

    public void setLocalFile(java.lang.String aFromUri)

  Similiar to `setFile` but explicitly states that the file is a local file. This is the only way to specify a local file with a @ character.

  Since:
    Ant 1.6.2

### setRemoteFile

    public void setRemoteFile(java.lang.String aFromUri)

  Similiar to `setFile` but explicitly states that the file is a remote file.

  Since:
    Ant 1.6.2

### setLocalTodir

    public void setLocalTodir(java.lang.String aToUri)

  Similiar to `setTodir` but explicitly states that the directory is a local. This is the only way to specify a local directory with a @ character.

  Since:
    Ant 1.6.2

### setRemoteTodir

    public void setRemoteTodir(java.lang.String aToUri)

  Similiar to `setTodir` but explicitly states that the directory is a remote.

  Since:
    Ant 1.6.2

### setLocalTofile

    public void setLocalTofile(java.lang.String aToUri)

  Changes the file name to the given name while receiving it, only useful if receiving a single file.

  Since:
    Ant 1.6.2

### setRemoteTofile

    public void setRemoteTofile(java.lang.String aToUri)

  Changes the file name to the given name while sending it, only useful if sending a single file.

  Since:
    Ant 1.6.2

### addFileset

    public void addFileset(FileSet set)

  Adds a FileSet tranfer to remote host. NOTE: Either addFileSet() or setFile() are required. But, not both.

  Parameters:
    `set` - FileSet to send to remote host.

### init

    public void init()
              throws BuildException

  Description copied from class: `Task`
  Called by the project to let the task initialize properly. The default implementation is a no-op.

  Overrides:
    `init` in class `SSHBase`
  Throws:
    `BuildException` - if something goes wrong with the build

### execute

    public void execute()
                 throws BuildException

  Description copied from class: `Task`
  Called by the project to let the task do its work. This method may be called more than once, if the task is invoked more than once. For example, if target1 and target2 both depend on target3, then running "ant target1 target2" will run all tasks in target3 twice.

  Overrides:
    `execute` in class `Task`
  Throws:
    `BuildException` - if something goes wrong with the build

Copyright © 2000-2004 Apache Software Foundation. All Rights Reserved.