1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.springframework.batch.item.file.mapping;
18
19 import org.springframework.batch.item.file.LineMapper;
20 import org.springframework.batch.item.file.transform.FieldSet;
21 import org.springframework.batch.item.file.transform.LineTokenizer;
22 import org.springframework.beans.factory.InitializingBean;
23 import org.springframework.util.Assert;
24
25
26
27
28
29
30
31
32
33
34
35 public class DefaultLineMapper<T> implements LineMapper<T>, InitializingBean {
36
37 private LineTokenizer tokenizer;
38
39 private FieldSetMapper<T> fieldSetMapper;
40
41 @Override
42 public T mapLine(String line, int lineNumber) throws Exception {
43 return fieldSetMapper.mapFieldSet(tokenizer.tokenize(line));
44 }
45
46 public void setLineTokenizer(LineTokenizer tokenizer) {
47 this.tokenizer = tokenizer;
48 }
49
50 public void setFieldSetMapper(FieldSetMapper<T> fieldSetMapper) {
51 this.fieldSetMapper = fieldSetMapper;
52 }
53
54 @Override
55 public void afterPropertiesSet() {
56 Assert.notNull(tokenizer, "The LineTokenizer must be set");
57 Assert.notNull(fieldSetMapper, "The FieldSetMapper must be set");
58 }
59
60 }