Textersetzung
apama.analyticsbuilder.blocks.TextSubstitution
Ersetzt Identifizierer, die mit einem Hash und geschweiften Klammern gekennzeichnet sind (zum Beispiel, #{name}) in der Textvorlage durch entsprechende Eingaben aus den Eingabewerten.
Mindestens einer der Eingangsports "Objekt" oder "Quelle" muss verbunden sein. Identifizierer, die nicht aufgelöst werden können, werden nicht ersetzt.
Die Identifizierer mit dem Präfix source. (zum Beispiel #{source.name}) werden in dem am Eingangsport "Quelle" empfangenen Wert gesucht. Wenn der am Eingangsport "Quelle" empfangene Wert zum Beispiel { "name": "sample_name" } ist, dann wird der Identifizierer #{source.name} aufgelöst in sample_name.
Die Identifizierer, denen kein source. vorangestellt ist, werden in dem am Eingangsport "Objekt" empfangenen Wert gesucht.
Eingebettete Identifizierer können angegeben werden, indem sie durch einen Punkt (.) getrennt werden. Zum Beispiel, wenn der Eingangsport "Objekt" den Wert { "address": { "street": { "name": "example_street" }}} hat, dann wird der Identifizierer #{address.street.name} aufgelöst in example_street.
Schlüssel, die einen Punkt (.) enthalten, werden nicht unterstützt. Wenn etwa der Wert des Eingangsports "Objekt" die Form { "address.street": { "name": "example_street" }} hat, dann kann der Wert example_street nicht aufgelöst werden, weil der Identifizierer #{address.street.name} erwartet, dass street im Eintrag address eingebettet ist.
Primitive Werte wie integer, float, boolean und string werden direkt ersetzt, aber komplexe Werte werden vor der Ersetzung in eine JSON-Darstellung konvertiert.
Jeder Identifizierer, der den Text time (ohne Beachtung von Groß-/Kleinschreibung) und den Wertetyp float enthält, wird als Zeitstempelwert interpretiert und vor der Ersetzung in das Format yyyy-MM-ddTHH:mm:ss.SSSZ umgewandelt.
Ein Hash (#) kann in der Textvorlage angegeben werden, in dem man es wie folgt escaped: #{#}.
Parameter
Name | Beschreibung | Typ | Hinweise |
Textvorlage | Der Text, der zum Generieren der Ausgabe verwendet wird, indem die darin enthaltenen Identifizierer wie #{name} durch die Werte der Eingabeports ersetzt werden. | string | |
Details zum Eingangsport
Name | Beschreibung | Typ |
Objekt | Wird verwendet, um Identifizierer zu ersetzen, denen nicht das Präfix source. vorangestellt ist. Zum Beispiel: #{name} or #{timestamp}. | any |
Quelle | Wird verwendet, um Identifizierer zu ersetzen, denen das Präfix source. vorangestellt ist. Zum Beispiel: #{source.name}. | any |
Details zum Ausgangsport
Name | Beschreibung | Typ |
Ausgabe | String, der die Ersetzungen aus der Textvorlage enthält. | string |