Class DomainTransformerPipe

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

@EnterpriseIntegrationPattern(TRANSLATOR) public class DomainTransformerPipe extends FixedForwardPipe
Pipe that performs domain transforming on the basis of a database table. Every string which equals "%![DT{label,valueIn,type}]" will be replaced by valueOut. The field type, which is optional, indicates the format of valueIn. Currently the following types are supported:
  • string (default): the methode setString() is used
  • number: the method setDouble() is used
Since:
4.9
Author:
Peter Leeuwenburgh
  • Constructor Details

    • DomainTransformerPipe

      public DomainTransformerPipe()
  • Method Details

    • configure

      public void configure() throws ConfigurationException
      Description copied from class: FixedForwardPipe
      checks for correct configuration of forward
      Specified by:
      configure in interface IConfigurable
      Specified by:
      configure in interface IPipe
      Overrides:
      configure in class FixedForwardPipe
      Throws:
      ConfigurationException
    • doPipe

      public PipeRunResult doPipe(Message invoer, 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
    • getValueOut

      public String getValueOut(String label, String valueIn, String type, PreparedStatement stmt) throws SQLException
      Throws:
      SQLException
    • start

      public void start() throws PipeStartException
      Description copied from interface: IPipe
      Perform necessary action to start the pipe. This method is executed after the IPipe.configure() method, for each start and stop command of the adapter.
      Specified by:
      start in interface IPipe
      Overrides:
      start in class AbstractPipe
      Throws:
      PipeStartException
    • stop

      public void stop()
      Description copied from interface: IPipe
      Perform necessary actions to stop the Pipe.
      For instance, closing JMS connections, DBMS connections etc.
      Specified by:
      stop in interface IPipe
      Overrides:
      stop in class AbstractPipe
    • setJmsRealm

      @Deprecated(forRemoval=true, since="7.8.0") public void setJmsRealm(String jmsRealm)
      Deprecated, for removal: This API element is subject to removal in a future version.
    • setDatasourceName

      public void setDatasourceName(String datasourceName)
    • setTableName

      public void setTableName(String tableName)
      the name of the table that contains the mapping
      Default value
      mapping
    • setLabelField

      public void setLabelField(String labelField)
      the name of the column labels are stored in
      Default value
      label
    • setValueInField

      public void setValueInField(String valueInField)
      the name of the column source values are stored in
      Default value
      valuein
    • setValueOutField

      public void setValueOutField(String valueOutField)
      the name of the column destination values are stored in
      Default value
      valueout
    • getTableName

      public String getTableName()
    • getLabelField

      public String getLabelField()
    • getValueInField

      public String getValueInField()
    • getValueOutField

      public String getValueOutField()
    • getQuery

      public String getQuery()
    • getJmsRealm

      public String getJmsRealm()
    • getDatasourceName

      public String getDatasourceName()