dead_walk
I'm new here

URL-Generierung - Präfix für absolute Pfade auslesen

Jump to solution

Hallo community,

wir sind aktuell dran für FS5 über das Interface "UrlFactory" eine eigene URL-Generierung zu bauen.

Nun die Frage: Wie kommt man über das Interface UrlFactory, z.B. beim FS-Auftrag "generate partly" programmatisch an den Präfix, den man im Feld "Präfix für absolute Pfade" angeben kann?

Mit freundlichen Grüßen

Jens Albrecht

1 Solution

Accepted Solutions

Wie Hendrik zuvor schon sagte, ist es doch für die Url Generierung essentiell.

[...]

@Peter: Einige unserer Projekte verwenden diesen Präfix aktuell in der 4.2, deshalb muss dieser Wer für die Generierung berücksichtigt werden.

Heisst das, dass der Präfix nicht in eigenen geschriebenen Url Generierungen verwendet werden soll / kann? Komme ich nur noch auf umständlichen Wege an den Wert oder habe ich irgendwo etwas falsch verstanden?

Der Präfix wird von FirstSpirit (wenn nötig) automatisch ergänzt. Anders gesagt: Mit der neuen, vereinfachten Implementierungsstruktur muss man sich nicht mehr selber um solche Details kümmern.

Es wäre gut, wenn ein konkreter Fall beschrieben würde, wo dies zu einem Problem führt. Den sehe ich bis jetzt noch nicht.

Eine andere Frage in diesem Zusammenhang: Wieso wurde neben dem UrlCreator Interface im access-Package, ein weiteres im generate-Package hinzugefügt, wenn man doch in FS5 nur noch das UrlFactory Interface verwenden soll?

Das hast du falsch verstanden. Man soll zwar das Interface nicht mehr implementieren (müssen) - Hintergrund ist, das sich gezeigt hat, das dort zuviel Logik beachtet werden muss und damit zuviel Fehlerpotential besteht.

Das Interface ist aber weiter für die Benutzung zugängig. Es war und ist ja auch Bestandteil der API, und kann daher nicht einfach entfallen, alleine aus Kompatibiltätsgründen.

Das neue "UrlCreator"-Interface wurde aus zwei Gründen eingeführt:

1) Um Nachteile in der Benutzung auszubügeln (das neue Interface unterscheidet sich minimal)

2) Die Implementierung des neuen Interfaces dient sowohl als Adapter zu der neuen HotSpot-Klasse "UrlFactory" als auch als Adapter zu alten Implementierungen (die damit weiterhin unter v5 funktionieren).

[EDIT]

Nochmal zusammenfassend (tl;dr):

Mit den neuen Strukturen in v5 wurde die Implementierung von Projekt-Spezifischen URL-Strategien vereinfacht unter Beibehaltung der maximalen Kompatibilität zu Version 4.2.

Peter

View solution in original post

0 Kudos
7 Replies
kohlbrecher
Crownpeak employee

Hallo,

über das Interface UrlFactory ist das nicht möglich (anders als beim FS4 UrlCreator). Über den GenerateTask ist es aber möglich an den Präfix zu kommen.

Grüße

Jan

0 Kudos

Hallo,

laut API soll statt des UrlCreator Interface in FS5 nun das UrlFactory Interface genutzt werden, mit diesem ist der Zugriff auf den URL Präfix also nicht mehr ohne weiteres möglich. Der Weg über den GenerateTask ist ja relativ kompliziert (ScheduleStorage beziehen, Auftrag aus ScheduleStorage auslesen, Generate Task identifizieren ...), mir kommt diese Umstellung auf die UrlFactory wie ein Rückschritt vor, der URL Präfix ist doch essentiell bei der URL Generierung (durch eine eigene UrlFactory) :smileyconfused:

Gruß,

Hendrik

0 Kudos

Kannst du mal erläutern, wieso du innerhalb von deiner Implementierung den Zugriff auf den Pfad-Präfix brauchst?

Peter
0 Kudos

Wie Hendrik zuvor schon sagte, ist es doch für die Url Generierung essentiell.

Über das Url Creator Interface war es doch auch möglich auf den Präfix zu zugreifen. Warum wurde das nicht in die UrlFactory überführt?

Eine andere Frage in diesem Zusammenhang: Wieso wurde neben dem UrlCreator Interface im access-Package, ein weiteres im generate-Package hinzugefügt, wenn man doch in FS5 nur noch das UrlFactory Interface verwenden soll?

@Peter: Einige unserer Projekte verwenden diesen Präfix aktuell in der 4.2, deshalb muss dieser Wer für die Generierung berücksichtigt werden.

Heisst das, dass der Präfix nicht in eigenen geschriebenen Url Generierungen verwendet werden soll / kann? Komme ich nur noch auf umständlichen Wege an den Wert oder habe ich irgendwo etwas falsch verstanden?

Gruß

Jens

0 Kudos

Wie Hendrik zuvor schon sagte, ist es doch für die Url Generierung essentiell.

[...]

@Peter: Einige unserer Projekte verwenden diesen Präfix aktuell in der 4.2, deshalb muss dieser Wer für die Generierung berücksichtigt werden.

Heisst das, dass der Präfix nicht in eigenen geschriebenen Url Generierungen verwendet werden soll / kann? Komme ich nur noch auf umständlichen Wege an den Wert oder habe ich irgendwo etwas falsch verstanden?

Der Präfix wird von FirstSpirit (wenn nötig) automatisch ergänzt. Anders gesagt: Mit der neuen, vereinfachten Implementierungsstruktur muss man sich nicht mehr selber um solche Details kümmern.

Es wäre gut, wenn ein konkreter Fall beschrieben würde, wo dies zu einem Problem führt. Den sehe ich bis jetzt noch nicht.

Eine andere Frage in diesem Zusammenhang: Wieso wurde neben dem UrlCreator Interface im access-Package, ein weiteres im generate-Package hinzugefügt, wenn man doch in FS5 nur noch das UrlFactory Interface verwenden soll?

Das hast du falsch verstanden. Man soll zwar das Interface nicht mehr implementieren (müssen) - Hintergrund ist, das sich gezeigt hat, das dort zuviel Logik beachtet werden muss und damit zuviel Fehlerpotential besteht.

Das Interface ist aber weiter für die Benutzung zugängig. Es war und ist ja auch Bestandteil der API, und kann daher nicht einfach entfallen, alleine aus Kompatibiltätsgründen.

Das neue "UrlCreator"-Interface wurde aus zwei Gründen eingeführt:

1) Um Nachteile in der Benutzung auszubügeln (das neue Interface unterscheidet sich minimal)

2) Die Implementierung des neuen Interfaces dient sowohl als Adapter zu der neuen HotSpot-Klasse "UrlFactory" als auch als Adapter zu alten Implementierungen (die damit weiterhin unter v5 funktionieren).

[EDIT]

Nochmal zusammenfassend (tl;dr):

Mit den neuen Strukturen in v5 wurde die Implementierung von Projekt-Spezifischen URL-Strategien vereinfacht unter Beibehaltung der maximalen Kompatibilität zu Version 4.2.

Peter
0 Kudos
thmarx
I'm new here

Hallo Jens,

habe die Antworten die weitergeholfen?

Viele Grüße

Thorsten

0 Kudos

Ja, Antworten haben geholfen. Problem gelöst.

VG

Jens

0 Kudos