package eu.etaxonomy.taxeditor.bulkeditor.handler.defaultHandler;
-import org.eclipse.core.commands.AbstractHandler;
+import java.util.UUID;
+
import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.ui.PartInitException;
+
+import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
+import eu.etaxonomy.cdm.model.taxon.TaxonNode;
+import eu.etaxonomy.taxeditor.bulkeditor.BulkEditorUtil;
+import eu.etaxonomy.taxeditor.handler.defaultHandler.DefaultOpenHandlerBase;
+import eu.etaxonomy.taxeditor.model.MessagingUtils;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+public class OpenBulkEditorForTaxonNodeHandler extends DefaultOpenHandlerBase<TaxonNode> {
-public class OpenBulkEditorForTaxonNodeHandler extends AbstractHandler {
+ @Override
+ protected TaxonNode getEntity(UUID uuid) {
+ return CdmStore.getService(ITaxonNodeService.class).load(uuid);
+ }
- @Override
- public Object execute(ExecutionEvent event) throws ExecutionException {
- System.out.println("event");
- return null;
- }
+ @Override
+ protected void open(ExecutionEvent event, TaxonNode entity) {
+ try {
+ BulkEditorUtil.openEditor(entity.getTaxon());
+ } catch (PartInitException e) {
+ MessagingUtils.error(this.getClass(), "Bulk Editor could not be opened for "+entity, e);
+ }
+ }
}