Class IsXmlPipe

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

@Forward(name="*", description="when {@literal thenForwardName} or {@literal elseForwardName} are used") @EnterpriseIntegrationPattern(ROUTER) public class IsXmlPipe extends AbstractPipe
Selects an exitState, based on if the input is a XML string. The input is an XML string if it, after removing leading white-space characters, starts with '<'.
Since:
4.3
Author:
Peter Leeuwenburgh
  • Constructor Details

    • IsXmlPipe

      public IsXmlPipe()
  • Method Details

    • 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
    • setThenForwardName

      public void setThenForwardName(String thenForwardName)
      forward returned when true
      Default value
      then
    • getThenForwardName

      public String getThenForwardName()
    • setElseForwardName

      public void setElseForwardName(String elseForwardName)
      forward returned when 'false'
      Default value
      else
    • getElseForwardName

      public String getElseForwardName()
    • isElseForwardOnEmptyInput

      public boolean isElseForwardOnEmptyInput()
    • setElseForwardOnEmptyInput

      public void setElseForwardOnEmptyInput(boolean b)
      return elseforward when input is empty (or thenforward)
      Default value
      true