TermEditorInput : sincle term editor input which handles all cases (for all term types)
AbstractDefinedTermEditorInput : removed need for term classes.
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/OpenDefinedTermEditorHandler.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/OpenDefinedTermMenu.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/AbstractDefinedTermEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/DefinedTermEditorInputFactory.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/ExtensionTypeEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/FeatureEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/MarkerTypeEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/ModifierEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/NamedAreaEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/NamedAreaLevelEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/StateEditorInput.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/TermEditorInput.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/CreateDefinedTermOperation.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/CreateTermVocabularyOperation.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/DeleteTermBaseOperation.java -text
/**\r
* @return\r
*/\r
- public abstract List<String> getTermClasses();\r
- \r
- public abstract T createTermInstance();\r
- \r
- public Class<? extends DefinedTermBase> getTermClass() {\r
- \r
- return createTermInstance().getClass();\r
- }\r
+ public abstract List<String> getTermClasses(); \r
\r
+ \r
}
\ No newline at end of file
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import org.eclipse.ui.IEditorInput;\r
-\r
-import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
-import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
-import eu.etaxonomy.cdm.model.common.ExtensionType;\r
-import eu.etaxonomy.cdm.model.common.MarkerType;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-\r
-import eu.etaxonomy.cdm.model.description.State;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
-import eu.etaxonomy.cdm.model.location.NamedAreaLevel;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 3 Jan 2012\r
- *\r
- */\r
-public class DefinedTermEditorInputFactory {\r
-\r
-// public static final String NamedArea = "eu.etaxonomy.taxeditor.editor.namedArea";\r
-\r
- /**\r
- * @param clazz\r
- * @return\r
- */\r
- public static IEditorInput NewInstance(Class<? extends DefinedTermBase> clazz) {\r
- if(clazz == NamedArea.class){\r
- return new NamedAreaEditorInput();\r
- } \r
- if (clazz == NamedAreaLevel.class){\r
- return new NamedAreaLevelEditorInput();\r
- }\r
- if (clazz == ExtensionType.class){\r
- return new ExtensionTypeEditorInput();\r
- }\r
- if (clazz == MarkerType.class){\r
- return new MarkerTypeEditorInput();\r
- }\r
- if (clazz == Feature.class){\r
- return new FeatureEditorInput();\r
- }\r
- if (clazz == State.class){\r
- return new StateEditorInput();\r
- }\r
- if (clazz == DefinedTerm.class){\r
- return new ModifierEditorInput();\r
- }\r
- \r
- return null;\r
- }\r
-\r
-}\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.common.ExtensionType;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 6 Jan 2012\r
- *\r
- */\r
-public class ExtensionTypeEditorInput extends AbstractDefinedTermEditorInput<ExtensionType> {\r
- \r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- ExtensionType.class.getName()\r
- });\r
-\r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Extension Type";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public ExtensionType createTermInstance() {\r
- return ExtensionType.NewInstance();\r
- }\r
-\r
-}\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-/**\r
- * @author l.morris\r
- * @date 11 Jan 2012\r
- *\r
- */\r
-public class FeatureEditorInput extends AbstractDefinedTermEditorInput<Feature> {\r
-\r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- Feature.class.getName()\r
- });\r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Feature";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public Feature createTermInstance() {\r
- return Feature.NewInstance();\r
- }\r
-\r
-}\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.common.MarkerType;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 6 Jan 2012\r
- *\r
- */\r
-public class MarkerTypeEditorInput extends AbstractDefinedTermEditorInput<MarkerType> {\r
- \r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- MarkerType.class.getName()\r
- });\r
-\r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Marker Type";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public MarkerType createTermInstance() {\r
- return new MarkerType();\r
- }\r
- \r
- \r
-\r
-}\r
+++ /dev/null
-// $Id$
-/**
-* Copyright (C) 2009 EDIT
-* European Distributed Institute of Taxonomy
-* http://www.e-taxonomy.eu
-*
-* The contents of this file are subject to the Mozilla Public License Version 1.1
-* See LICENSE.TXT at the top of this package for the full license terms.
-*/
-package eu.etaxonomy.taxeditor.editor.definedterm.input;
-
-import java.util.Arrays;
-import java.util.List;
-
-import eu.etaxonomy.cdm.model.common.DefinedTerm;
-
-
-
-/**
- * @author n.hoffmann
- * @date Jan 24, 2012
- *
- */
-public class ModifierEditorInput extends AbstractDefinedTermEditorInput<DefinedTerm> {
-
- private List<String> termClasses = Arrays.asList(new String[]{
- DefinedTerm.class.getName()
- });
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#getName()
- */
- @Override
- public String getName() {
- return "Modifier";
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
- */
- @Override
- public List<String> getTermClasses() {
- return termClasses;
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()
- */
- @Override
- public DefinedTerm createTermInstance() {
- return DefinedTerm.NewInstance();
- }
-
-}
\ No newline at end of file
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.location.Continent;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
-import eu.etaxonomy.cdm.model.location.WaterbodyOrCountry;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 8 Dec 2011\r
- *\r
- */\r
-public class NamedAreaEditorInput extends AbstractDefinedTermEditorInput<NamedArea> {\r
-\r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- NamedArea.class.getName(), \r
- WaterbodyOrCountry.class.getName(),\r
- Continent.class.getName()\r
- });\r
- \r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Named Area";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public NamedArea createTermInstance() {\r
- return NamedArea.NewInstance();\r
- }\r
-}\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.location.NamedAreaLevel;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 4 Jan 2012\r
- *\r
- */\r
-public class NamedAreaLevelEditorInput extends AbstractDefinedTermEditorInput<NamedAreaLevel> {\r
-\r
- \r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- NamedAreaLevel.class.getName()\r
- });\r
- \r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Named Area Level";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public NamedAreaLevel createTermInstance() {\r
- return NamedAreaLevel.NewInstance();\r
- }\r
-\r
-}\r
+++ /dev/null
-// $Id$
-/**
-* Copyright (C) 2009 EDIT
-* European Distributed Institute of Taxonomy
-* http://www.e-taxonomy.eu
-*
-* The contents of this file are subject to the Mozilla Public License Version 1.1
-* See LICENSE.TXT at the top of this package for the full license terms.
-*/
-package eu.etaxonomy.taxeditor.editor.definedterm.input;
-
-import java.util.Arrays;
-import java.util.List;
-
-import eu.etaxonomy.cdm.model.description.State;
-
-/**
- * @author n.hoffmann
- * @date Jan 24, 2012
- *
- */
-public class StateEditorInput extends AbstractDefinedTermEditorInput<State> {
-
- private List<String> termClasses = Arrays.asList(new String[]{
- State.class.getName()
- });
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#getName()
- */
- @Override
- public String getName() {
- return "State";
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
- */
- @Override
- public List<String> getTermClasses() {
- return termClasses;
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()
- */
- @Override
- public State createTermInstance() {
- return State.NewInstance();
- }
-
-}
--- /dev/null
+// $Id$
+/**
+* Copyright (C) 2009 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.editor.definedterm.input;
+
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import eu.etaxonomy.cdm.api.service.IVocabularyService;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
+import eu.etaxonomy.cdm.model.common.DefinedTermBase;
+import eu.etaxonomy.cdm.model.common.TermType;
+import eu.etaxonomy.cdm.model.common.TermVocabulary;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+
+
+/**
+ * @author n.hoffmann
+ * @date Jan 24, 2012
+ *
+ */
+public class TermEditorInput extends AbstractDefinedTermEditorInput<DefinedTerm> {
+
+ private TermType termType;
+ private Set<TermVocabulary<DefinedTermBase>> vocabularies;
+ private List<String> termClasses = Arrays.asList(new String[]{
+ DefinedTerm.class.getName()
+ });
+
+ public TermEditorInput(TermType termType) {
+ this.termType = termType;
+ vocabularies = new HashSet<TermVocabulary<DefinedTermBase>>();
+ initialiseVocabularies();
+ }
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.IEditorInput#getName()
+ */
+ @Override
+ public String getName() {
+ return termType.getMessage();
+ }
+
+ /* (non-Javadoc)
+ * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
+ */
+ @Override
+ public List<String> getTermClasses() {
+ return termClasses;
+ }
+
+ public TermType getTermType() {
+ return termType;
+ }
+
+ public void initialiseVocabularies() {
+ if(vocabularies != null) {
+ vocabularies.clear();
+ }
+ List<TermVocabulary<DefinedTermBase>> vocs = CdmStore.getService(IVocabularyService.class).findByTermType(termType);
+ vocabularies.addAll(vocs);
+ }
+
+ public Set<TermVocabulary<DefinedTermBase>> getVocabularies() {
+ return vocabularies;
+ }
+
+}
\ No newline at end of file