2 * Copyright (C) 2017 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
9 package eu
.etaxonomy
.cdm
.io
.coldp
;
12 import java
.util
.Comparator
;
14 import eu
.etaxonomy
.cdm
.database
.ICdmDataSource
;
15 import eu
.etaxonomy
.cdm
.io
.common
.CsvIOConfigurator
;
16 import eu
.etaxonomy
.cdm
.io
.common
.ExportResultType
;
17 import eu
.etaxonomy
.cdm
.io
.common
.mapping
.out
.IExportTransformer
;
18 import eu
.etaxonomy
.cdm
.io
.out
.TaxonTreeExportConfiguratorBase
;
19 import eu
.etaxonomy
.cdm
.persistence
.dto
.TaxonNodeDto
;
25 public class ColDpExportConfigurator
26 extends TaxonTreeExportConfiguratorBase
<ColDpExportState
,ColDpExportConfigurator
> {
28 private static final long serialVersionUID
= -1562074221435082060L;
30 private CsvIOConfigurator csvIOConfig
= CsvIOConfigurator
.NewInstance();
32 csvIOConfig
.setFieldsTerminatedBy(",");
35 private boolean isHighlightPrimaryCollector
= false;
37 private boolean createZipFile
= true;
39 private Comparator
<TaxonNodeDto
> taxonNodeComparator
;
42 private boolean doFactualData
= true;
44 private static final ColDpExportTransformer transformer
= new ColDpExportTransformer();
46 //************************* FACTORY ******************************/
48 public static ColDpExportConfigurator
NewInstance(){
49 ColDpExportConfigurator result
= new ColDpExportConfigurator(transformer
);
53 public static ColDpExportConfigurator
NewInstance(ICdmDataSource source
, File destination
){
54 ColDpExportConfigurator result
= new ColDpExportConfigurator(transformer
);
55 result
.setSource(source
);
56 result
.setDestination(destination
);
60 //************************ CONSTRUCTOR *******************************/
62 private ColDpExportConfigurator(IExportTransformer transformer
) {
64 this.resultType
= ExportResultType
.MAP_BYTE_ARRAY
;
65 this.setTarget(TARGET
.EXPORT_DATA
);
66 setUserFriendlyIOName("Col DP Export");
70 @SuppressWarnings("unchecked")
71 protected void makeIoClassList() {
72 ioClassList
= new Class
[] {
73 ColDpClassificationExport
.class
78 public ColDpExportState
getNewState() {
79 return new ColDpExportState(this);
83 public String
getDestinationNameString() {
84 // TODO Auto-generated method stub
88 //******************** GETTER / SETTER *******************************/
90 public String
getEncoding() {
91 return csvIOConfig
.getEncoding();
93 public void setEncoding(String encoding
) {
94 this.csvIOConfig
.setEncoding(encoding
);
97 public String
getLinesTerminatedBy() {
98 return csvIOConfig
.getLinesTerminatedBy();
100 public void setLinesTerminatedBy(String linesTerminatedBy
) {
101 this.csvIOConfig
.setLinesTerminatedBy(linesTerminatedBy
);
104 public String
getFieldsEnclosedBy() {
105 return csvIOConfig
.getFieldsEnclosedBy();
107 public void setFieldsEnclosedBy(String fieldsEnclosedBy
) {
108 this.csvIOConfig
.setFieldsEnclosedBy(fieldsEnclosedBy
);
111 public boolean isIncludeHeaderLines() {
112 return csvIOConfig
.isIncludeHeaderLines();
114 public void setIncludeHeaderLines(boolean hasHeaderLines
) {
115 this.csvIOConfig
.setIncludeHeaderLines(hasHeaderLines
);
118 public String
getFieldsTerminatedBy() {
119 return csvIOConfig
.getFieldsTerminatedBy();
121 public void setFieldsTerminatedBy(String fieldsTerminatedBy
) {
122 this.csvIOConfig
.setFieldsTerminatedBy(fieldsTerminatedBy
);
125 //TODO really needed?
126 public boolean isHighLightPrimaryCollector() {
127 return isHighlightPrimaryCollector
;
130 public boolean isCreateZipFile() {
131 return createZipFile
;
133 public void setCreateZipFile(boolean createZipFile
) {
134 this.createZipFile
= createZipFile
;
137 public Comparator
<TaxonNodeDto
> getTaxonNodeComparator() {
138 return taxonNodeComparator
;
140 public void setTaxonNodeComparator(Comparator
<TaxonNodeDto
> taxonNodeComparator
) {
141 this.taxonNodeComparator
= taxonNodeComparator
;
144 public boolean isDoFactualData() {
145 return doFactualData
;
147 public void setDoFactualData(boolean doFactualData
) {
148 this.doFactualData
= doFactualData
;