Example usage for org.springframework.batch.item.file FlatFileItemReader afterPropertiesSet

List of usage examples for org.springframework.batch.item.file FlatFileItemReader afterPropertiesSet

Introduction

In this page you can find the example usage for org.springframework.batch.item.file FlatFileItemReader afterPropertiesSet.

Prototype

@Override
    public void afterPropertiesSet() throws Exception 

Source Link

Usage

From source file:io.spring.batch.configuration.BatchConfiguration.java

@Bean
@StepScope//from w ww  .  j a  va2s  . c  o  m
protected FlatFileItemReader<Customer> reader(@Value("#{jobParameters['fileName']}") Resource fileName)
        throws Exception {
    DefaultLineMapper<Customer> defaultLineMapper = new DefaultLineMapper<>();
    defaultLineMapper.setLineTokenizer(new DelimitedLineTokenizer());
    defaultLineMapper.setFieldSetMapper(new FieldSetMapper<Customer>() {
        @Override
        public Customer mapFieldSet(FieldSet fieldSet) throws BindException {
            Customer cust = new Customer();

            cust.setCustomerName(fieldSet.readString(0));
            cust.setQty(fieldSet.readInt(1));

            return cust;
        }
    });

    defaultLineMapper.afterPropertiesSet();

    FlatFileItemReader<Customer> reader = new FlatFileItemReader<>();
    reader.setLineMapper(defaultLineMapper);
    reader.setResource(fileName);
    reader.afterPropertiesSet();

    return reader;
}

From source file:com.acmemotors.batch.LoaderJobConfiguration.java

@Bean
@StepScope//w  w  w .java2 s  .co m
public FlatFileItemReader<Map<String, Object>> reader(@Value("#{jobParameters['inputFile']}") String fileName)
        throws Exception {

    DefaultLineMapper<Map<String, Object>> mapper = new DefaultLineMapper<>();
    mapper.setLineTokenizer(jsonLineTokenzier());
    mapper.setFieldSetMapper(new FieldSetMapper<Map<String, Object>>() {

        private UUID journeyId = UUID.randomUUID();

        private Double readDouble(String value) {
            if (StringUtils.hasText(value)) {
                return Double.valueOf(value);
            } else {
                return null;
            }
        }

        private Integer readInteger(String value) {
            if (StringUtils.hasText(value)) {
                return Integer.valueOf(value);
            } else {
                return null;
            }
        }

        @Override
        public Map<String, Object> mapFieldSet(FieldSet fieldSet) throws BindException {

            Map<String, Object> map = new HashMap<>();

            map.put(VIN.getHerbieField(), fieldSet.readString(VIN.getHerbieField()));
            map.put(LONGITUDE.getHerbieField(), readDouble(fieldSet.readString(LONGITUDE.getHerbieField())));
            map.put(LATITUDE.getHerbieField(), readDouble(fieldSet.readString(LATITUDE.getHerbieField())));
            map.put(RPM.getHerbieField(), readDouble(fieldSet.readString(RPM.getHerbieField())));
            map.put(VEHICLE_SPEED.getHerbieField(),
                    readInteger(fieldSet.readString(VEHICLE_SPEED.getHerbieField())));
            String statuses = fieldSet.readString(FUEL_SYSTEM_STATUS.getHerbieField());
            String[] statusPieces = statuses.substring(1, statuses.length() - 1).split(",");
            Integer[] integerStatuses = { readInteger(statusPieces[0].trim()),
                    readInteger(statusPieces[1].trim()) };
            map.put(FUEL_SYSTEM_STATUS.getHerbieField(), integerStatuses);
            map.put(ENGINE_LOAD.getHerbieField(),
                    readDouble(fieldSet.readString(ENGINE_LOAD.getHerbieField())));
            map.put(COOLANT_TEMP.getHerbieField(),
                    readInteger(fieldSet.readString(COOLANT_TEMP.getHerbieField())));
            map.put(SHORT_TERM_FUEL.getHerbieField(),
                    readDouble(fieldSet.readString(SHORT_TERM_FUEL.getHerbieField())));
            map.put(LONG_TERM_FUEL.getHerbieField(),
                    readDouble(fieldSet.readString(LONG_TERM_FUEL.getHerbieField())));
            map.put(INTAKE_MANIFOLD_PRESSURE.getHerbieField(),
                    readInteger(fieldSet.readString(INTAKE_MANIFOLD_PRESSURE.getHerbieField())));
            map.put(INTAKE_AIR_TEMP.getHerbieField(),
                    readInteger(fieldSet.readString(INTAKE_AIR_TEMP.getHerbieField())));
            map.put(MAF_AIRFLOW.getHerbieField(),
                    readDouble(fieldSet.readString(MAF_AIRFLOW.getHerbieField())));
            map.put(THROTTLE_POSITION.getHerbieField(),
                    readInteger(fieldSet.readString(THROTTLE_POSITION.getHerbieField())));
            map.put(OBD_STANDARDS.getHerbieField(), fieldSet.readString(OBD_STANDARDS.getHerbieField()));
            map.put(TIME_SINCE_ENGINE_START.getHerbieField(),
                    readInteger(fieldSet.readString(TIME_SINCE_ENGINE_START.getHerbieField())));
            map.put(FUEL_LEVEL_INPUT.getHerbieField(),
                    readInteger(fieldSet.readString(FUEL_LEVEL_INPUT.getHerbieField())));
            map.put(RELATIVE_THROTTLE_POS.getHerbieField(),
                    readDouble(fieldSet.readString(RELATIVE_THROTTLE_POS.getHerbieField())));
            map.put(ABSOLUTE_THROTTLE_POS_B.getHerbieField(),
                    readDouble(fieldSet.readString(ABSOLUTE_THROTTLE_POS_B.getHerbieField())));
            map.put(ACCELERATOR_THROTTLE_POS_D.getHerbieField(),
                    readDouble(fieldSet.readString(ACCELERATOR_THROTTLE_POS_D.getHerbieField())));
            map.put(ACCELERATOR_THROTTLE_POS_E.getHerbieField(),
                    readDouble(fieldSet.readString(ACCELERATOR_THROTTLE_POS_E.getHerbieField())));
            map.put(DISTANCE_WITH_MIL_ON.getHerbieField(),
                    readInteger(fieldSet.readString(DISTANCE_WITH_MIL_ON.getHerbieField())));
            map.put(CATALYST_TEMP.getHerbieField(),
                    readDouble(fieldSet.readString(CATALYST_TEMP.getHerbieField())));
            map.put(BAROMETRIC_PRESSURE.getHerbieField(),
                    readInteger(fieldSet.readString(BAROMETRIC_PRESSURE.getHerbieField())));
            map.put(CONTROL_MODULE_VOLTAGE.getHerbieField(),
                    readDouble(fieldSet.readString(CONTROL_MODULE_VOLTAGE.getHerbieField())));
            map.put(ACCELERATION.getHerbieField(),
                    readDouble(fieldSet.readString(ACCELERATION.getHerbieField())));
            map.put(BEARING.getHerbieField(), readDouble(fieldSet.readString(BEARING.getHerbieField())));
            map.put(JOURNEY_ID.getHerbieField(), journeyId.toString());

            return map;
        }
    });

    mapper.afterPropertiesSet();

    FlatFileItemReader<Map<String, Object>> reader = new FlatFileItemReader<>();
    reader.setLineMapper(mapper);
    reader.setResource(new FileSystemResource(fileName));
    reader.afterPropertiesSet();

    return reader;
}