Skip to content

Instantly share code, notes, and snippets.

@marianogonzalez
Created August 28, 2015 19:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save marianogonzalez/b02b83f778baf1d174ff to your computer and use it in GitHub Desktop.
Save marianogonzalez/b02b83f778baf1d174ff to your computer and use it in GitHub Desktop.
/**
* A component which performs a validation and expresses
* its result through a {@link ValidationResult} object.
* <p/>
* The {@link #validate(MuleEvent)} method receives a
* {@link MuleEvent} in order to make it generic and easy to extend.
* However, that doesn't necessarily mean that all the validation
* is performed with or over the event exclusively. Thread
* safeness is not to be assumed over instances of this class
* since the validator could be stateful.
*
* @since 3.7.0
*/
public interface Validator
{
/**
* Performs the validation and generates a
* {@link ValidationResult} back.
*
* @param event the current {@link MuleEvent}
* @return a {@link ValidationResult}
*/
ValidationResult validate(MuleEvent event);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment