Class DefaultDataFieldMaxValueIncrementerFactory

java.lang.Object
org.springframework.batch.item.database.support.DefaultDataFieldMaxValueIncrementerFactory
All Implemented Interfaces:
DataFieldMaxValueIncrementerFactory

public class DefaultDataFieldMaxValueIncrementerFactory extends Object implements DataFieldMaxValueIncrementerFactory
Default implementation of the DataFieldMaxValueIncrementerFactory interface. Valid database types are given by the DatabaseType enum.

Note: For MySql databases, the MySQLMaxValueIncrementer.setUseNewConnection(boolean) will be set to true.

Author:
Lucas Ward, Michael Minella, Drummond Dawson, Mahmoud Ben Hassine
See Also:
  • Constructor Details

    • DefaultDataFieldMaxValueIncrementerFactory

      public DefaultDataFieldMaxValueIncrementerFactory(DataSource dataSource)
  • Method Details

    • setIncrementerColumnName

      public void setIncrementerColumnName(String incrementerColumnName)
      Public setter for the column name (defaults to "ID") in the incrementer. Only used by some platforms (Derby, HSQL, MySQL, SQL Server and Sybase), and should be fine for use with Spring Batch meta data as long as the default batch schema hasn't been changed.
      Parameters:
      incrementerColumnName - the primary key column name to set
    • getIncrementer

      public org.springframework.jdbc.support.incrementer.DataFieldMaxValueIncrementer getIncrementer(String incrementerType, String incrementerName)
      Description copied from interface: DataFieldMaxValueIncrementerFactory
      Return the DataFieldMaxValueIncrementer for the provided database type.
      Specified by:
      getIncrementer in interface DataFieldMaxValueIncrementerFactory
      Parameters:
      incrementerType - string represented database type
      incrementerName - incrementer name to create. In many cases this may be the sequence name
      Returns:
      incrementer
    • isSupportedIncrementerType

      public boolean isSupportedIncrementerType(String incrementerType)
      Description copied from interface: DataFieldMaxValueIncrementerFactory
      Returns boolean indicated whether or not the provided string is supported by this factory.
      Specified by:
      isSupportedIncrementerType in interface DataFieldMaxValueIncrementerFactory
      Parameters:
      incrementerType - String containing the database type.
      Returns:
      true if the incrementerType is supported by this database type. Else false is returned.
    • getSupportedIncrementerTypes

      public String[] getSupportedIncrementerTypes()
      Description copied from interface: DataFieldMaxValueIncrementerFactory
      Returns the list of supported database incrementer types
      Specified by:
      getSupportedIncrementerTypes in interface DataFieldMaxValueIncrementerFactory
      Returns:
      an array of Strings containing the supported incrementer types.