1 package fr.ifremer.tutti.service.genericformat.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.data.SampleCategoryModelEntry;
28 import fr.ifremer.tutti.service.csv.AbstractTuttiImportExportModel;
29 import fr.ifremer.tutti.service.csv.TuttiCsvUtil;
30 import fr.ifremer.tutti.service.genericformat.GenericFormatImportEntityParserFactory;
31
32
33
34
35
36
37
38 public class SampleCategoryModel extends AbstractTuttiImportExportModel<SampleCategoryRow> {
39
40 public static SampleCategoryModel forExport(char separator) {
41
42 SampleCategoryModel exportModel = new SampleCategoryModel(separator);
43 exportModel.forExport();
44 return exportModel;
45
46 }
47
48 public static SampleCategoryModel forImport(char separator, GenericFormatImportEntityParserFactory parserFactory) {
49
50 SampleCategoryModel importModel = new SampleCategoryModel(separator);
51 importModel.forImport(parserFactory);
52 return importModel;
53
54 }
55
56 @Override
57 public SampleCategoryRow newEmptyInstance() {
58
59 SampleCategoryRow row = new SampleCategoryRow();
60 row.setSampleCategoryModelEntry(new SampleCategoryModelEntry());
61 return row;
62
63 }
64
65 protected SampleCategoryModel(char separator) {
66 super(separator);
67 }
68
69 protected void forExport() {
70
71 newColumnForExport(SampleCategoryRow.PROPERTY_CODE);
72 newColumnForExport(SampleCategoryRow.PROPERTY_ORDER, TuttiCsvUtil.INTEGER);
73 newColumnForExport(SampleCategoryRow.PROPERTY_CARACTERISTIC, TuttiCsvUtil.CARACTERISTIC_TECHNICAL_FORMATTER);
74
75 }
76
77 protected void forImport(GenericFormatImportEntityParserFactory parserFactory) {
78
79 newMandatoryColumn(SampleCategoryRow.PROPERTY_CODE);
80 newMandatoryColumn(SampleCategoryRow.PROPERTY_ORDER, TuttiCsvUtil.INTEGER);
81 newMandatoryColumn(SampleCategoryRow.PROPERTY_CARACTERISTIC, parserFactory.getCaracteristicForSampleCategoryParser());
82
83 }
84
85 }