class TransferSet extends Node

TransferSet

Über den PublishOverSSH-Builder können Dateien per SCP an einen anderen Server übertragen werden oder es können Befehle über SSH ausgeführt werden. Für diese Funktion muss das Publish-Over-SSH Plugin installiert sein. Für ein Beispiel siehe die Klasse PublishOverSSH

Methods

boolean
equals(Alvine $object)

equals

from Node
setAndReplaceConfigNode(string $name, mixed $value)

setAndReplaceConfigNode

from Node
addOrReplaceConfigNode(Node $node)

addOrReplaceConfigNode

from Node
static object
getInstanceFromProperties(Properties $properties)

Objekt aus Eigenschaft erstellen

__construct(Directory $remote, string $source = '**/*')

Neues Objekt

setExcludes(array $excludes)

Ausschlüsse

setSourcePrefix(string $prefix)

Prefix

setRemoteDirectorySDF(boolean $mode)

RemoteDirectorySDF

setFlatten(boolean $mode)

Flatten

setCleanRemote(boolean $mode)

setCleanRemote

setDefaultExcludes(boolean $mode)

setDefaultExcludes

setMakeEmptyDirs(boolean $mode)

makeEmptyDirs

setExecTimeout(integer $seconds)

execTimeout

setUsePty(boolean $mode)

usePty

setExecCommand(string $command)

SSH Befehl

Details

in Node at line 47
boolean equals(Alvine $object)

equals

Prüft ob diese Node identisch mit der übergebenen Node ist. Da bei der Konfiguration der Tag wichtig ist, wird nur der Tag verglichen.

Parameters

Alvine $object Vergleichsnode

Return Value

boolean Ergebnis

in Node at line 86
protected Node setAndReplaceConfigNode(string $name, mixed $value)

setAndReplaceConfigNode

Diese Methode setzt eine neue Node, bzw. ersetzt diese falls der Tag bereits vorhanden ist.

<node>
  <childA>a</childA>
  <childB>b</childB>
</node>

Mit dem Aufruf von Node::setAndReplaceConfigNode() wird die Node childB ausgetauscht

$this->setAndReplaceConfigNode('childA','new');

ergibt

<node>
  <childA>a</childA>
  <childB>new</childB>
</node>

Parameters

string $name Tag
mixed $value Wert

Return Value

Node

in Node at line 110
protected Node addOrReplaceConfigNode(Node $node)

addOrReplaceConfigNode

Fügt neue Node hinzu, oder ersetzt diese falls der Tag bereits vorkommt.

Parameters

Node $node Neue Node

Return Value

Node

at line 263
static object getInstanceFromProperties(Properties $properties)

Objekt aus Eigenschaft erstellen

Erstellt ein neues Objekt und initialisiert Werte aus einer Eigenschaftsklasse

Die Methode erwatrtet die Eigenschaft local, remote, execcommand, usepty, exectimeout, makeemptydirs, defaultexcludes, cleanremote, flatten, remotedirectorysdf, sourceprefix, excludes

Parameters

Properties $properties Eigenschaften

Return Value

object Neues Objekt

at line 61
__construct(Directory $remote, string $source = '**/*')

Neues Objekt

Über die Zeichenkette $source können die Daten, die übertragen werden sollen, definiert werden. Das Schema für diese Zeichenkette richtet sich nach der Ant-Fileset Spezifikation. So spiezifiziert ** /.php alle PHP-Dateien und ** /xyz/ alle Dateinen im Verzeichnis xyz im Workspace.

Parameters

Directory $remote Zielverzeichnis auf dem Host
string $source Quelldateien

at line 85
PublishOverSSH setExcludes(array $excludes)

Ausschlüsse

Über diese Methode können mehrere Zeichenketten definiert werden, die Dateien definieren die nicht übertragen werden sollen. So können über ['** /.log','** /.tmp'] Log und temporäre Dateien ausgeschlossen werden.

Parameters

array $excludes Ausschlüsse

Return Value

PublishOverSSH

at line 105
PublishOverSSH setSourcePrefix(string $prefix)

Prefix

Über diese Methode kann ein Prefix definiert werden, der beim Übertragen von der Quelldatei verworfen wird. Will man zum Beispiel Quelldatei die im Verzeichnis /assets/images liegen in das Verzeichnis /images speichern, so kann man den Prefix assets/ angeben. Der Prefix muss ein Bestandteil des Source sein.

Parameters

string $prefix Prefix

Return Value

PublishOverSSH

at line 124
PublishOverSSH setRemoteDirectorySDF(boolean $mode)

RemoteDirectorySDF

Bei dieser Option werden bestimmte Buchstaben im Dateinamen durch das Datum ersetzt. So wird aus 'qa-approved/'yyyyMMddHHmmss die Datei qa-approved/20111107154555. Die Bestandteile die nicht ersetzt werden sollen, müssen in Hochkommas stehen.

Parameters

boolean $mode Modus

Return Value

PublishOverSSH

at line 141
PublishOverSSH setFlatten(boolean $mode)

Flatten

Bei dieser Option werden keine Verzeichnisse angelegt, sondern alle Datein in das betreffende Zielverzeichnis geschrieben.

Parameters

boolean $mode Modus

Return Value

PublishOverSSH

at line 158
PublishOverSSH setCleanRemote(boolean $mode)

setCleanRemote

Bei dieser Option werden alle Dateien im Zielverzeichnis gelöscht, bevor die neuen Dateien übertragen werden.

Parameters

boolean $mode Modus

Return Value

PublishOverSSH

at line 182
PublishOverSSH setDefaultExcludes(boolean $mode)

setDefaultExcludes

Die Java-Klasse DirectoryScanner besitzt einen Filter, der bestimmte Dateien ausschliesst. Mit dieser Option kann das Verhalten gesteuert werden. Defaultausschlüsse sind zum Beispiel Dateien der Versionsverwaltungssysteme wie GIT, SVN oder CVS.

Der Konfigurationswert heisst noDefaultExcludes. True, bzw. false steuert das entsprechende Verhalten.

Parameters

boolean $mode Modus

Return Value

PublishOverSSH

at line 200
PublishOverSSH setMakeEmptyDirs(boolean $mode)

makeEmptyDirs

Im Regelfall werden nur Verzeichnisse angelegt, in die auch Dateien übertragen werden. Leere Verzecihnisse werden nur angelegt, wenn diese Option aktiviert wurde.

Parameters

boolean $mode Modus

Return Value

PublishOverSSH

at line 215
PublishOverSSH setExecTimeout(integer $seconds)

execTimeout

Nach überschreitung des Timeouts wird die Verarbeitung abgebrochen.

Parameters

integer $seconds Sekunden

Return Value

PublishOverSSH

at line 231
PublishOverSSH setUsePty(boolean $mode)

usePty

Bei dieser Option wird eine echt Pty-Konsole verwendet. Dies ist dann notwendig, wenn das Zielprogramm nur mit einer echten Konsole arbeiten kann.

Parameters

boolean $mode Modus

Return Value

PublishOverSSH

at line 243
TransferSet setExecCommand(string $command)

SSH Befehl

Parameters

string $command SSH Befehl

Return Value

TransferSet