1 package fr.ifremer.tutti.service.csv;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 import fr.ifremer.tutti.persistence.entities.referential.Gear;
28 import fr.ifremer.tutti.persistence.entities.referential.Gears;
29 import fr.ifremer.tutti.service.PersistenceService;
30
31 import java.util.List;
32 import java.util.Map;
33
34
35
36
37
38
39
40 public class GearParserFormatter extends EntityParserFormatterSupport<Gear> {
41
42 public static GearParserFormatter newFormatter() {
43 return new GearParserFormatter(false, null, null);
44 }
45
46 public static GearParserFormatter newTechnicalFormatter() {
47 return new GearParserFormatter(true, null, null);
48 }
49
50 public static GearParserFormatter newParser(PersistenceService persistenceService, Map<String, String> idTranslationMap) {
51 return new GearParserFormatter(true, persistenceService, idTranslationMap);
52 }
53
54 private final PersistenceService persistenceService;
55
56 private final Map<String, String> idTranslationMap;
57
58 protected GearParserFormatter(boolean technical, PersistenceService persistenceService, Map<String, String> idTranslationMap) {
59 super("", technical, Gear.class);
60 this.persistenceService = persistenceService;
61 this.idTranslationMap = idTranslationMap;
62 }
63
64 @Override
65 protected List<Gear> getEntities() {
66 return persistenceService.getAllGear();
67 }
68
69 @Override
70 protected List<Gear> getEntitiesWithObsoletes() {
71 return persistenceService.getAllGearWithObsoletes();
72 }
73
74 @Override
75 protected String formatBusiness(Gear value) {
76
77 return Gears.GET_NAME.apply(value);
78
79 }
80
81 @Override
82 protected Gear parseNotBlankValue(String value) {
83
84 if (idTranslationMap.containsKey(value)) {
85 value = idTranslationMap.get(value);
86 }
87 return super.parseNotBlankValue(value);
88
89 }
90
91 }