Project

General

Profile

« Previous | Next » 

Revision 37b5e618

Added by Andreas Müller over 6 years ago

Salvador Area Mapping test

View differences:

app-import/src/main/java/eu/etaxonomy/cdm/app/salvador/TestSalvadorAreaMapping.java
1
/**
2
* Copyright (C) 2017 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.salvador;
10

  
11
import java.util.EnumSet;
12
import java.util.HashSet;
13
import java.util.Set;
14
import java.util.UUID;
15

  
16
import org.apache.log4j.Logger;
17
import org.springframework.aop.framework.Advised;
18
import org.springframework.aop.support.AopUtils;
19

  
20
import eu.etaxonomy.cdm.api.service.dto.DistributionInfoDTO.InfoPart;
21
import eu.etaxonomy.cdm.app.common.CdmDestinations;
22
import eu.etaxonomy.cdm.database.DbSchemaValidation;
23
import eu.etaxonomy.cdm.database.ICdmDataSource;
24
import eu.etaxonomy.cdm.ext.geo.EditGeoService;
25
import eu.etaxonomy.cdm.io.api.application.CdmIoApplicationController;
26

  
27
/**
28
 * @author a.mueller
29
 * @date 08.07.2017
30
 *
31
 */
32
public class TestSalvadorAreaMapping {
33
    private static final Logger logger = Logger.getLogger(TestSalvadorAreaMapping.class);
34

  
35
    //database validation status (create, update, validate ...)
36
    static DbSchemaValidation hbm2dll = DbSchemaValidation.VALIDATE;
37

  
38
//    static final ICdmDataSource cdmDestination = CdmDestinations.cdm_test_local_mysql_test();
39
//    static final ICdmDataSource cdmDestination = CdmDestinations.cdm_salvador_preview();
40
    static final ICdmDataSource cdmDestination = CdmDestinations.cdm_salvador_production();
41

  
42

  
43
    protected void doTest(ICdmDataSource cdmDestination){
44

  
45
        CdmIoApplicationController app = CdmIoApplicationController.NewInstance(cdmDestination, hbm2dll);
46

  
47
        try {
48
            doTest2(app);
49
        } catch (Exception e) {
50
            // TODO Auto-generated catch block
51
            e.printStackTrace();
52
        }
53

  
54
    }
55

  
56

  
57

  
58

  
59
    /**
60
     * @param app
61
     * @throws Exception
62
     */
63
    private void doTest2(CdmIoApplicationController app)  {
64
        UUID taxonUuid = UUID.fromString("eae896f0-3194-4b7b-a502-ad1d54ec36e6");
65
//      Taxon taxon = (Taxon)app.getTaxonService().find(taxonUuid);
66
      Object geoServiceObj = app.getBean("editGeoService");
67
      EditGeoService geoService;
68
    try {
69
        geoService = getTargetObject(geoServiceObj);
70

  
71

  
72
      Set<InfoPart> partSet = new HashSet<>();
73
      partSet.add(InfoPart.mapUriParams);
74

  
75
      EnumSet<InfoPart> parts = EnumSet.copyOf(partSet);
76
      geoService.composeDistributionInfoFor(parts, taxonUuid, false, false, null, null, null, null, null, null, null);
77
    } catch (Exception e) {
78
        // TODO Auto-generated catch block
79
        e.printStackTrace();
80
    }
81
    }
82

  
83
    protected <T> T getTargetObject(Object proxy) throws Exception {
84
        while( (AopUtils.isJdkDynamicProxy(proxy))) {
85
            return (T) getTargetObject(((Advised)proxy).getTargetSource().getTarget());
86
        }
87
        return (T) proxy; // expected to be cglib proxy then, which is simply a specialized class
88
    }
89

  
90

  
91
    /**
92
     * @param args
93
     */
94
    public static void main(String[] args) {
95
        TestSalvadorAreaMapping me = new TestSalvadorAreaMapping();
96
        me.doTest(cdmDestination);
97

  
98
        System.exit(0);
99
    }
100
}

Also available in: Unified diff