1 package eu
.etaxonomy
.cdm
.app
.references
;
4 import java
.net
.URISyntaxException
;
6 import org
.apache
.log4j
.Logger
;
8 import eu
.etaxonomy
.cdm
.api
.application
.CdmApplicationController
;
9 import eu
.etaxonomy
.cdm
.app
.common
.CdmDestinations
;
10 import eu
.etaxonomy
.cdm
.app
.util
.TestDatabase
;
11 import eu
.etaxonomy
.cdm
.database
.DbSchemaValidation
;
12 import eu
.etaxonomy
.cdm
.database
.ICdmDataSource
;
13 import eu
.etaxonomy
.cdm
.io
.common
.CdmDefaultImport
;
14 import eu
.etaxonomy
.cdm
.io
.reference
.endnote
.in
.EndnoteImportConfigurator
;
16 public class EndNoteImportActivator
{
17 /* SerializeFrom DB **/
18 private static final ICdmDataSource cdmDestination
= CdmDestinations
.localH2();
21 private static String importFileNameString
= "file:/C:/EndNoteTest.xml";
26 private static final Logger logger
= Logger
.getLogger(EndNoteImportActivator
.class);
29 public static String
chooseFile(String
[] args
) {
32 for (String dest
: args
){
33 if (dest
.endsWith(".xml")){
40 private void invokeImport(String importFileParamString
, ICdmDataSource destination
) {
43 importFileName
= new URI(importFileNameString
);
44 EndnoteImportConfigurator endNoteImportConfigurator
;
45 if (importFileParamString
!=null && destination
!= null){
46 URI importFileParam
= new URI(importFileParamString
);
47 endNoteImportConfigurator
= EndnoteImportConfigurator
.NewInstance(importFileParam
, destination
);
48 }else if (destination
!= null){
49 endNoteImportConfigurator
= EndnoteImportConfigurator
.NewInstance(importFileName
, destination
);
50 } else if (importFileParamString
!=null ){
51 URI importFileParam
= new URI(importFileParamString
);
52 endNoteImportConfigurator
= EndnoteImportConfigurator
.NewInstance(importFileParam
, cdmDestination
);
54 endNoteImportConfigurator
= EndnoteImportConfigurator
.NewInstance(importFileName
, cdmDestination
);
57 CdmDefaultImport
<EndnoteImportConfigurator
> endNoteImport
=
58 new CdmDefaultImport
<EndnoteImportConfigurator
>();
62 logger
.debug("Invoking Jaxb import");
64 endNoteImport
.invoke(endNoteImportConfigurator
, destination
, true);
65 } catch (URISyntaxException e
) {
74 private CdmApplicationController
initDb(ICdmDataSource db
) {
77 CdmApplicationController appCtrInit
= null;
79 appCtrInit
= TestDatabase
.initDb(db
, DbSchemaValidation
.VALIDATE
, true);
85 // Load test data to DB
86 private void loadTestData(CdmApplicationController appCtrInit
) {
88 TestDatabase
.loadTestData("", appCtrInit
);
95 public static void main(String
[] args
) {
97 EndNoteImportActivator sc
= new EndNoteImportActivator();
98 ICdmDataSource destination
= CdmDestinations
.chooseDestination(args
) != null ? CdmDestinations
.chooseDestination(args
) : cdmDestination
;
99 String file
= chooseFile(args
)!= null ?
chooseFile(args
) : importFileNameString
;
100 CdmApplicationController appCtr
= null;
101 appCtr
= sc
.initDb(destination
);
102 //sc.loadTestData(appCtr);
104 sc
.invokeImport(file
, destination
);