Class DefaultJobParametersConverter

  • All Implemented Interfaces:
    JobParametersConverter

    public class DefaultJobParametersConverter
    extends java.lang.Object
    implements JobParametersConverter
    Converter for JobParameters instances using a simple naming convention for property keys. Key names that are prefixed with a - are considered non-identifying and will not contribute to the identity of a JobInstance. Key names ending with "(<type>)" where type is one of string, date, long are converted to the corresponding type. The default type is string. E.g.
     schedule.date(date)=2007/12/11
     department.id(long)=2345
     
    The literal values are converted to the correct type using the default Spring strategies, augmented if necessary by the custom editors provided.
    If you need to be able to parse and format local-specific dates and numbers, you can inject formatters (setDateFormat(DateFormat) and setNumberFormat(NumberFormat)).
    Author:
    Dave Syer, Michael Minella, Mahmoud Ben Hassine
    • Field Summary

      Fields 
      Modifier and TypeFieldDescription
      static java.lang.StringDATE_TYPE 
      static java.lang.StringLONG_TYPE 
      static java.lang.StringSTRING_TYPE 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and TypeMethodDescription
      JobParametersgetJobParameters​(java.util.Properties props)
      Check for suffix on keys and use those to decide how to convert the value.
      java.util.PropertiesgetProperties​(JobParameters params)
      Use the same suffixes to create properties (omitting the string suffix because it is the default).
      voidsetDateFormat​(java.text.DateFormat dateFormat)
      Public setter for injecting a date format.
      voidsetNumberFormat​(java.text.NumberFormat numberFormat)
      Public setter for the NumberFormat.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DefaultJobParametersConverter

        public DefaultJobParametersConverter()
    • Method Detail

      • setDateFormat

        public void setDateFormat​(java.text.DateFormat dateFormat)
        Public setter for injecting a date format.
        Parameters:
        dateFormat - a DateFormat, defaults to "yyyy/MM/dd"
      • setNumberFormat

        public void setNumberFormat​(java.text.NumberFormat numberFormat)
        Public setter for the NumberFormat. Used to parse longs and doubles, so must not contain decimal place (e.g. use "#" or "#,###").
        Parameters:
        numberFormat - the NumberFormat to set