List<DescriptionElementBase> usageFacts = new ArrayList<>();
for (TaxonDescription description : descriptions) {
if (description.getElements() != null) {
- for (DescriptionElementBase element : description.getElements()) {
- element = CdmBase.deproxy(element);
- handleAnnotations(element);
- if (element.getFeature().equals(Feature.COMMON_NAME())) {
- commonNameFacts.add(element);
- } else if (element.getFeature().equals(Feature.DISTRIBUTION())) {
- distributionFacts.add(element);
- } else if (element instanceof IndividualsAssociation
- || isSpecimenFeature(element.getFeature())) {
- specimenFacts.add(element);
- } else if (element.getFeature().isSupportsTaxonInteraction()) {
- taxonInteractionsFacts.add(element);
- } else {
- simpleFacts.add(element);
+ if (description.isPublish() || state.getConfig().isIncludeUnpublishedFacts()){
+ for (DescriptionElementBase element : description.getElements()) {
+ element = CdmBase.deproxy(element);
+ handleAnnotations(element);
+ if (element.getFeature().equals(Feature.COMMON_NAME())) {
+ commonNameFacts.add(element);
+ } else if (element.getFeature().equals(Feature.DISTRIBUTION())) {
+ distributionFacts.add(element);
+ } else if (element instanceof IndividualsAssociation
+ || isSpecimenFeature(element.getFeature())) {
+ specimenFacts.add(element);
+ } else if (element.getFeature().isSupportsTaxonInteraction()) {
+ taxonInteractionsFacts.add(element);
+ } else {
+ simpleFacts.add(element);
+ }
}
}
}
import eu.etaxonomy.cdm.io.common.CsvIOConfigurator;
import eu.etaxonomy.cdm.io.common.ExportResultType;
import eu.etaxonomy.cdm.io.common.mapping.out.IExportTransformer;
+import eu.etaxonomy.cdm.io.out.IFactExportConfigurator;
import eu.etaxonomy.cdm.io.out.TaxonTreeExportConfiguratorBase;
import eu.etaxonomy.cdm.model.common.Language;
import eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto;
* @since 15.03.2017
*/
public class CdmLightExportConfigurator
- extends TaxonTreeExportConfiguratorBase<CdmLightExportState,CdmLightExportConfigurator>{
+ extends TaxonTreeExportConfiguratorBase<CdmLightExportState,CdmLightExportConfigurator>
+ implements IFactExportConfigurator {
private static final long serialVersionUID = -1562074221435082060L;
//filter
private boolean isExcludeImportSources = true;
private boolean doFactualData = true;
+ private boolean includeUnpublishedFacts = false;
//metadata /gfbio
private String description;
this.condensedDistributionConfiguration = condensedDistributionConfiguration;
}
+ @Override
public boolean isDoFactualData() {
return doFactualData;
}
+ @Override
public void setDoFactualData(boolean doFactualData) {
this.doFactualData = doFactualData;
}
+ @Override
+ public boolean isIncludeUnpublishedFacts() {
+ return includeUnpublishedFacts;
+ }
+ @Override
+ public void setIncludeUnpublishedFacts(boolean includeUnpublishedFacts) {
+ this.includeUnpublishedFacts = includeUnpublishedFacts;
+ }
+
public UUID getStatusTree() {
return statusTree;
}
public void setStatusTree(UUID statusTree) {
this.statusTree = statusTree;
}
+
}
List<DescriptionElementBase> taxonInteractionsFacts = new ArrayList<>();
List<DescriptionElementBase> commonNameFacts = new ArrayList<>();
for (TaxonDescription description : descriptions) {
- if (description.getElements() != null) {
+ if (description.getElements() != null &&
+ description.isPublish() || state.getConfig().isIncludeUnpublishedFacts()){
for (DescriptionElementBase element : description.getElements()) {
element = CdmBase.deproxy(element);
if (element.getFeature().equals(Feature.COMMON_NAME())) {
import eu.etaxonomy.cdm.io.common.CsvIOConfigurator;
import eu.etaxonomy.cdm.io.common.ExportResultType;
import eu.etaxonomy.cdm.io.common.mapping.out.IExportTransformer;
+import eu.etaxonomy.cdm.io.out.IFactExportConfigurator;
import eu.etaxonomy.cdm.io.out.TaxonTreeExportConfiguratorBase;
import eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto;
* @since 2023-07-17
*/
public class ColDpExportConfigurator
- extends TaxonTreeExportConfiguratorBase<ColDpExportState,ColDpExportConfigurator> {
+ extends TaxonTreeExportConfiguratorBase<ColDpExportState,ColDpExportConfigurator>
+ implements IFactExportConfigurator {
private static final long serialVersionUID = -1562074221435082060L;
private Comparator<TaxonNodeDto> taxonNodeComparator;
+ private boolean includeFullName = false;
+
//filter
private boolean doFactualData = true;
+ private boolean includeUnpublishedFacts = false;
private static final ColDpExportTransformer transformer = new ColDpExportTransformer();
this.taxonNodeComparator = taxonNodeComparator;
}
+ @Override
public boolean isDoFactualData() {
return doFactualData;
}
+ @Override
public void setDoFactualData(boolean doFactualData) {
this.doFactualData = doFactualData;
}
+
+ @Override
+ public boolean isIncludeUnpublishedFacts() {
+ return includeUnpublishedFacts;
+ }
+ @Override
+ public void setIncludeUnpublishedFacts(boolean includeUnpublishedFacts) {
+ this.includeUnpublishedFacts = includeUnpublishedFacts;
+ }
+
+ public boolean isIncludeFullName() {
+ return includeFullName;
+ }
+ public void setIncludeFullName(boolean includeFullName) {
+ this.includeFullName = includeFullName;
+ }
}
\ No newline at end of file
--- /dev/null
+/**
+* Copyright (C) 2024 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.cdm.io.out;
+
+/**
+ * Interface for export configurators exporting (beside others).
+ *
+ * @author muellera
+ * @since 19.01.2024
+ */
+public interface IFactExportConfigurator {
+
+ public boolean isDoFactualData();
+ public void setDoFactualData(boolean doFactualData);
+
+ public boolean isIncludeUnpublishedFacts();
+ public void setIncludeUnpublishedFacts(boolean includeUnpublishedFacts);
+}