import java.util.Collection;
import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
-import java.util.UUID;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.action.MenuManager;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
-import eu.etaxonomy.cdm.api.service.IOccurrenceService;
import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;
import eu.etaxonomy.cdm.model.common.CdmBase;
import eu.etaxonomy.cdm.model.molecular.Sequence;
import eu.etaxonomy.taxeditor.model.IPartContentHasMedia;
import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData;
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
-import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
-import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
import eu.etaxonomy.taxeditor.store.CdmStore;
import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateContentProvider;
import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateLabelProvider;
*/
public class DerivateView extends EditorPart implements IPartContentHasFactualData, IDirtyMarkable,
IConversationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, IPartContentHasMedia,
- ISelectionChangedListener, IPostOperationEnabled , ICdmEntitySessionEnabled {
+ ISelectionChangedListener, IPostOperationEnabled{
public static final String ID = "eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView"; //$NON-NLS-1$
private ISelection selection = null;
- private final ICdmEntitySession cdmEntitySession;
private DerivateContentProvider contentProvider;
* Default constructor
*/
public DerivateView() {
- cdmEntitySession = CdmStore.getCurrentSessionManager().newSession(this, true);
}
@Override
generateMultiLinkSingleReads();
labelProvider.setMultiLinkSingleReads(multiLinkSingleReads);
IEditorInput editorInput = getEditorInput();
- viewer.setInput(((DerivateViewEditorInput) editorInput).getRootUUIDs());
+ viewer.setInput(((DerivateViewEditorInput) editorInput).getRootEntities());
//set selection to selected derivate if only one was selected
if(editorInput instanceof DerivateViewEditorInput){
- Set<UUID> derivateUUIDs = ((DerivateViewEditorInput) editorInput).getDerivateUUIDs();
- if(derivateUUIDs.size()==1){
- SpecimenOrObservationBase<?> specimen = CdmStore.getService(IOccurrenceService.class).load(derivateUUIDs.iterator().next());
- if(specimen!=null){
+ Set<SpecimenOrObservationBase<?>> derivateEntities = ((DerivateViewEditorInput) editorInput).getDerivateEntities();
+ if(derivateEntities.size()==1){
+ SpecimenOrObservationBase<?> specimen = derivateEntities.iterator().next();
+ if(specimen != null){
viewer.setSelection(new StructuredSelection(new TreeNode(specimen)));
}
}
// commit the conversation and start a new transaction immediately
conversation.commit(true);
- CdmStore.getService(IOccurrenceService.class).merge(getRootEntities());
+ ((DerivateViewEditorInput) getEditorInput()).merge();
monitor.worked(1);
this.setDirty(false);
if(!conversation.isBound()){
conversation.bind();
}
- cdmEntitySession.bind();
+ ((DerivateViewEditorInput) getEditorInput()).bind();
}
@Override
@Override
public void dispose() {
- cdmEntitySession.dispose();
+ ((DerivateViewEditorInput) getEditorInput()).dispose();
super.dispose();
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getCdmEntitySession()
- */
- @Override
- public ICdmEntitySession getCdmEntitySession() {
- return cdmEntitySession;
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getRootEntities()
- */
- @Override
- public List<SpecimenOrObservationBase> getRootEntities() {
- return contentProvider.getRootElements();
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getPropertyPathsMap()
- */
- @Override
- public Map<Object, List<String>> getPropertyPathsMap() {
- // TODO Auto-generated method stub
- return null;
- }
@Override
public boolean canAttachMedia() {