org.springframework.integration.jdbc
Class JdbcPollingChannelAdapter

java.lang.Object
  extended by org.springframework.integration.jdbc.JdbcPollingChannelAdapter
All Implemented Interfaces:
MessageSource<java.lang.Object>

public class JdbcPollingChannelAdapter
extends java.lang.Object
implements MessageSource<java.lang.Object>

A polling channel adapter that creates messages from the payload returned by executing a select query. Optionally an update can be executed after the select in order to update processed rows.

Since:
2.0
Author:
Jonas Partner

Constructor Summary
JdbcPollingChannelAdapter(javax.sql.DataSource dataSource, java.lang.String selectQuery)
          Constructor taking DataSource from which the DB Connection can be obtained and the select query to execute to retrieve new rows.
JdbcPollingChannelAdapter(org.springframework.jdbc.core.JdbcOperations jdbcOperations, java.lang.String selectQuery)
          Constructor taking JdbcOperations instance to use for query execution and the select query to execute to retrieve new rows.
 
Method Summary
 Message<java.lang.Object> receive()
          Executes the query.
 void setRowMapper(org.springframework.jdbc.core.RowMapper<?> rowMapper)
           
 void setSqlParameterSourceFactoryForUpdate(SqlParameterSourceFactory sqlParameterSourceFactoryForUpdate)
           
 void setUpdatePerRow(boolean updatePerRow)
           
 void setUpdateSql(java.lang.String updateSql)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JdbcPollingChannelAdapter

public JdbcPollingChannelAdapter(javax.sql.DataSource dataSource,
                                 java.lang.String selectQuery)
Constructor taking DataSource from which the DB Connection can be obtained and the select query to execute to retrieve new rows.

Parameters:
dataSource - used to create a SimpleJdbcTemplate
selectQuery - query to execute

JdbcPollingChannelAdapter

public JdbcPollingChannelAdapter(org.springframework.jdbc.core.JdbcOperations jdbcOperations,
                                 java.lang.String selectQuery)
Constructor taking JdbcOperations instance to use for query execution and the select query to execute to retrieve new rows.

Parameters:
jdbcOperations - instance to use for query execution
selectQuery - query to execute
Method Detail

setRowMapper

public void setRowMapper(org.springframework.jdbc.core.RowMapper<?> rowMapper)

setUpdateSql

public void setUpdateSql(java.lang.String updateSql)

setUpdatePerRow

public void setUpdatePerRow(boolean updatePerRow)

setSqlParameterSourceFactoryForUpdate

public void setSqlParameterSourceFactoryForUpdate(SqlParameterSourceFactory sqlParameterSourceFactoryForUpdate)

receive

public Message<java.lang.Object> receive()
Executes the query. If a query result set contains one or more rows, the Message payload will contain either a List of Maps for each row or, if a RowMapper has been provided, the values mapped from those rows. If the query returns no rows, this method will return null.

Specified by:
receive in interface MessageSource<java.lang.Object>