mne
I'm new here

Dateisystempfad aus Aktion "Veröffentlichung" auslesen

Jump to solution

Hallo zusammen,

wir versuchen gerade per nachgelagerter (BeanShell-)Aktion in unserem Generierungs-Auftrag "Restarbeiten" durchzuführen.

Diese benötigen als Parameter jedoch den Pfad im lokalen Dateisystem, wohin die (Voll-)Generierung in der Aktion

"Veröffentlichung ausführen" abgelegt wird.

Gibt es eine Möglichkeit den dort fest angegebenen Parameter auszulesen?

Versuche via ScheduleEntry->getFolderName() schlugen fehl, der Parameter wird hier scheinbar nicht gesetzt.

Eine mehrfache Angabe des Parameters möchten wir vermeiden, durch die feste Angabe der Parameters in der vorgegebenen

Aktion sehe ich auch keine Möglichkeit, diesen dort als Parameter anzugeben.

Hat hier jemand noch Ideen?

Danke euch!

Martin

1 Solution

Accepted Solutions
felix_reinhold
Returning Responder

Hallo Martin,,

Veröffentlichtungsaktionen sind vom Typ "DeployTask" (siehe API).

Wenn du also in deinen Auftrag eine Skript-Aktion hinzufügst kannst du folgenden Code zum ermitteln des Pfades nutzen:

import java.util.List;

import de.espirit.firstspirit.access.schedule.ScheduleTask;

import de.espirit.firstspirit.access.schedule.DeployTask;

import de.espirit.firstspirit.access.schedule.DeployTarget;

List tasks = context.getTasks();

for (ScheduleTask task : tasks) {

     if (task instanceof DeployTask) {

          DeployTarget target = ((DeployTask) task).getTarget();

          String path = target.getPath();

          context.logInfo("Path: " + path);

     }

}

Gruß

Felix

View solution in original post

2 Replies
felix_reinhold
Returning Responder

Hallo Martin,,

Veröffentlichtungsaktionen sind vom Typ "DeployTask" (siehe API).

Wenn du also in deinen Auftrag eine Skript-Aktion hinzufügst kannst du folgenden Code zum ermitteln des Pfades nutzen:

import java.util.List;

import de.espirit.firstspirit.access.schedule.ScheduleTask;

import de.espirit.firstspirit.access.schedule.DeployTask;

import de.espirit.firstspirit.access.schedule.DeployTarget;

List tasks = context.getTasks();

for (ScheduleTask task : tasks) {

     if (task instanceof DeployTask) {

          DeployTarget target = ((DeployTask) task).getTarget();

          String path = target.getPath();

          context.logInfo("Path: " + path);

     }

}

Gruß

Felix

Hallo Felix,

vielen Dank, funktioniert einwandfrei.

Grüße,

Martin

0 Kudos