import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
-import eu.etaxonomy.cdm.api.service.ITaxonService;
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
import eu.etaxonomy.cdm.model.common.CdmBase;
import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
import eu.etaxonomy.taxeditor.editor.CdmDataTransfer;
-import eu.etaxonomy.taxeditor.editor.EditorUtil;
import eu.etaxonomy.taxeditor.editor.IDropTargetable;
import eu.etaxonomy.taxeditor.editor.IMultiPageTaxonEditorPage;
import eu.etaxonomy.taxeditor.editor.ISecuredEditor;
+import eu.etaxonomy.taxeditor.editor.Messages;
import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
import eu.etaxonomy.taxeditor.editor.SimpleSelectionProvider;
import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
import eu.etaxonomy.taxeditor.model.TaxeditorPartService;
import eu.etaxonomy.taxeditor.preference.Resources;
import eu.etaxonomy.taxeditor.security.RequiredPermissions;
+import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
import eu.etaxonomy.taxeditor.store.CdmStore;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
/**
* <p>
ISelectionListener, IDropTargetable, ISecuredEditor {
/** Constant <code>ID="eu.etaxonomy.taxeditor.editor.taxon.name"</code> */
- public static final String ID = "eu.etaxonomy.taxeditor.editor.taxon.name";
+ public static final String ID = "eu.etaxonomy.taxeditor.editor.taxon.name"; //$NON-NLS-1$
private Taxon taxon;
private TaxonBase objectAffectedByLastOperation;
+ private ICdmEntitySession cdmEntitySession;
+
/**
* <p>
* Constructor for TaxonNameEditor.
* </p>
*/
public void createOrUpdateNameComposites() {
- this.taxon = (Taxon)CdmStore.getService(ITaxonService.class).load(this.getTaxon().getUuid());
+// this.taxon = (Taxon)CdmStore.getService(ITaxonService.class).load(this.getTaxon().getUuid());
ContainerFactory.createOrUpdateAcceptedTaxonsHomotypicGroup(this);
ContainerFactory.createOrUpdateHeterotypicSynonymyGroups(this);
ContainerFactory.createOrUpdateMisapplicationsGroup(this);
+
// Redraw composite
managedForm.reflow(true);
}
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell().setFocus();
if (getSelectedContainer() == null) {
throw new IllegalStateException(
- "There should always be a selected object.");
+ Messages.TaxonNameEditor_THERE_SHOULD_ALWAYS_BE);
}
getSelectedContainer().setSelected();
@Override
public void doSave(IProgressMonitor monitor) {
- monitor.beginTask("Saving names", getGroupedContainers().size());
+ monitor.beginTask(Messages.TaxonNameEditor_SAVING_NAMES, getGroupedContainers().size());
try {
// check for empty names
for (AbstractGroupedContainer container : getGroupedContainers()) {
- monitor.subTask("Saving composite: "
+ monitor.subTask(Messages.TaxonNameEditor_SAVING_COMPOSITES
+ container.getTaxonBase().getTitleCache());
container.persistName();
throws PartInitException {
if (!(input != null)) {
- throw new PartInitException("Invalid Input: Must be IEditorInput");
+ throw new PartInitException(Messages.TaxonNameEditor_INVALID_INPUT);
}
if (input.getAdapter(Taxon.class) != null) {
- taxon = (Taxon) input.getAdapter(Taxon.class);
+ taxon = CdmBase.deproxy(input.getAdapter(Taxon.class), Taxon.class);
} else {
- throw new PartInitException("Invalid Input: Taxon cannot be null");
+ throw new PartInitException(Messages.TaxonNameEditor_INVALID_INPUT_TAXON_NULL);
}
setSite(site);
/** {@inheritDoc} */
@Override
public void dispose() {
+ conversation.unregisterForDataStoreChanges(this);
super.dispose();
}
Color background = AbstractUtility.getColor(enabled ? Resources.COLOR_COMPOSITE_BACKGROUND : Resources.COLOR_TEXT_DISABLED_BACKGROUND);
setEnabled(enabled, background);
}
+
+
+
}