reader.setMaxItemCount(this.maxItemCount); reader.setCurrentItemCount(this.currentItemCount); reader.setSaveState(this.saveState); reader.setStrict(this.strict);
@Override protected ItemReader<Foo> getItemReader() throws Exception { FlatFileItemReader<Foo> tested = new FlatFileItemReader<>(); Resource resource = new ByteArrayResource(FOOS.getBytes()); tested.setResource(resource); tested.setLineMapper(new LineMapper<Foo>() { @Override public Foo mapLine(String line, int lineNumber) { Foo foo = new Foo(); foo.setValue(Integer.valueOf(line.trim())); return foo; } }); tested.setSaveState(true); tested.afterPropertiesSet(); return tested; }
@Override protected ItemReader<Foo> getItemReader() throws Exception { MultiResourceItemReader<Foo> multiReader = new MultiResourceItemReader<>(); FlatFileItemReader<Foo> fileReader = new FlatFileItemReader<>(); fileReader.setLineMapper(new LineMapper<Foo>() { @Override public Foo mapLine(String line, int lineNumber) throws Exception { Foo foo = new Foo(); foo.setValue(Integer.valueOf(line)); return foo; } }); fileReader.setSaveState(true); multiReader.setDelegate(fileReader); Resource r1 = new ByteArrayResource("1\n2\n".getBytes()); Resource r2 = new ByteArrayResource("".getBytes()); Resource r3 = new ByteArrayResource("3\n".getBytes()); Resource r4 = new ByteArrayResource("4\n5\n".getBytes()); multiReader.setResources(new Resource[] { r1, r2, r3, r4 }); multiReader.setSaveState(true); multiReader.setComparator(new Comparator<Resource>() { @Override public int compare(Resource arg0, Resource arg1) { return 0; // preserve original ordering } }); return multiReader; }
@Override protected ItemReader<Foo> getItemReader() throws Exception { FlatFileItemReader<Foo> fileReader = new FlatFileItemReader<>(); fileReader.setLineMapper((line, lineNumber) -> { Foo foo = new Foo(); foo.setValue(Integer.valueOf(line)); return foo; }); fileReader.setSaveState(true); Resource r1 = new ByteArrayResource("1\n2\n".getBytes()); Resource r2 = new ByteArrayResource("".getBytes()); Resource r3 = new ByteArrayResource("3\n".getBytes()); Resource r4 = new ByteArrayResource("4\n5\n".getBytes()); Comparator<Resource> comparator = (arg0, arg1) -> { return 0; // preserve original ordering }; return new MultiResourceItemReaderBuilder<Foo>().delegate(fileReader) .resources(new Resource[] { r1, r2, r3, r4 }).saveState(true).comparator(comparator).name("FOO") .build(); }
reader.setMaxItemCount(this.maxItemCount); reader.setCurrentItemCount(this.currentItemCount); reader.setSaveState(this.saveState); reader.setStrict(this.strict);