Project

General

Profile

« Previous | Next » 

Revision 95ee1b51

Added by U-BGBM\k.luther over 8 years ago

moving more than one taxon node, merge of team and person, reusing name for new taxon

View differences:

eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/MoveTaxonOperation.java
9 9

  
10 10
package eu.etaxonomy.taxeditor.navigation.navigator.operation;
11 11

  
12
import java.util.HashMap;
13
import java.util.HashSet;
14
import java.util.Map;
15 12
import java.util.Set;
16 13
import java.util.UUID;
17 14

  
......
22 19
import org.eclipse.core.runtime.IStatus;
23 20
import org.eclipse.core.runtime.Status;
24 21

  
25
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
26 22
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
27 23
import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
28 24
import eu.etaxonomy.cdm.api.service.UpdateResult;
29 25
import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
30
import eu.etaxonomy.cdm.model.taxon.IllegalAncestryException;
31
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
32 26
import eu.etaxonomy.taxeditor.model.MessagingUtils;
33 27
import eu.etaxonomy.taxeditor.operation.AbstractPersistentPostOperation;
34 28
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
......
46 40
	/**
47 41
	 * A reference to the new taxonomical parent.
48 42
	 */
49
	private ITaxonTreeNode newParentTreeNode;
43
	private final ITaxonTreeNode newParentTreeNode;
50 44
	/**
51 45
	 * A reference to the former taxonomical parents
52 46
	 */
53 47
	//private Map<TaxonNode, ITaxonTreeNode> oldParentTreeNodes;
54 48

  
55
	private TaxonNode taxonNode;
56
	private boolean moveToParentNode;
49
	private final Set<UUID> taxonNodesUuid;
50
	private final boolean moveToParentNode;
57 51
	/**
58 52
	 * <p>Constructor for MoveTaxonOperation.</p>
59 53
	 *
......
65 59
	 * @param conversationEnabled a {@link eu.etaxonomy.cdm.api.conversation.IConversationEnabled} object.
66 60
	 */
67 61
	public MoveTaxonOperation(String label, IUndoContext undoContext,
68
			TaxonNode taxonNodeToMove, ITaxonTreeNode newParentTreeNode, IPostOperationEnabled postOperationEnabled, IConversationEnabled conversationEnabled, boolean moveToParentNode) {
62
			Set<UUID> taxonNodesUUIDToMove, ITaxonTreeNode newParentTreeNode, IPostOperationEnabled postOperationEnabled, IConversationEnabled conversationEnabled, boolean moveToParentNode) {
69 63
		super(label, undoContext, postOperationEnabled, conversationEnabled);
70
		
71
		this.taxonNode = taxonNodeToMove;
64

  
65
		this.taxonNodesUuid = taxonNodesUUIDToMove;
72 66
		/*for (TaxonNode node:taxonNodes){
73 67
			this.taxonNodes.add(service.load(node.getUuid()));
74 68
		}*/
75
		
69

  
76 70
		this.newParentTreeNode = newParentTreeNode;
77 71
		this.moveToParentNode = moveToParentNode;
78 72
		// Save old parent ITaxonTreeNodes for undo
79
		
73

  
80 74
		//this.parentNode = taxonNode.getParent();
81 75
	}
82 76

  
......
90 84
		bind();
91 85
		monitor.worked(20);
92 86

  
93
		UpdateResult result = CdmStore.getService(ITaxonNodeService.class).moveTaxonNode(this.taxonNode.getUuid(),newParentTreeNode.getUuid(), moveToParentNode);
87
		UpdateResult result = CdmStore.getService(ITaxonNodeService.class).moveTaxonNodes(this.taxonNodesUuid,newParentTreeNode.getUuid());
94 88
//		try {
95 89
//			for (TaxonNode taxonNode : taxonNodes){
96 90
//				TaxonNode newTaxonNode = newParentTreeNode.addChildNode(taxonNode,
97 91
//						newParentTreeNode.getReference(), newParentTreeNode.getMicroReference());
98 92
//				//taxonNodes.add(newTaxonNode);
99
//				
93
//
100 94
//				monitor.worked(2);
101 95
//			}
102 96
//		} catch(IllegalAncestryException e) {

Also available in: Unified diff