Linguagens de expressão
Uma linguagem de expressão é uma maneira de definir condições ou de manipular mensagens de forma declarativa. Elas são usadas para avaliar e manipular dados dentro de uma mensagem, permitindo a criação de rotas mais complexas e flexíveis.
Aqui estão as linguagens de expressão suportadas pelo Sensedia Integrations:
Os exemplos mostram o uso das linguagens no componente Choice, mas podem ser usadas em qualquer contexto que suporte linguagens. |
-
Constant: retorna um valor constante.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: constant: expression: 'sensedia' steps: - log: message: 'When ativado'
-
ExchangeProperty: acessa propriedades do Exchange.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: exchangeProperty: expression: 'myproperty' steps: - log: message: 'When ativado'
-
Groovy: usa scripts Groovy para manipular mensagens.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: groovy: expression: 'Math.random() > 0.5' steps: - log: message: 'When ativado'
-
Header: acessa valores dos cabeçalhos das mensagens.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: header: expression: 'myheader' steps: - log: message: 'When ativado'
-
JQ: usa a linguagem JQ para consultar e manipular JSON.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: jq: expression: '.store.book.price < 30' steps: - log: message: 'When ativado'
-
JSONPath: similar ao XPath, mas para JSON.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: jsonpath: expression: $.model.Details[?(@['Random nonsense'] == 'New today')] steps: - log: message: 'When ativado'
-
OGNL: usa expressões Object-Graph Navigation Language para acessar dados.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: ognl: expression: 'request.headers.foo == "bar"' steps: - log: message: 'When ativado'
-
Simple: uma linguagem simples para expressões e manipulações.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: simple: expression: ${header.id} == 2 steps: - log: message: 'When ativado'
-
XPath: usada para consultar e manipular XML.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: xpath: expression: '/person/@id > 30' steps: - log: message: 'When ativado'
-
XQuery: usa XQuery para consultar e manipular XML.
- from: uri: rest:post:/demo parameters: {} steps: - choice: otherwise: steps: - log: message: 'Otherwise ativado' when: - expression: xquery: expression: '//foo/id > 30' steps: - log: message: 'When ativado'
Para mais detalhes, acesse a documentação oficial do Apache Camel. |
Share your suggestions with us!
Click here and then [+ Submit idea]