Como fazer when dentro de de when.
Vamos Criar um flowcom esse componentes
Componentes Utilizados
Http
Logger
Tranform message
XML gerado
Sessão transformador variável | Transformador variável | propriedade Transformer | |
---|---|---|---|
Usar
|
Use para definir ou remover uma variável que está ligada à mensagem atual para todo o seu ciclo de vida, através de múltiplos fluxos, aplicações e até mesmo servidores.
|
Use para definir ou remover uma variável na mensagem, vinculado ao fluxo de corrente.
|
Use para definir, remover ou copiar as propriedades do escopo de saída de uma mensagem.
|
Persistência
|
As variáveis de sessão criados com um transformador variável de sessão persistir durante o ciclo de vida mensagem inteira, independentemente de barreiras de transporte, exceto para o conector HTTP que não propagá-los.
|
As variáveis estabelecidas com um transformador variável persistem somente para o fluxo de corrente e não pode atravessar a barreira de transporte.
|
Uma vez que uma mensagem atinge um de saída do conector, todas as propriedades no âmbito de saída são enviados com a mensagem na forma de metadados específico de transporte (cabeçalhos HTTP para uma saída do conector HTTP, por exemplo).
|
sessionVars
mapa em uma expressão Mule. Por exemplo, se você tiver definido uma variável de sessão com o nome "SVname" eo valor "SVvalue", mais tarde você pode invocar essa variável de sessão usando a expressão #[sessionVars.SVname]
, que avalia a SVvalue
.Note-se que a variável de sessão está ligada a uma mensagem de mula, mas não a um MuleEvent. Isto significa que se você faz uso de um elemento que faz cópias da mensagem - como um escopo assíncrono ou uma dispersão reunir componente - mudanças nas variáveis de fluxo não será mantido entre estas mensagens replicadas, mesmo que começou como um. |
Campo | Valor | Descrição | XML | |
---|---|---|---|---|
Mostrar nome
|
variável de sessão
|
Personalize para exibir um nome exclusivo para o transformador em sua aplicação.
| doc:name="Session Variable" | |
Operação
|
Ajuste variável de sessão
|
Selecione para definir uma nova variável de sessão na sua mensagem (como mostrado no exemplo imagem acima).
| <set-session-variable> | |
Remover Session variável
|
Selecione para excluir uma variável de sessão existente a partir de sua mensagem.
| <remove-session-variable> | ||
Nome
|
String ou expressão Mule
|
Especifique o nome para a variável de sessão que está a criar ou identificar o nome da variável de sessão que está a remover. Se você estiver removendo as variáveis de sessão, este campo aceita um curinga "*" caráter.
| variableName="MyNewSessionVariableName" | |
Valor
|
String ou expressão Mule
|
exibe mula este campo somente se você estiver configurando uma nova variável de sessão.Especificar o valor usando uma string ou uma expressão Mule.
| value="MyNewSessionVariableValue" |
Ver namespace
1
2
3
4
5
6
7
<http:listener-config name="listener-config" host="localhost" port="8081"/>
<flow name="SessionVariableTransformingFlow" doc:name="SessionVariableTransformingFlow">
<http:listener config-ref="listener-config" path="/" doc:name="HTTP Connector"/>
<set-session-variable variableName="messageID" value="#[java.util.UUID.randomUUID().toString()]" doc:name="Set Message ID"/>
<logger message="Variable set with #[sessionVars.messageID]" level="INFO"/>
<remove-session-variable "NameofSessionVariabletoRemove" doc:name="Session Variable"/>
</flow>
|
---|
1
2
3
4
5
6
7
8
9
10
<batch:step name="commitStep">
<batch:commit size="10">
<foreach>
<expression-component>
record.payload = 'foo';
record.recordVars['marco'] = 'polo';
</expression-component>
</foreach>
</batch:commit>
</batch:step>