Project

General

Profile

Download (3.46 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2008 EDIT
3
* European Distributed Institute of Taxonomy 
4
* http://www.e-taxonomy.eu
5
*/
6

    
7
package eu.etaxonomy.cdm.io.common;
8

    
9
import java.util.HashSet;
10
import java.util.Set;
11

    
12
import org.apache.log4j.Logger;
13
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
14

    
15
import eu.etaxonomy.cdm.api.application.ICdmRepository;
16
import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
17
import eu.etaxonomy.cdm.common.monitor.NullProgressMonitor;
18
import eu.etaxonomy.cdm.config.Configuration;
19
import eu.etaxonomy.cdm.database.DbSchemaValidation;
20
import eu.etaxonomy.cdm.io.common.events.IIoObserver;
21

    
22
/**
23
 * Base class for all import/export configurators.
24
 * @author a.babadshanjan
25
 * @created 16.11.2008
26
 */
27
public abstract class IoConfiguratorBase extends ObservableBase implements IIoConfigurator, IIoObservable{
28
	@SuppressWarnings("unused")
29
	private static final Logger logger = Logger.getLogger(IoConfiguratorBase.class);
30

    
31
	//im-/export uses Classification for is_taxonomically_included_in relationships
32
	private boolean useClassification = true;
33
	
34
//	protected Class<ICdmIO>[] ioClassList;
35
	private DbSchemaValidation dbSchemaValidation = DbSchemaValidation.VALIDATE;
36
	
37
	protected ICdmRepository cdmApp = null;
38
	
39
	//authentification token
40
	UsernamePasswordAuthenticationToken authenticationToken;
41

    
42
	
43
	
44
	private Set<IIoObserver> observers = new HashSet<IIoObserver>();
45
	
46
	//etc
47
	private IProgressMonitor progressMonitor;
48

    
49
	
50
	/* (non-Javadoc)
51
	 * @see eu.etaxonomy.cdm.io.common.IIoConfigurator#getDbSchemaValidation()
52
	 */
53
	public DbSchemaValidation getDbSchemaValidation() {
54
		return dbSchemaValidation;
55
	}
56

    
57
	/* (non-Javadoc)
58
	 * @see eu.etaxonomy.cdm.io.common.IIoConfigurator#setDbSchemaValidation(eu.etaxonomy.cdm.database.DbSchemaValidation)
59
	 */
60
	public void setDbSchemaValidation(DbSchemaValidation dbSchemaValidation) {
61
		this.dbSchemaValidation = dbSchemaValidation;
62
	}
63
	
64
	public ICdmRepository getCdmAppController(){
65
		return this.cdmApp;
66
	}
67

    
68
	/**
69
	 * @param cdmApp the cdmApp to set
70
	 */
71
	public void setCdmAppController(ICdmRepository cdmApp) {
72
		this.cdmApp = cdmApp;
73
	}
74
		
75
	/**
76
	 * @return the useClassification
77
	 */
78
	public boolean isUseClassification() {
79
		return useClassification;
80
	}
81
	
82

    
83
	/**
84
	 * @param useClassification the useClassification to set
85
	 */
86
	public void setUseClassification(boolean useClassification) {
87
		this.useClassification = useClassification;
88
	}
89
	
90
	@Override
91
	public void setProgressMonitor(IProgressMonitor monitor) {
92
		this.progressMonitor = monitor;
93
	}
94
	
95
	public IProgressMonitor getProgressMonitor(){
96
		return progressMonitor != null ? progressMonitor : new NullProgressMonitor();
97
	}
98

    
99
	@Override
100
	public UsernamePasswordAuthenticationToken getAuthenticationToken() {
101
		return this.authenticationToken;
102
	}
103

    
104
	@Override
105
	public void setAuthenticationToken(UsernamePasswordAuthenticationToken authenticationToken) {
106
		this.authenticationToken = authenticationToken;
107
		
108
	}
109

    
110
	@Override
111
	public void setAuthentication(String login, String password) {
112
		UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(login, password);
113
		this.authenticationToken = token;
114
	}
115
	
116
	/* (non-Javadoc)
117
	 * @see eu.etaxonomy.cdm.io.common.IIoConfigurator#authenticateAsDefaultAdmin()
118
	 */
119
	@Override
120
	public void authenticateAsDefaultAdmin() {
121
		setAuthentication(Configuration.adminLogin, Configuration.adminPassword);
122
	}
123

    
124
	
125
}
(49-49/71)