Class ExceptionPipe

All Implemented Interfaces:
HasTransactionAttribute, IConfigurable, IConfigurationAware, IForwardTarget, INamedObject, IPipe, IScopeProvider, IWithParameters, EventThrowing, HasStatistics, org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware

@EnterpriseIntegrationPattern(ERRORHANDLING) @Forward(name="success", description="success Forward is deprecated and will be removed. Invoked when {@literal throwException} is false") public class ExceptionPipe extends AbstractPipe
Pipe that throws an exception, based on the input message.
The success forward is only used when the (deprecated) attribute throwException has been set to false, otherwise the (default) exception forward will be used.
  • Constructor Details

    • ExceptionPipe

      public ExceptionPipe()
  • Method Details

    • configure

      public void configure() throws ConfigurationException
      Description copied from class: AbstractPipe
      configure() is called after the Pipeline is registered at the Adapter. Purpose of this method is to reduce creating connections to databases etc. in the doPipe() method. As much as possible class-instantiating should take place in the configure() method, to improve performance.
      Specified by:
      configure in interface IConfigurable
      Specified by:
      configure in interface IPipe
      Overrides:
      configure in class AbstractPipe
      Throws:
      ConfigurationException
    • doPipe

      public PipeRunResult doPipe(Message message, PipeLineSession session) throws PipeRunException
      Description copied from interface: IPipe
      This is where the action takes place. Pipes may only throw a PipeRunException, to be handled by the caller of this object. Implementations must either consume the message, or pass it on to the next Pipe in the PipeRunResult. If the result of the Pipe does not depend on the input, like for the FixedResultPipe, the Pipe can schedule the input to be closed at session exit, by calling Message.closeOnCloseOf(PipeLineSession, String) This allows the previous Pipe to release any resources (e.g. connections) that it might have kept open until the message was consumed. Doing so avoids connections leaking from pools, while it enables efficient streaming processing of data while it is being read from a stream.
      Throws:
      PipeRunException
    • setThrowException

      @Deprecated(forRemoval=true, since="9.0") @ConfigurationWarning("The {@literal success} forward and {@literal throwException} attribute should not be used anymore") public void setThrowException(boolean b)
      Deprecated, for removal: This API element is subject to removal in a future version.
      When true, a PipeRunException is thrown. Otherwise, the output is only logged as an error (and no rollback is performed).
      Default value
      true
    • isThrowException

      public boolean isThrowException()