Merge branch 'release/5.18.0'
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / featuretree / e4 / IFeatureTreeEditor.java
1 /**
2 * Copyright (C) 2018 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 *
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.
8 */
9 package eu.etaxonomy.taxeditor.featuretree.e4;
10
11 import java.util.UUID;
12
13 import org.eclipse.jface.viewers.TreeViewer;
14
15 import eu.etaxonomy.cdm.model.term.DefinedTermBase;
16 import eu.etaxonomy.cdm.model.term.TermNode;
17 import eu.etaxonomy.cdm.model.term.TermType;
18 import eu.etaxonomy.cdm.persistence.dto.TermNodeDto;
19 import eu.etaxonomy.cdm.persistence.dto.TermTreeDto;
20 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
21 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
22 import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
23 import eu.etaxonomy.taxeditor.workbench.part.IE4SavablePart;
24
25 /**
26 * @author pplitzner
27 * @since Nov 22, 2018
28 */
29 public interface IFeatureTreeEditor<T extends DefinedTermBase> extends IPostOperationEnabled, IE4SavablePart, ICdmEntitySessionEnabled {
30
31 public TermType getTermType();
32
33 public TermNodeDto getNodeDtoForUuid(UUID nodeUuid);
34 public TermTreeDto getTreeDtoForUuid(UUID treeUuid);
35 public void setNodeDtoForUuid(TermNodeDto node);
36 public void setTreeDtoForUuid(TermTreeDto tree);
37 public boolean checkDuplicates(UUID termUuid, UUID treeUuid) ;
38
39
40 public void addOperation(AbstractPostOperation<TermNode> operation);
41
42 public void setDirty();
43
44 public TreeViewer getViewer();
45 public void refresh();
46
47
48 }