Einleitung

Beim Schreiben Ihrer Benachrichtigungsnachrichten haben Sie möglicherweise bereits verwendet GreenLight's Ausdruckssprache, ohne sie zu kennen. Wenn Sie eine Vorlage aus dem Pulldown-Menü "Expr. Templates" auswählen, wird ein Code-Snippet in Ihre Nachricht eingefügt. Später, wenn die Benachrichtigung gesendet wird, wird dieses Snippet geparst und durch den resultierenden Wert ersetzt.

Das Pulldown bietet Ihnen zwar eine komfortable Möglichkeit, Ihre Nachricht anzupassen, ist jedoch keine vollständige Liste aller verfügbaren Funktionen. Auf den folgenden Seiten finden Sie eine Reihe nützlicher Funktionen.

Funktionen

Syntax

Funktionen sind wie folgt definiert (Hinweis: Jeder Ausdruck muss mit beginnen ${ und enden mit } ):

PREFIX:FUNCTION_NAME([ARGUMENTE, ..])

Präfixe

Derzeit sind die folgenden Präfixe verfügbar:

Vorsilbe

Beschreibung

gl

GreenLight spezifische Funktionen

str

Tools zur String-Manipulation

arr

Werkzeuge zur Array-Manipulation

GreenLight spezifische Funktionen

Funktion

Beschreibung

Beispiel

Object def(Object obj, Object defaultValue)

Liefert die Standardwert if obj is null

${gl:def(result, "no result found"))}

int maxInt()

Liefert den Maximalwert an int kann haben

${gl:maxInt()}

String concat(String val1, String val2)

Verkettet die beiden Argumente und gibt den resultierenden String zurück

${gl:concat('some', 'value')}

String commonName(String name)

Gibt den allgemeinen Servernamen zurück

${gl:commonName('cn=myServer/o=acme')}

String abbreviatedName(String name)

Gibt den abgekürzten Servernamen zurück

${gl:abbreviatedName('cn=myServer/o=acme')}

String-Manipulationsfunktionen

Funktion

Beschreibung

Beispiel

boolean isEmpty(String str)

Prüft, ob ein String leer ist ("") oder null

${str:isEmpty(value)}

boolean isBlank(String str)

Prüft, ob ein String ein Leerzeichen, leer ("") oder . ist null

${str:isBlank(value)}

String trim(String str)

Entfernt Steuerzeichen von beiden Enden dieses Strings

${str:trim(' text ')}

int indexOf(String str, String searchStr)

Findet den ersten Index innerhalb eines Strings

${str:indexOf('abcdefg', 'd')}

int lastIndexOf(String str, String searchStr)

Findet den letzten Index innerhalb eines Strings

${str:indexOf('abcdefgd', 'd')}

String substring(String str, int start, int end)

Ruft eine Teilzeichenfolge aus der angegebenen Zeichenfolge ab

${str:substring('aabbaa', 2, 4)}

String substringBefore(String str, String separator)

Ruft die Teilzeichenfolge vor dem ersten Auftreten eines Trennzeichens ab

${str:substringBefore('myServer/acme', '/')}

String substringAfter(String str, String separator)

Ruft die Teilzeichenfolge vor dem ersten Auftreten eines Trennzeichens ab

${str:substringAfter('name@server', '@')}

String[] split(String str, String separator, int max)

Teilt den bereitgestellten Text in ein Array auf

${str:split("ab:cd:ef", ":", -1}

String replace(String text, String searchString, String replacement)

Ersetzt alle Vorkommen eines Strings innerhalb eines anderen Strings

${str:replace('some_string', '_', ' ')}

String abbreviate(String str, int maxWidth)

Verkürzt einen String mit Ellipsen

${str:abbreviate('some long text', 5)}

String lowerCase(String str)

Wandelt einen String in Kleinbuchstaben um

${str:lowerCase('SeRvEr/AcME')}

String upperCase(String str)

Wandelt einen String in Großbuchstaben um

${str:upperCase('server/acme')}

Array-Manipulationsfunktionen

Funktion

Beschreibung

Beispiel

Object[] subarray(Object[] array, int startIndex, int endIndex)

Erzeugt ein neues Array, das die Elemente zwischen den Start- und Endindizes enthält

${arr:subarray(str:split('ab:cd:ef', ':'), 0, 1}

int getLength(Object array)

Gibt die Länge eines Arrays zurück

${arr:getLength(str:split('ab:cd:ef', ':'))}

Object[] remove(Object[] array, int index)

Entfernt das Element an der angegebenen Position aus dem angegebenen Array

${arr:remove(str:split('ab:cd:ef', ':'), 0)}

Beispiele

Kombinieren von Funktionen

Im Folgenden wird die Anzahl der Administratorgruppen für einen Server ausgegeben:

Es gibt ${arr:getLength(str:split(result.statistics['Server.Administrators'], ',', -1))} Administratorgruppen auf dem Server ${gl:commonName(config.nodeDefinition.name)}