Merge branch 'develop' into remoting-4.0
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / operation / AbstractPostTaxonOperation.java
1 /**
2 * Copyright (C) 2007 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
10 package eu.etaxonomy.taxeditor.operation;
11
12 import java.util.UUID;
13
14 import org.eclipse.core.commands.operations.IUndoContext;
15
16 import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
17 import eu.etaxonomy.cdm.model.taxon.Taxon;
18 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
19 import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
20
21 /**
22 * <p>Abstract AbstractPostOperation class.</p>
23 *
24 * @author p.ciardelli
25 * @author n.hoffmann
26 * @created 14.01.2009
27 * @version 1.0
28 */
29 public abstract class AbstractPostTaxonOperation extends AbstractPostOperation<Taxon> {
30
31 /**
32 * A reference to the taxons TaxonNode
33 */
34 protected ITaxonTreeNode taxonNode;
35
36 protected UUID parentNodeUuid;
37
38
39 /**
40 * <p>Constructor for AbstractPostOperation.</p>
41 *
42 * @param label a {@link java.lang.String} object.
43 * @param undoContext a {@link org.eclipse.core.commands.operations.IUndoContext} object.
44 * @param taxon a {@link eu.etaxonomy.cdm.model.taxon.Taxon} object.
45 * @param postOperationEnabled a {@link eu.etaxonomy.taxeditor.operation.IPostOperationEnabled} object.
46 */
47 public AbstractPostTaxonOperation(String label, IUndoContext undoContext,
48 Taxon taxon, IPostOperationEnabled postOperationEnabled) {
49 super(label, undoContext, taxon, postOperationEnabled, null);
50 }
51
52 public AbstractPostTaxonOperation(String label, IUndoContext undoContext,
53 Taxon taxon, IPostOperationEnabled postOperationEnabled, ICdmEntitySessionEnabled cdmEntitySessionEnabled) {
54 super(label, undoContext, taxon, postOperationEnabled, cdmEntitySessionEnabled);
55 }
56
57 /**
58 * <p>Constructor for AbstractPostOperation.</p>
59 *
60 * @param label a {@link java.lang.String} object.
61 * @param undoContext a {@link org.eclipse.core.commands.operations.IUndoContext} object.
62 * @param taxonNode a {@link eu.etaxonomy.cdm.model.taxon.TaxonNode} object.
63 * @param postOperationEnabled a {@link eu.etaxonomy.taxeditor.operation.IPostOperationEnabled} object.
64 */
65 public AbstractPostTaxonOperation(String label, IUndoContext undoContext, TaxonNode taxonNode, IPostOperationEnabled postOperationEnabled){
66 this(label, undoContext, taxonNode, postOperationEnabled, null);
67 }
68
69 public AbstractPostTaxonOperation(String label, IUndoContext undoContext, TaxonNode taxonNode, IPostOperationEnabled postOperationEnabled, ICdmEntitySessionEnabled cdmEntitySessionEnabled){
70 this(label, undoContext, taxonNode.getTaxon(), postOperationEnabled, cdmEntitySessionEnabled);
71 this.taxonNode = taxonNode;
72 }
73
74 /**
75 * <p>Constructor for AbstractPostOperation.</p>
76 *
77 * @param label a {@link java.lang.String} object.
78 * @param undoContext a {@link org.eclipse.core.commands.operations.IUndoContext} object.
79 * @param parentNodeUuid a {@link java.util.UUID} object.
80 * @param postOperationEnabled a {@link eu.etaxonomy.taxeditor.operation.IPostOperationEnabled} object.
81 */
82 public AbstractPostTaxonOperation(String label, IUndoContext undoContext, UUID parentNodeUuid, IPostOperationEnabled postOperationEnabled){
83 super(label, undoContext, null, postOperationEnabled, null);
84 this.parentNodeUuid = parentNodeUuid;
85 }
86
87 /**
88 * <p>Constructor for AbstractPostOperation.</p>
89 *
90 * @param label a {@link java.lang.String} object.
91 * @param undoContext a {@link org.eclipse.core.commands.operations.IUndoContext} object.
92 * @param postOperationEnabled a {@link eu.etaxonomy.taxeditor.operation.IPostOperationEnabled} object.
93 */
94 public AbstractPostTaxonOperation(String label, IUndoContext undoContext,
95 IPostOperationEnabled postOperationEnabled) {
96 super(label, undoContext, null, postOperationEnabled, null);
97 }
98
99 public AbstractPostTaxonOperation(String label, IUndoContext undoContext,
100 IPostOperationEnabled postOperationEnabled, ICdmEntitySessionEnabled cdmEntitySessionEnabled) {
101 super(label, undoContext, null, postOperationEnabled, cdmEntitySessionEnabled);
102 }
103
104 /**
105 * @param text
106 * @param undoContext
107 * @param taxon
108 */
109 public AbstractPostTaxonOperation(String label, IUndoContext undoContext, Taxon taxon) {
110 this(label, undoContext, taxon, null);
111 }
112 }