2 * Copyright (C) 2008 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 package eu
.etaxonomy
.cdm
.io
.common
;
8 import org
.apache
.logging
.log4j
.LogManager
;
9 import org
.apache
.logging
.log4j
.Logger
;
10 import org
.springframework
.security
.authentication
.UsernamePasswordAuthenticationToken
;
12 import eu
.etaxonomy
.cdm
.api
.application
.ICdmApplication
;
13 import eu
.etaxonomy
.cdm
.common
.monitor
.IProgressMonitor
;
14 import eu
.etaxonomy
.cdm
.common
.monitor
.NullProgressMonitor
;
15 import eu
.etaxonomy
.cdm
.config
.Configuration
;
16 import eu
.etaxonomy
.cdm
.database
.DbSchemaValidation
;
17 import eu
.etaxonomy
.cdm
.persistence
.dao
.hibernate
.common
.DaoBase
;
18 import eu
.etaxonomy
.cdm
.persistence
.hibernate
.HibernateConfiguration
;
21 * Base class for all import/export configurators.
23 * @author a.babadshanjan
26 public abstract class IoConfiguratorBase
extends ObservableBase
implements IIoConfigurator
{
28 private static final long serialVersionUID
= -2254648962451309933L;
30 @SuppressWarnings("unused")
31 private static final Logger logger
= LogManager
.getLogger();
33 public static final boolean NO_UNPUBLISHED
= DaoBase
.NO_UNPUBLISHED
;
34 public static final boolean INCLUDE_UNPUBLISHED
= DaoBase
.INCLUDE_UNPUBLISHED
;
36 // protected Class<ICdmIO>[] ioClassList;
37 private DbSchemaValidation dbSchemaValidation
= DbSchemaValidation
.VALIDATE
;
39 protected ICdmApplication cdmApp
= null;
41 //authentification token
42 protected UsernamePasswordAuthenticationToken authenticationToken
;
44 protected HibernateConfiguration hibernateConfig
= HibernateConfiguration
.NewDefaultInstance();
47 private IProgressMonitor progressMonitor
;
48 private String userFriendlyIOName
;
51 public String
getUserFriendlyIOName() {
52 return userFriendlyIOName
;
54 public void setUserFriendlyIOName(String userFriendlyIOName
) {
55 this.userFriendlyIOName
= userFriendlyIOName
;
59 public DbSchemaValidation
getDbSchemaValidation() {
60 return dbSchemaValidation
;
64 public void setDbSchemaValidation(DbSchemaValidation dbSchemaValidation
) {
65 this.dbSchemaValidation
= dbSchemaValidation
;
69 public ICdmApplication
getCdmAppController(){
73 public void setCdmAppController(ICdmApplication cdmApp
) {
78 public void setProgressMonitor(IProgressMonitor monitor
) {
79 this.progressMonitor
= monitor
;
83 public IProgressMonitor
getProgressMonitor(){
84 return progressMonitor
!= null ? progressMonitor
: new NullProgressMonitor();
88 public UsernamePasswordAuthenticationToken
getAuthenticationToken() {
89 return this.authenticationToken
;
92 public void setAuthenticationToken(UsernamePasswordAuthenticationToken authenticationToken
) {
93 this.authenticationToken
= authenticationToken
;
97 public void setAuthentication(String login
, String password
) {
98 UsernamePasswordAuthenticationToken token
= new UsernamePasswordAuthenticationToken(login
, password
);
99 this.authenticationToken
= token
;
103 public void authenticateAsDefaultAdmin() {
104 setAuthenticationToken(new UsernamePasswordAuthenticationToken(Configuration
.adminLogin
, Configuration
.adminPassword
));
108 public HibernateConfiguration
getHibernateConfig() {
109 return hibernateConfig
;