Project

General

Profile

« Previous | Next » 

Revision 27e3249a

Added by Cherian Mathew almost 11 years ago

with the move to term types in model change 3.3 we no longer need term specific editor inputs, all term specific inputs have been deleted.
TermEditorInput : sincle term editor input which handles all cases (for all term types)
AbstractDefinedTermEditorInput : removed need for term classes.

View differences:

.gitattributes
1083 1083
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/OpenDefinedTermEditorHandler.java -text
1084 1084
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/OpenDefinedTermMenu.java -text
1085 1085
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/AbstractDefinedTermEditorInput.java -text
1086
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/DefinedTermEditorInputFactory.java -text
1087
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/ExtensionTypeEditorInput.java -text
1088
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/FeatureEditorInput.java -text
1089
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/MarkerTypeEditorInput.java -text
1090
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/ModifierEditorInput.java -text
1091
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/NamedAreaEditorInput.java -text
1092
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/NamedAreaLevelEditorInput.java -text
1093
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/StateEditorInput.java -text
1086
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/TermEditorInput.java -text
1094 1087
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/CreateDefinedTermOperation.java -text
1095 1088
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/CreateTermVocabularyOperation.java -text
1096 1089
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/DeleteTermBaseOperation.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/AbstractDefinedTermEditorInput.java
59 59
	/**
60 60
	 * @return
61 61
	 */
62
	public abstract List<String> getTermClasses();
63
	
64
	public abstract T createTermInstance();
65
	
66
	public Class<? extends DefinedTermBase> getTermClass() {
67
		
68
		return createTermInstance().getClass();
69
	}
62
	public abstract List<String> getTermClasses();		
70 63

  
64
	
71 65
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/DefinedTermEditorInputFactory.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import org.eclipse.ui.IEditorInput;
13

  
14
import eu.etaxonomy.cdm.model.common.DefinedTerm;
15
import eu.etaxonomy.cdm.model.common.DefinedTermBase;
16
import eu.etaxonomy.cdm.model.common.ExtensionType;
17
import eu.etaxonomy.cdm.model.common.MarkerType;
18
import eu.etaxonomy.cdm.model.description.Feature;
19

  
20
import eu.etaxonomy.cdm.model.description.State;
21
import eu.etaxonomy.cdm.model.location.NamedArea;
22
import eu.etaxonomy.cdm.model.location.NamedAreaLevel;
23

  
24
/**
25
 * @author l.morris
26
 * @date 3 Jan 2012
27
 *
28
 */
29
public class DefinedTermEditorInputFactory {
30

  
31
//	public static final String NamedArea = "eu.etaxonomy.taxeditor.editor.namedArea";
32

  
33
	/**
34
	 * @param clazz
35
	 * @return
36
	 */
37
	public static IEditorInput NewInstance(Class<? extends DefinedTermBase> clazz) {
38
		if(clazz == NamedArea.class){
39
			return new NamedAreaEditorInput();
40
		} 
41
		if (clazz == NamedAreaLevel.class){
42
			return new NamedAreaLevelEditorInput();
43
		}
44
		if (clazz == ExtensionType.class){
45
			return new ExtensionTypeEditorInput();
46
		}
47
		if (clazz == MarkerType.class){
48
			return new MarkerTypeEditorInput();
49
		}
50
		if (clazz == Feature.class){
51
			return new FeatureEditorInput();
52
		}
53
		if (clazz == State.class){
54
			return new StateEditorInput();
55
		}
56
		if (clazz == DefinedTerm.class){
57
			return new ModifierEditorInput();
58
		}
59
		
60
		return null;
61
	}
62

  
63
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/ExtensionTypeEditorInput.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import java.util.Arrays;
13
import java.util.List;
14

  
15
import eu.etaxonomy.cdm.model.common.ExtensionType;
16

  
17
/**
18
 * @author l.morris
19
 * @date 6 Jan 2012
20
 *
21
 */
22
public class ExtensionTypeEditorInput extends AbstractDefinedTermEditorInput<ExtensionType> {
23
	
24
	private List<String> termClasses = Arrays.asList(new String[]{
25
			ExtensionType.class.getName()
26
	});
27

  
28
	/* (non-Javadoc)
29
	 * @see org.eclipse.ui.IEditorInput#getName()
30
	 */
31
	@Override
32
	public String getName() {
33
		return "Extension Type";
34
	}
35

  
36
	/* (non-Javadoc)
37
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()
38
	 */
39
	@Override
40
	public List<String> getTermClasses() {
41
		return termClasses;
42
	}
43

  
44
	/* (non-Javadoc)
45
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()
46
	 */
47
	@Override
48
	public ExtensionType createTermInstance() {
49
		return ExtensionType.NewInstance();
50
	}
51

  
52
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/FeatureEditorInput.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import java.util.Arrays;
13
import java.util.List;
14

  
15
import eu.etaxonomy.cdm.model.description.Feature;
16
/**
17
 * @author l.morris
18
 * @date 11 Jan 2012
19
 *
20
 */
21
public class FeatureEditorInput extends AbstractDefinedTermEditorInput<Feature> {
22

  
23
	private List<String> termClasses = Arrays.asList(new String[]{
24
			Feature.class.getName()
25
	});
26
	/* (non-Javadoc)
27
	 * @see org.eclipse.ui.IEditorInput#getName()
28
	 */
29
	@Override
30
	public String getName() {
31
		return "Feature";
32
	}
33

  
34
	/* (non-Javadoc)
35
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
36
	 */
37
	@Override
38
	public List<String> getTermClasses() {
39
		return termClasses;
40
	}
41

  
42
	/* (non-Javadoc)
43
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()
44
	 */
45
	@Override
46
	public Feature createTermInstance() {
47
		return Feature.NewInstance();
48
	}
49

  
50
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/MarkerTypeEditorInput.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import java.util.Arrays;
13
import java.util.List;
14

  
15
import eu.etaxonomy.cdm.model.common.MarkerType;
16

  
17
/**
18
 * @author l.morris
19
 * @date 6 Jan 2012
20
 *
21
 */
22
public class MarkerTypeEditorInput extends AbstractDefinedTermEditorInput<MarkerType> {
23
	
24
	private List<String> termClasses = Arrays.asList(new String[]{
25
			MarkerType.class.getName()
26
	});
27

  
28
	/* (non-Javadoc)
29
	 * @see org.eclipse.ui.IEditorInput#getName()
30
	 */
31
	@Override
32
	public String getName() {
33
		return "Marker Type";
34
	}
35

  
36
	/* (non-Javadoc)
37
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()
38
	 */
39
	@Override
40
	public List<String> getTermClasses() {
41
		return termClasses;
42
	}
43

  
44
	/* (non-Javadoc)
45
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()
46
	 */
47
	@Override
48
	public MarkerType createTermInstance() {
49
		return new MarkerType();
50
	}
51
	
52
	
53

  
54
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/ModifierEditorInput.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import java.util.Arrays;
13
import java.util.List;
14

  
15
import eu.etaxonomy.cdm.model.common.DefinedTerm;
16

  
17

  
18

  
19
/**
20
 * @author n.hoffmann
21
 * @date Jan 24, 2012
22
 *
23
 */
24
public class ModifierEditorInput extends AbstractDefinedTermEditorInput<DefinedTerm> {
25

  
26
	private List<String> termClasses = Arrays.asList(new String[]{
27
			DefinedTerm.class.getName()
28
	});
29
	
30
	/* (non-Javadoc)
31
	 * @see org.eclipse.ui.IEditorInput#getName()
32
	 */
33
	@Override
34
	public String getName() {
35
		return "Modifier";
36
	}
37

  
38
	/* (non-Javadoc)
39
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
40
	 */
41
	@Override
42
	public List<String> getTermClasses() {
43
		return termClasses;
44
	}
45

  
46
	/* (non-Javadoc)
47
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()
48
	 */
49
	@Override
50
	public DefinedTerm createTermInstance() {
51
		return DefinedTerm.NewInstance();
52
	}
53

  
54
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/NamedAreaEditorInput.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import java.util.Arrays;
13
import java.util.List;
14

  
15
import eu.etaxonomy.cdm.model.location.Continent;
16
import eu.etaxonomy.cdm.model.location.NamedArea;
17
import eu.etaxonomy.cdm.model.location.WaterbodyOrCountry;
18

  
19
/**
20
 * @author l.morris
21
 * @date 8 Dec 2011
22
 *
23
 */
24
public class NamedAreaEditorInput extends AbstractDefinedTermEditorInput<NamedArea> {
25

  
26
	private List<String> termClasses = Arrays.asList(new String[]{
27
			NamedArea.class.getName(), 			
28
			WaterbodyOrCountry.class.getName(),
29
			Continent.class.getName()
30
	});
31
	
32
	/* (non-Javadoc)
33
	 * @see org.eclipse.ui.IEditorInput#getName()
34
	 */
35
	@Override
36
	public String getName() {
37
		return "Named Area";
38
	}
39

  
40
	/* (non-Javadoc)
41
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()
42
	 */
43
	@Override
44
	public List<String> getTermClasses() {
45
		return termClasses;
46
	}
47

  
48
	/* (non-Javadoc)
49
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()
50
	 */
51
	@Override
52
	public NamedArea createTermInstance() {
53
		 return NamedArea.NewInstance();
54
	}
55
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/NamedAreaLevelEditorInput.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import java.util.Arrays;
13
import java.util.List;
14

  
15
import eu.etaxonomy.cdm.model.location.NamedAreaLevel;
16

  
17
/**
18
 * @author l.morris
19
 * @date 4 Jan 2012
20
 *
21
 */
22
public class NamedAreaLevelEditorInput extends AbstractDefinedTermEditorInput<NamedAreaLevel> {
23

  
24
	
25
	private List<String> termClasses = Arrays.asList(new String[]{
26
			NamedAreaLevel.class.getName()
27
	});
28
	
29
	/* (non-Javadoc)
30
	 * @see org.eclipse.ui.IEditorInput#getName()
31
	 */
32
	@Override
33
	public String getName() {
34
		return "Named Area Level";
35
	}
36

  
37
	/* (non-Javadoc)
38
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()
39
	 */
40
	@Override
41
	public List<String> getTermClasses() {
42
		return termClasses;
43
	}
44

  
45
	/* (non-Javadoc)
46
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()
47
	 */
48
	@Override
49
	public NamedAreaLevel createTermInstance() {
50
		return NamedAreaLevel.NewInstance();
51
	}
52

  
53
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/StateEditorInput.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import java.util.Arrays;
13
import java.util.List;
14

  
15
import eu.etaxonomy.cdm.model.description.State;
16

  
17
/**
18
 * @author n.hoffmann
19
 * @date Jan 24, 2012
20
 *
21
 */
22
public class StateEditorInput extends AbstractDefinedTermEditorInput<State> {
23

  
24
	private List<String> termClasses = Arrays.asList(new String[]{
25
			State.class.getName()
26
	});
27
	
28
	/* (non-Javadoc)
29
	 * @see org.eclipse.ui.IEditorInput#getName()
30
	 */
31
	@Override
32
	public String getName() {
33
		return "State";
34
	}
35

  
36
	/* (non-Javadoc)
37
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
38
	 */
39
	@Override
40
	public List<String> getTermClasses() {
41
		return termClasses;
42
	}
43

  
44
	/* (non-Javadoc)
45
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()
46
	 */
47
	@Override
48
	public State createTermInstance() {
49
		return State.NewInstance();
50
	}
51

  
52
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/TermEditorInput.java
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.definedterm.input;
11

  
12
import java.util.Arrays;
13
import java.util.HashSet;
14
import java.util.List;
15
import java.util.Set;
16

  
17
import eu.etaxonomy.cdm.api.service.IVocabularyService;
18
import eu.etaxonomy.cdm.model.common.DefinedTerm;
19
import eu.etaxonomy.cdm.model.common.DefinedTermBase;
20
import eu.etaxonomy.cdm.model.common.TermType;
21
import eu.etaxonomy.cdm.model.common.TermVocabulary;
22
import eu.etaxonomy.taxeditor.store.CdmStore;
23

  
24

  
25

  
26
/**
27
 * @author n.hoffmann
28
 * @date Jan 24, 2012
29
 *
30
 */
31
public class TermEditorInput extends AbstractDefinedTermEditorInput<DefinedTerm> {
32

  
33
	private TermType termType;
34
	private Set<TermVocabulary<DefinedTermBase>> vocabularies;
35
	private List<String> termClasses = Arrays.asList(new String[]{
36
			DefinedTerm.class.getName()
37
	});
38
	
39
	public TermEditorInput(TermType termType) {
40
		this.termType = termType;
41
		vocabularies = new HashSet<TermVocabulary<DefinedTermBase>>();
42
		initialiseVocabularies();
43
	}
44
	/* (non-Javadoc)
45
	 * @see org.eclipse.ui.IEditorInput#getName()
46
	 */
47
	@Override
48
	public String getName() {
49
		return termType.getMessage();
50
	}
51

  
52
	/* (non-Javadoc)
53
	 * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
54
	 */
55
	@Override
56
	public List<String> getTermClasses() {
57
		return termClasses;
58
	}
59
	
60
	public TermType getTermType() {
61
		return termType;
62
	}
63
	
64
	public void initialiseVocabularies() {
65
		if(vocabularies != null) {
66
			vocabularies.clear();
67
		} 
68
		List<TermVocabulary<DefinedTermBase>> vocs = CdmStore.getService(IVocabularyService.class).findByTermType(termType);
69
		vocabularies.addAll(vocs);			
70
	}
71
	
72
	public Set<TermVocabulary<DefinedTermBase>> getVocabularies() {
73
		return vocabularies;
74
	}
75

  
76
}

Also available in: Unified diff