Vou falar um pouco da estrutura do MuleSoft e sua linguagem.
O Mulesoft usa o MEL como sua linguagem.
Vamos falar um pouco sobre:
Mule Expression Language (MEL)
MEL é uma linguagem de expressão leve, específicos de mula que você pode usar para acessar e avaliar os dados na carga útil, propriedades e variáveis de uma mensagem Mule. Acessíveis e utilizáveis a partir de praticamente todos processador de mensagens em Mule, MEL permite agir rapidamente e filtro elegantemente, rota, ou de outra forma sobre as diferentes partes do objeto de mensagem Mule.
Pré-requisitos
Este documento assume que você está familiarizado com Mule ESB e seus conceitos básicos. Considere a leitura do capítulo, primeiros 30 minutos com Mule ganhar familiaridade antes de prosseguir.
Benefícios do Uso de MEL
Era uma vez, quando o desenvolvimento de aplicações de mula, você teria tido pouca outra opção além de usar uma linguagem de script, como Groovy ou uma linguagem de programação como Java, para manipular o conteúdo de um objeto de mensagem. Embora eficaz, o uso dessas línguas nem sempre foi eficiente porque não havia nenhum método consistente e padronizada para avaliar expressões.
Digite MEL, uma linguagem de expressão que fornece uma maneira consistente, padronizada para os desenvolvedores a trabalhar com carga útil, propriedades e variáveis de uma mensagem Mule. Ele faz uso de objetos de contexto Mule específicos de, é fácil de usar (auto-completar em todos os lugares!) E ele se comporta bem quando testar seu aplicativo. Além disso, e mais importante, MEL impõe consistência ao acessar informações sobre a mensagem: em vez de usar vários avaliadores de expressão, você pode usar MEL, o avaliador de expressão padrão, para acessar de forma consistente e manipular a informação.
(Trecho traduzido da documentação "https://docs.mulesoft.com/mule-user-guide/v/3.7/mule-expression-language-mel")
Expression MEL #[payload.cpf]
XML Gerado
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:dw="http://www.mulesoft.org/schema/mule/ee/dw" xmlns:json="http://www.mulesoft.org/schema/mule/json" xmlns:metadata="http://www.mulesoft.org/schema/mule/metadata" xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:sfdc="http://www.mulesoft.org/schema/mule/sfdc" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:spring="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/sfdc http://www.mulesoft.org/schema/mule/sfdc/current/mule-sfdc.xsd
http://www.mulesoft.org/schema/mule/ee/dw http://www.mulesoft.org/schema/mule/ee/dw/current/dw.xsd
http://www.mulesoft.org/schema/mule/json http://www.mulesoft.org/schema/mule/json/current/mule-json.xsd">
<sfdc:config name="Salesforce__Basic_Authentication" username="${sales.user}" password="${sales.password}" securityToken="${sales.token}" doc:name="Salesforce: Basic Authentication"/>
<http:listener-config name="HTTP_Listener_Configuration" host="0.0.0.0" port="8081" doc:name="HTTP Listener Configuration"/>
<flow name="query_in_salesforce_with_cpfFlow">
<http:listener config-ref="HTTP_Listener_Configuration" path="/" metadata:id="77c3ec7a-1f21-4d5c-9e84-31e5923a4fd4" doc:name="HTTP"/>
<logger message="#[payload]" level="INFO" doc:name="Logger"/>
<dw:transform-message doc:name="Transform Message">
<dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
{
cpf:payload.CPF
}]]></dw:set-payload>
</dw:transform-message>
<set-variable variableName="variavelCPF" value="#[payload.cpf]" doc:name="Variable"/>
<sfdc:query config-ref="Salesforce__Basic_Authentication" query="dsql:select id , Nome__c, CPF__c, Idade__c from Informacoes__c where CPF__c = #[flowVars.variavelCPF]" doc:name="Salesforce"/>
<dw:transform-message metadata:id="dc0aa15c-8bcd-4db9-85fb-e560187db077" doc:name="Transform Message">
<dw:set-payload><![CDATA[%dw 1.0
%input paayload application/java
%output application/json
---
payload]]></dw:set-payload>
</dw:transform-message>
<logger message="#[message.payloadAs(java.lang.String)]" level="INFO" doc:name="Logger"/>
</flow>
</mule>
Bom pessoal Obrigado a todo.
Nenhum comentário:
Postar um comentário