2 * Copyright (C) 2014 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
.taxeditor
.httpinvoker
;
11 import org
.apache
.log4j
.Level
;
12 import org
.apache
.log4j
.Logger
;
13 import org
.junit
.AfterClass
;
14 import org
.junit
.Assert
;
15 import org
.junit
.BeforeClass
;
16 import org
.junit
.Ignore
;
17 import org
.junit
.Test
;
18 import org
.unitils
.UnitilsJUnit4
;
19 import org
.unitils
.database
.DatabaseUnitils
;
20 import org
.unitils
.database
.annotations
.Transactional
;
21 import org
.unitils
.database
.util
.TransactionMode
;
23 import eu
.etaxonomy
.cdm
.api
.application
.CdmApplicationRemoteController
;
24 import eu
.etaxonomy
.cdm
.api
.application
.ICdmApplicationConfiguration
;
25 import eu
.etaxonomy
.cdm
.model
.name
.NomenclaturalCode
;
26 import eu
.etaxonomy
.cdm
.remote
.CdmPersistentRemoteSource
;
27 import eu
.etaxonomy
.cdm
.remote
.CdmRemoteSource
;
28 import eu
.etaxonomy
.cdm
.remote
.CdmRemoteSourceException
;
29 import eu
.etaxonomy
.cdm
.remote
.ICdmRemoteSource
;
33 * Base class for remoting tests, responsible for
34 * - starting / stop the cdm server
35 * - running some basic connection tests
36 * - setting up the remote configuration.
39 @Transactional(TransactionMode
.DISABLED
)
40 public class BaseRemotingTest
extends UnitilsJUnit4
{
41 private static final Logger logger
= Logger
.getLogger(BaseRemotingTest
.class);
43 private static ICdmApplicationConfiguration remoteApplicationController
;
44 private static ICdmRemoteSource cdmRemoteSource
;
45 private static CdmPersistentRemoteSource remotePersistentSource
;
47 private static boolean stoppingServer
= false;
50 public static void initializeBaseRemotingTest() {
51 Logger
.getRootLogger().setLevel(Level
.INFO
);
53 //DatabaseUnitils.disableConstraints();
55 CDMServer
.getInstance().start();
56 } catch (Exception e
) {
58 Assert
.fail("Server failed to start. Reason : " + e
.getMessage());
60 cdmRemoteSource
= CdmRemoteSource
.NewInstance(CDMServer
.getInstance().getName(),
61 CDMServer
.getInstance().getHost(),
62 CDMServer
.getInstance().getPort(),
63 CDMServer
.getInstance().getContextPath(),
64 NomenclaturalCode
.ICNAFP
);
65 remoteApplicationController
=
66 CdmApplicationRemoteController
.NewInstance(cdmRemoteSource
,
72 remotePersistentSource
= CdmPersistentRemoteSource
.NewInstance("default");
73 } catch (CdmRemoteSourceException e
) {
74 Assert
.fail("Default Remote Persistent Source failed to load. Reason : " + e
.getMessage());
80 protected static ICdmApplicationConfiguration
getRemoteApplicationController() {
81 return remoteApplicationController
;
84 protected static ICdmRemoteSource
getCdmRemoteSource() {
85 return cdmRemoteSource
;
88 protected static CdmPersistentRemoteSource
getCdmPersistentRemoteSource() {
89 return remotePersistentSource
;
93 public static void cleanup() {
95 CDMServer
.getInstance().stop();
96 } catch (Exception e
) {
97 Assert
.fail("Server could not be stopped. Reason : " + e
.getMessage());