Introdução

Ao escrever suas mensagens de notificação, você já pode estar usando GreenLightlinguagem de expressão de 's sem conhecê-lo. Ao escolher um modelo do menu suspenso "Modelos de expr", um trecho de código é colado em sua mensagem. Mais tarde, quando a notificação é enviada, esse trecho é analisado e substituído pelo valor resultante.

Embora o menu suspenso forneça uma maneira confortável de personalizar sua mensagem, não é uma lista completa de todas as funções disponíveis. Nas páginas seguintes encontrará um conjunto de funções úteis.

Funções

Sintaxe

As funções são definidas da seguinte forma (nota: cada expressão deve começar com ${ e terminar com } ):

PREFIX:FUNCTION_NAME([ARGUMENTOS, ..])

Prefixos

Atualmente os seguintes prefixos estão disponíveis:

Prefixo

Descrição

gl

GreenLight funções específicas

str

Utilitários de manipulação de strings

arr

Utilitários de manipulação de array

GreenLight funções específicas

função

Descrição

Exemplo

Object def(Object obj, Object defaultValue)

Retorna o valor padrão if vol is nulo

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

int maxInt()

Retorna o valor máximo de um int podem ter

${gl:maxInt()}

String concat(String val1, String val2)

Concatena os dois argumentos e retorna a string resultante

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

String commonName(String name)

Retorna o nome comum do servidor

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

String abbreviatedName(String name)

Retorna o nome do servidor abreviado

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

Funções de manipulação de string

função

Descrição

Exemplo

boolean isEmpty(String str)

Verifica se uma String está vazia ("") ou nulo

${str:isEmpty(value)}

boolean isBlank(String str)

Verifica se uma String é um espaço em branco, vazio ("") ou nulo

${str:isBlank(value)}

String trim(String str)

Remove os caracteres de controle de ambas as extremidades desta String

${str:trim(' text ')}

int indexOf(String str, String searchStr)

Encontra o primeiro índice dentro de uma String

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

int lastIndexOf(String str, String searchStr)

Encontra o último índice dentro de uma String

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

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

Obtém uma substring da String especificada

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

String substringBefore(String str, String separator)

Obtém a substring antes da primeira ocorrência de um separador

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

String substringAfter(String str, String separator)

Obtém a substring antes da primeira ocorrência de um separador

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

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

Divide o texto fornecido em uma matriz

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

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

Substitui todas as ocorrências de uma String dentro de outra String

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

String abbreviate(String str, int maxWidth)

Abrevia uma String usando elipses

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

String lowerCase(String str)

Converte uma String para minúscula

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

String upperCase(String str)

Converte uma String para maiúscula

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

Funções de manipulação de array

função

Descrição

Exemplo

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

Produz um novo array contendo os elementos entre os índices inicial e final

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

int getLength(Object array)

Retorna o comprimento de um array

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

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

Remove o elemento na posição especificada da matriz especificada

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

Exemplos

Combinando funções

O seguinte produzirá o número de grupos de Administradores para um servidor:

Existem ${arr:getLength(str:split(result.statistics['Server.Administrators'], ',', -1))} Grupos de administradores no servidor ${gl:commonName(config.nodeDefinition.name)}