Textpanel
Das Textpanel erlaubt es verschiedene - auch strukturierte - Arten von Text zu bearbeiten und darzustellen. Dazu gibt es verschiedene Ansichten, die sich je nach Struktur des Textes unterscheiden können. Ganz klassisch kann der allgemeine Texteditor alle möglichen Texte und sogar binäre Daten anzeigen.
Texteditor
Code-Vervollständigung
Bei der Verwendung von mehrzeiligen Texteditoren in IGUASU können Sie die Tastenkombination "Strg + Leertaste" verwenden, um Vorschläge zur Codevervollständigung zu erhalten. Bei einzeiligen Textfeldern, die erweiterbar sind, wird bei Verwendung des Tastaturkürzels automatisch zum mehrzeiligen Texteditor gewechselt, bevor die Vorschläge angezeigt werden.
Welche Vorschläge angezeigt werden, hängt von der aktiven Sprache des Texteditors ab. Um die aktive Sprache zu ändern, vergewissern Sie sich, dass das "Settings Panel” maximiert ist und wählen Sie dann eine unterstützte Sprache aus dem Dropdown-Menü.
NiFi Expression Language Unterstützung
In den meisten Fällen ist die aktive Standardsprache von Texteditoren "text", was die Verwendung der Nifi Expression Language (NiFi EL) erleichtert.
NiFi EL-Ausdrücke müssen innerhalb eines "${}" geschrieben werden, d.h. der Cursor muss sich an einer gültigen Position befinden, damit Vorschläge zur Code-Vervollständigung angezeigt werden.
Nur Texteditoren für Properties, die NiFi EL unterstützen, werden NiFi El-Ausdrücke vorschlagen und einen $-Button haben. |
Die Prozessoren TransformXML und JSONataTransformJSON unterstützen NiFi EL, erfordern aber, dass die Ausdrücke gewrapped werden. Lesen Sie die Dokumentation der Prozessoren, um zu erfahren wie.
Beim Schreiben eines NiFi EL-Ausdrucks schlägt der Texteditor die Verwendung von subjektlosen Funktionen, Funktionsverkettungen, Subjektfunktionen, Umgebungsvariablen und Attributen auf der Grundlage des Kontexts vor, der von den Syntaxregeln von NiFi EL und den aktuell in IGUASU geladenen Daten bestimmt wird. Außerdem kann man im Auswertungsfeld darunter, eine Vorschau vom Ausdrucksauswertung sehen. Der Kontext, der für jede Art von Vorschlägen erforderlich ist, wird im Folgenden erläutert.
Es ist möglich, NiFi EL-Ausdrücke zu verschachteln, z.B. um Attribute als Argumente für eine Funktion zu verwenden.
Subjektlose Funktion
Subjektlosen Funktionen darf innerhalb eines NiFi EL-Ausdrucks kein Text vorangestellt werden.
Funktionsverkettung
Innerhalb eines NiFi-Ausdrucks werden vorangestellte Textabschnitte (einschließlich Funktionen) als potenzielle Subjekte interpretiert, von denen aus Subjektfunktionen verkettet werden können. Der Texteditor bietet dementsprechend einen "Chain Function"-Vorschlag, der ein ":" einfügt (markiert das Ende eines Subjekts und den Beginn einer Subjektfunktion), und dann die Verwendung einer Subjektfunktion vorschlägt.
Subjektfunktion
Subjektfunktionen müssen mit einem Subjekt, gefolgt von einem ":", eingeleitet werden.
Umgebungsvariablen
Die Umgebungsvariablen, die relevante Verzeichnispfade für IGUASU enthalten: "IGUASU_DRIVER_PATH", "IGUASU_KEYSTORES_PATH", "IGUASU_PERSISTENCE_PATH" und "IGUASU_PATH", werden ebenfalls vorgeschlagen. Sie können nur für sich selbst oder als Subjekt verwendet werden. Eine Erläuterung für die verschiedenen Umgebungsvariablen finden Sie hier.
Attribute
Attribute, die im Daten-Panel vorhanden sind (entweder aus einem Provenance-Event geladen oder manuell im Daten-Panel hinzugefügt), werden vorgeschlagen. Sie können nur für sich selbst oder als Subjekt verwendet werden.
Nur Properties, mit der passende "Expression Language Scope" können Attribute auswerten.
Welchen Scope eine Property hat, kann man am Icon erkennen, das ganz recht im Auswertungsfeld gezeigt wird. |
Hierarchische Strukturen (XML, JSON)
Wenn der Inhalt in dem Panel in XML oder JSON vorliegt, gibt es neben der Textansicht auch die Möglichkeit, eine Baumansicht zu verwenden.
An den Elementen des Baumes gibt es dann Menüs, über die Elemente hinzugefügt, gelöscht oder editiert werden können. In den Menüs sehen Sie auch die Tastenkombinationen, mit denen die Aktionen direkt erreicht werden können.
Einzelne Elemente oder auch ganze Teilbäume können über Drag-and-Drop verschoben werden.
Alle Aktionen können über ein integriertes "Undo/Redo" zurückgenommen werden.
Bei XML kann ein XPath Suchfeld eingeblendet werden. Gefundene Einträge werden dann blau hinterlegt. Bei JSON kann ein JSONata-Feld verwendet werden.
Ein weiteres Feld kann eingeblendet werden, dass den Pfad (in XPath/JSONata) des aktuell ausgewählten Feldes oder Fehlermeldungen zu Operationen anzeigt.