Project

General

Profile

« Previous | Next » 

Revision ec25be77

Added by Cherian Mathew about 9 years ago

CdmTransientEntityCacher : overriding cache field only in the case of initialised cdm entity
CdmEntitySession, ICdmEntitySession, MockCdmEntitySession : added update + delete methods
DeleteSynonymOperation, MoveFactualDataHandler : changed service call to uuid one
ChangeAcceptedTaxonToSynonymOperation, DeleteOperation, MoveTaxonOperation : calling newly added session update , insert delete methods

View differences:

eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/ChangeAcceptedTaxonToSynonymOperation.java
10 10

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

  
13
import java.util.HashSet;
14
import java.util.Set;
15

  
13 16
import org.eclipse.core.commands.ExecutionException;
14 17
import org.eclipse.core.commands.operations.IUndoContext;
15 18
import org.eclipse.core.runtime.IAdaptable;
......
20 23
import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
21 24
import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
22 25
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
26
import eu.etaxonomy.cdm.model.common.CdmBase;
23 27
import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
24 28
import eu.etaxonomy.cdm.model.taxon.Synonym;
25 29
import eu.etaxonomy.cdm.model.taxon.Taxon;
26 30
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
27
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeEvent.EventType;
28 31
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
29 32
import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
30 33
import eu.etaxonomy.taxeditor.store.CdmStore;
......
81 84
    	Taxon oldTaxon = (Taxon) HibernateProxyHelper.deproxy(((TaxonNode) taxonNode).getTaxon());
82 85

  
83 86
		synonym = CdmStore.getService(ITaxonNodeService.class).makeTaxonNodeASynonymOfAnotherTaxonNode(taxonNode.getUuid(), newAcceptedTaxonNode.getUuid(), null, null, null);
84
		cdmEntitySessionEnabled.getCdmEntitySession().addEvent(taxonNode, EventType.UPDATE);
87
		Set<CdmBase> affectedObjects = new HashSet<CdmBase>();
88
		for(Taxon taxon : synonym.getAcceptedTaxa()) {
89
		    affectedObjects.addAll(taxon.getTaxonNodes());
90
		}
91
		//FIXME:Remoting add new taxonNode.getParent to affectedObjects
92

  
93
		cdmEntitySessionEnabled.getCdmEntitySession().update(synonym, affectedObjects);
85 94

  
86 95
		monitor.worked(40);
87 96
		return postExecute(oldTaxon);

Also available in: Unified diff