sexta-feira, 19 de agosto de 2016

Módulo de validações

Módulo de validações

O módulo de validações fornece uma maneira fácil out-of-the-box para verificar se o conteúdo de uma mensagem no seu fluxo corresponde a um determinado conjunto de critérios. A principal vantagem que isso tem sobre o uso de filtrosé a rastreabilidade, como filtra todo levantar exceções idênticas, tornando-se difícil para você saber onde a exceção foi causada. Validadores, por outro lado, gerar uma exceção com uma mensagem significativa em anexo. Opcionalmente, você pode personalizar esta mensagem e até mesmo o tipo de exceção que você quer que ele jogue.
Este recurso é suportado pelo tempo de execução Mule partir de Mule ESB 3.7.0 em ambas as edições comunitárias e Enterprise. Contudo, o apoio Studio só se tornou disponível a partir do lançamento em setembro de 2015.

Basics

O módulo de validações foi projetado seguindo estes princípios:
  • Se a mensagem não atender aos critérios especificados, a validação falhar e uma ValidationException é lançada.
  • Por padrão, esta excepção tem uma mensagem significativa em anexo. Opcionalmente, você pode personalizar esta mensagem e alterar o tipo de exceção gerada, desde que o novo tipo de exceção tem um construtor que substitui Exception (String).
  • No caso de você querer jogar um tipo de exceção que não tem esse construtor, ou em que a sua criação não é trivial, ou em que você quer que contêm informações adicionais, você pode construir um validador personalizado .

Validador como um processador de mensagens

Você pode usar o validador como um processador de mensagens, seja através da interface do Studio ou adicionando-a como uma marca XML. Use-o desta forma quando você deseja realizar validações como parte de seu fluxo e você quer que uma exceção seja lançada quando os critérios validados não é cumprida.

Validador como um Expression MEL

Além disso, na maioria dos casos você pode invocar um validador através de uma mula Expression Language (MEL)expressão. O propósito de expor validadores através MEL é usá-los na tomada de decisões. Ao contrário da versão do processador de mensagens, estes trabalhos como funções booleanas e não produzem uma mensagem de saída, eles apenas retornar verdadeiro quando a validação for bem sucedida ou falso caso contrário. Todos os validadores estão disponíveis através de um validador variável no contexto MEL.
1
2
3
4
5
6
7
8
9
10
<flow name="melValidation">
  <choice>
    <when expression="#[validator.validateEmail(payload.email)]">
      <flow-ref name="sendEmail" />
    </when>
    <otherwise>
      <logger message="no email. Try contacting the user some other way" />
    </otherwise>
  </choice>
</flow>

Tipos de validador

Existem vários tipos diferentes de validador que fora da caixa cobrem a maior parte dos casos de uso comuns que você pode executar em.
Se nenhum dos validadores descritos a seguir cobrir o que você precisa, você também pode criar um validador personalizado .

Validar Endereço de Email

Verifica se um determinado e-mail é válido.

Validar usando uma expressão regular

Valida que uma determinada expressão corresponde a uma expressão regular Java.

Validar String é uma hora válida

Nenhum comentário:

Postar um comentário