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

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

Introduction

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

Prototype

@Override
public void setResource(Resource resource) 

Source Link

Document

Public setter for the input resource.

Usage

From source file:io.spring.marchmadness.MooreStatConfiguration.java

@Bean
public ItemReader<MooreNcaaStat> reader(ResourceLoader resourceLoader) {
    FlatFileItemReader<MooreNcaaStat> reader = new FlatFileItemReader<MooreNcaaStat>();
    reader.setResource(resourceLoader.getResource("file:" + inputFileName));
    reader.setLineMapper(new DefaultLineMapper<MooreNcaaStat>() {
        {/*  w  w w.ja v a 2  s.  c  o m*/
            setLineTokenizer(new DelimitedLineTokenizer() {
                {
                    setNames(new String[] { "year", "rank", "name", "win", "loss", "tie", "sos", "pr" });
                }
            });
            setFieldSetMapper(new BeanWrapperFieldSetMapper<MooreNcaaStat>() {
                {
                    setTargetType(MooreNcaaStat.class);
                }
            });
        }
    });
    return reader;
}

From source file:io.spring.marchmadness.NcaaStatConfiguration.java

@Bean
public ItemReader<NcaaStats> reader(ResourceLoader resourceLoader) {
    FlatFileItemReader<NcaaStats> reader = new FlatFileItemReader<NcaaStats>();
    reader.setResource(resourceLoader.getResource("file:" + inputFileName));
    reader.setLineMapper(new DefaultLineMapper<NcaaStats>() {
        {/* ww  w  .  j av a 2  s .  c  o  m*/
            setLineTokenizer(new DelimitedLineTokenizer() {
                {
                    setNames(new String[] { "year", "rank", "name", "rating", "win", "loss", "schedl",
                            "schedlRank", "winTop25", "lossTop25", "winTop50", "lossTop50", "predictor",
                            "predictorRank", "goldenMean", "goldenMeanRank", "recent", "recentRank" });
                }
            });
            setFieldSetMapper(new BeanWrapperFieldSetMapper<NcaaStats>() {
                {
                    setTargetType(NcaaStats.class);
                }
            });
        }
    });
    return reader;
}

From source file:org.jboss.examples.spring.batch.BatchConfiguration.java

@Bean
@StepScope/*from  w  w  w. j ava2s  . c om*/
public FlatFileItemReader<AggregateItem> flatFileItemReader(
        @Value("#{jobParameters[inputFile]}") String fileName, LineTokenizer lineTokenizer) {
    FlatFileItemReader<AggregateItem> rc = new FlatFileItemReader<>();
    rc.setResource(new FileSystemResource(fileName));
    DefaultLineMapper<AggregateItem> mapper = new DefaultLineMapper<>();

    // tokenizer
    mapper.setLineTokenizer(lineTokenizer);

    // field mapper
    AggregateItemFieldSetMapper fieldSetMapper = new AggregateItemFieldSetMapper();
    fieldSetMapper.setDelegate(new TradeFieldSetMapper());
    mapper.setFieldSetMapper(fieldSetMapper);

    rc.setLineMapper(mapper);
    return rc;
}

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

@Bean
@StepScope//  w w  w .jav a2  s  .co  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:de.codecentric.batch.jobs.FlatFileToDbNoSkipJobConfiguration.java

@Bean
@StepScope//from  w  w  w .  ja v  a  2  s.  co  m
public FlatFileItemReader<Item> flatFileItemReader(@Value("#{jobParameters[pathToFile]}") String pathToFile) {
    FlatFileItemReader<Item> itemReader = new FlatFileItemReader<Item>();
    itemReader.setLineMapper(lineMapper());
    itemReader.setResource(new FileSystemResource("src/test/resources/" + pathToFile));
    return itemReader;
}

From source file:com.springsource.html5expense.config.BatchConfig.java

@Bean
@Scope("step")// w  w  w .  ja v  a  2  s.co  m
public FlatFileItemReader reader(@Value("#{jobParameters[file]}") String resource) {

    File f = new File(this.batchFileDirectory, resource + ".csv");

    DelimitedLineTokenizer del = new DelimitedLineTokenizer();
    del.setNames("date,amount,category,merchant".split(","));
    del.setDelimiter(DelimitedLineTokenizer.DELIMITER_COMMA);

    DefaultLineMapper<FieldSet> defaultLineMapper = new DefaultLineMapper<FieldSet>();
    defaultLineMapper.setLineTokenizer(del);
    defaultLineMapper.setFieldSetMapper(new PassThroughFieldSetMapper());
    defaultLineMapper.afterPropertiesSet();

    FlatFileItemReader<FieldSet> fileItemReader = new FlatFileItemReader<FieldSet>();
    fileItemReader.setLineMapper(defaultLineMapper);
    fileItemReader.setResource(new FileSystemResource(f));

    return fileItemReader;
}

From source file:de.langmi.spring.batch.examples.readers.support.CompositeItemStreamReaderTest.java

/**
 * Helpermethod to create FlatFileItemReader, sets the name too, to make restart
 * scenario possible - otherwise one flatFileItemReader would overwrite the 
 * other (in context).//from   w w  w .j  a  v a 2s.  co m
 *
 * @param inputFile
 * @return configured FlatFileItemReader cast as ItemStreamReader
 */
private ItemStreamReader<String> createFlatFileItemReader(final String inputFile) {
    FlatFileItemReader<String> ffir = new FlatFileItemReader<String>();
    // init reader
    ffir.setLineMapper(new PassThroughLineMapper());
    ffir.setResource(new FileSystemResource(inputFile));
    ffir.setName(inputFile);

    return (ItemStreamReader<String>) ffir;
}

From source file:com.github.jrrdev.mantisbtsync.core.jobs.issues.IssuesReadersConfiguration.java

/**
 * Return a reader that gets a list of issues ids from a CSV file.
 * The CSV file must not have a header line for columns definition.
 * The file is loaded through Spring resource loader so the filepath can contains
 * definitions like classpath: and others.
 *
 * @param resourceLoader/*from ww  w.j  av a 2  s. c om*/
 *          Spring resource loader
 * @param filePath
 *          File path of the CSV file
 * @return the reader
 */
@Bean
@StepScope
public FlatFileItemReader<BugIdBean> csvIssuesReader(final ResourceLoader resourceLoader,
        @Value("#{jobParameters['mantis.filepath']}") final String filePath) {

    final FlatFileItemReader<BugIdBean> reader = new FlatFileItemReader<BugIdBean>();
    reader.setResource(resourceLoader.getResource(filePath));

    final DefaultLineMapper<BugIdBean> lineMapper = new DefaultLineMapper<BugIdBean>();

    final DelimitedLineTokenizer tokenizer = new DelimitedLineTokenizer();
    tokenizer.setNames(new String[] { "id" });
    lineMapper.setLineTokenizer(tokenizer);

    final BeanWrapperFieldSetMapper<BugIdBean> mapper = new BeanWrapperFieldSetMapper<BugIdBean>();
    mapper.setTargetType(BugIdBean.class);
    lineMapper.setFieldSetMapper(mapper);

    reader.setLineMapper(lineMapper);

    return reader;
}

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

@Bean
@StepScope/*from  w  w w.j a va 2 s. com*/
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;
}