Project

General

Profile

Download (4.21 KB) Statistics
| Branch: | Revision:
1
/**
2
* Copyright (C) 2015 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
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.
8
*/
9
package eu.etaxonomy.cdm.app.euromed;
10

    
11
import java.util.UUID;
12

    
13
import org.apache.logging.log4j.LogManager;
14
import org.apache.logging.log4j.Logger;
15

    
16
import eu.etaxonomy.cdm.app.common.CdmDestinations;
17
import eu.etaxonomy.cdm.common.URI;
18
import eu.etaxonomy.cdm.database.DbSchemaValidation;
19
import eu.etaxonomy.cdm.database.ICdmDataSource;
20
import eu.etaxonomy.cdm.io.berlinModel.BerlinModelTransformer;
21
import eu.etaxonomy.cdm.io.common.CdmDefaultImport;
22
import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK;
23
import eu.etaxonomy.cdm.io.common.ImportResult;
24
import eu.etaxonomy.cdm.io.fact.commonname.in.CommonNameExcelImportConfigurator;
25
import eu.etaxonomy.cdm.model.common.Language;
26
import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
27

    
28
/**
29
 * @author a.mueller
30
 * @since 24.01.2023
31
 */
32
public class EuroMedFinnishCommonNameImportActivator {
33

    
34
    @SuppressWarnings("unused")
35
    private static final Logger logger = LogManager.getLogger();
36

    
37
    //database validation status (create, update, validate ...)
38
    static DbSchemaValidation dbSchemaValidation = DbSchemaValidation.VALIDATE;
39

    
40
   static final ICdmDataSource cdmDestination = CdmDestinations.cdm_local_test_mysql();
41
//    static final ICdmDataSource cdmDestination = CdmDestinations.cdm_test_euroMed();
42
//   static final ICdmDataSource cdmDestination = CdmDestinations.cdm_production_euromed();
43

    
44
    static final UUID sourceRefUuid = UUID.fromString("c239bd59-63b8-442a-b097-4a7a7869b933");
45

    
46
    static final UUID finnishUuid = Language.uuidFinnish;
47
    static final UUID finland = BerlinModelTransformer.uuidEMAreaCommonNameFinland;
48
    static final UUID swedishUuid = Language.uuidSwedish;
49
    static final UUID swedenAndFinland = BerlinModelTransformer.uuidEMAreaCommonNameSwedenAndFinland;
50

    
51
    static final boolean isSwedish = false;
52

    
53
    static final UUID areaUuid = isSwedish ? swedenAndFinland : finland;
54
    static final UUID languageUuid = isSwedish ? swedishUuid : finnishUuid;
55
    static final String commonNameCol = isSwedish ? "" : "FINNISH_NAME";
56

    
57

    
58
    //check - import
59
    static CHECK check = CHECK.IMPORT_WITHOUT_CHECK;
60

    
61
    private void doImport(ICdmDataSource cdmDestination){
62

    
63
        URI source = getEM_FinnishCN_Uri();
64
        CommonNameExcelImportConfigurator config;
65
//        try {
66
            config = CommonNameExcelImportConfigurator.NewInstance(source, cdmDestination);
67

    
68
            config.setDbSchemaValidation(dbSchemaValidation);
69
            config.setCheck(check);
70
            config.setNomenclaturalCode(NomenclaturalCode.ICNAFP);
71
            config.setSourceRefUuid(sourceRefUuid);
72
//            config.setSourceReference(getSourceReference());
73
            config.setDefaultLanguageUuid(languageUuid);
74
            config.setDefaultAreaUuid(areaUuid);
75
            config.setCommonNameColumnLabel(commonNameCol);
76
            config.setWorksheetName("ACCEPTED");
77

    
78
            CdmDefaultImport<CommonNameExcelImportConfigurator> myImport = new CdmDefaultImport<>();
79
            ImportResult result = myImport.invoke(config);
80
            System.out.println(result.createReport());
81
//        } catch (IOException e) {
82
//            System.out.println("URI not 'found': " + source);
83
//        }
84
    }
85

    
86
    private URI getEM_FinnishCN_Uri(){
87
        String fileName = "EM_finnish_commonNames_fi_2019.xlsx";
88

    
89
        URI uri = URI.create("file:////BGBM-PESIHPC/EuroMed/" +  fileName);
90
        if (!uri.toFile().exists()) {
91
            System.exit(-1);
92
        }
93
        return uri;
94
    }
95

    
96
//    private Reference getSourceReference(){
97
//        Reference result = ReferenceFactory.newDatabase();
98
//        result.setTitle("Euro+Med IPNI import");
99
//        result.setUuid(UUID.fromString("937f3a38-dbb4-4888-9ea3-2f52d47f7953"));
100
//        result.setDatePublished(VerbatimTimePeriod.NewVerbatimNowInstance());
101
//        return result;
102
//    }
103

    
104
    public static void main(String[] args) {
105
        EuroMedFinnishCommonNameImportActivator me = new EuroMedFinnishCommonNameImportActivator();
106
        me.doImport(cdmDestination);
107
        System.exit(0);
108
    }
109
}
(2-2/4)