@file Base FileTransfer class.

Classes extending this class perform file operations on directories not writable by the webserver. To achieve this, the class should connect back to the server using some backend (for example FTP or SSH). To keep security, the password should always be asked from the user and never stored. For safety, all methods operate only inside a "jail", by default the Backdrop root.

Hierarchy

Expanded class hierarchy of FileTransfer

File

core/includes/filetransfer/filetransfer.inc, line 14
Base FileTransfer class.

Members

Contains filters are case sensitive
Name Modifiers Typesort descending Description
FileTransfer::__construct function The constructor for the UpdateConnection class. This method is also called from the classes that extend this class and override this method.
FileTransfer::factory static function Classes that extend this class must override the factory() static method.
FileTransfer::__get function Implementation of the magic __get() method.
FileTransfer::connect abstract public function Connects to the server.
FileTransfer::copyDirectory public final function Copies a directory.
FileTransfer::chmod public final function
FileTransfer::createDirectory public final function Creates a directory.
FileTransfer::removeDirectory public final function Removes a directory.
FileTransfer::copyFile public final function Copies a file.
FileTransfer::removeFile public final function Removes a file.
FileTransfer::checkPath protected final function Checks that the path is inside the jail and throws an exception if not.
FileTransfer::fixRemotePath protected final function Returns a modified path suitable for passing to the server. If a path is a windows path, makes it POSIX compliant by removing the drive letter. If $this->chroot has a value, it is stripped from the path to allow for chroot'd filetransfer systems.
FileTransfer::sanitizePath function Changes backslashes to slashes, also removes a trailing slash.
FileTransfer::copyDirectoryJailed protected function Copies a directory.
FileTransfer::createDirectoryJailed abstract protected function Creates a directory.
FileTransfer::removeDirectoryJailed abstract protected function Removes a directory.
FileTransfer::copyFileJailed abstract protected function Copies a file.
FileTransfer::removeFileJailed abstract protected function Removes a file.
FileTransfer::isDirectory abstract public function Checks if a particular path is a directory
FileTransfer::isFile abstract public function Checks if a particular path is a file (not a directory).
FileTransfer::findChroot function Returns the chroot property for this connection.
FileTransfer::setChroot function Sets the chroot and changes the jail to match the correct path scheme
FileTransfer::getSettingsForm public function Returns a form to collect connection settings credentials.
FileTransfer::$username protected property
FileTransfer::$password protected property
FileTransfer::$hostname protected property
FileTransfer::$port protected property