Search the FirstSpirit Knowledge Base
Hallo zusammen,
kurz Zur Ausgangslage. Wir haben eine eigene UrlFactory implementiert. Dieser übergebe wir (Code 1) dynamische Parameter an die init Methode der Factory.
Code 1:
HashMap params = new HashMap();
params.put("removedeleted", "true");
params.put("usewelcomefilenames", "false");
params.put("dynamicParam1", "test");
params.put("dynamicParam2", "test2");
...
context.setProperty("#urlCreatorSettings", params);
Nun verwenden wir diese Factory auch für die RemoteProjekt Verlinkungen. Dafür haben wir die Factory entsprechend über ein Script gesetzt (Code 2).
Code 2:
// get project
Project project = context.getProject();
// get remote project configurations
List rpcList = project.getRemoteProjectConfigurations();
project.lock();
// set url creator
for(RemoteProjectConfiguration rpc : rpcList)
{
rpc.setUrlCreator(urlCreatorName);
}
// set remote project configurations
project.setRemoteProjectConfigurations(rpcList);
project.save();
project.unlock();
Nun stehen wir leider vor dem Problem, dass wir der RemoteProject Factory keine dynamischen Parameter an die init Methode übergeben können. Zumindest haben wir keinen Weg gefunden.
Da die Parameter Werte erst zum Generierungszeitpunkt feststehen können wir auch nicht einfach default Werte hinterlegen. Gibt es eine Möglichkeit der RemoteProject Factory Parameter zu übergeben?
Alternativ hatten wir versucht einen Weg zu finden wie man aus der UrlFactory an den SchedulerContext (oder eine andere Instanz des aktuell ausgeführten Auftrags) kommt, um von dort dann Informationen zu beziehen, leider auch ohne Erflog.
Gruß
Dominik
Hallo Dominik,
> Gibt es eine Möglichkeit der RemoteProject Factory Parameter zu übergeben?
Das ja, aber eben nicht dynamisch - und das ist ja hier die eigentliche Frage.
Ich bin mir auch nicht sicher, ob es eine gute Idee ist, eine UrlFactory dynamisch zu konfigurieren.
Was ist denn der Use-Case dafür?
Gruß
Peter
Hallo Peter,
der Use-Case dafür ist kein Anderer als auch für die "normale" URL Factory, die man wie oben beschrieben ja pro Auftrag "dynamisch" über das Code 1 Beispiel anpassen kann.
Gruß
Dominik
Hallo Dominik,
der Use-Case dafür ist kein Anderer als auch für die "normale" URL Factory, die man wie oben beschrieben ja pro Auftrag "dynamisch" über das Code 1 Beispiel anpassen kann.
Leider wird mir dadurch der Anwendungsfall auch nicht klar. Sauberer fände ich es, ein Modul mit den gewünschten Parametern zu schnüren. Dafür reicht es, dem Modul-Deskriptor entsprechend anzupassen.
Vorteil in meinen Augen: Es gibt keine versteckte Abhängigkeit zu dynamischen Paramtern, die Konfiguration ergibt sich durch die Auswahl der passenden Modul-Variante.
Gruß, Peter
Hallo Dominik,
benötigst Du noch weitere Hilfe oder hat Dir die Antwort von Peter bereits geholfen?
In diesem Fall wäre es super, wenn Du die "richtige Antwort" entsprechend markierst, damit auch andere Community-Teilnehmer diese auf den ersten Blick finden. Solltest Du zwischenzeitlich eine eigene Lösung gefunden haben, wäre es nett, wenn Du diese hier bereitstellst.
Gruß,
Philipp