+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean performFinish() {
+ boolean performFinish = super.performFinish();
+
+ IHandlerService handlerService = (IHandlerService) AbstractUtility.getService(IHandlerService.class);
+
+ //get the command from plugin.xml
+ IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
+ ICommandService cmdService = (ICommandService)window.getService(ICommandService.class);
+ Command command = cmdService.getCommand("eu.etaxonomy.taxeditor.editor.openSpecimenEditor");
+ Map<String, UUID> parameters = new HashMap<String, UUID>();
+ parameters.put("eu.etaxonomy.taxeditor.specimenUuidParameter", getEntity().getUuid());
+ ParameterizedCommand parameterizedCommand = ParameterizedCommand.generateCommand(command, parameters);
+
+ //execute the command
+ try {
+ handlerService.executeCommand(parameterizedCommand, null);
+ } catch (ExecutionException e) {
+ MessagingUtils.error(DerivateSearchCompositeController.class, e);
+ } catch (NotDefinedException e) {
+ MessagingUtils.error(DerivateSearchCompositeController.class, e);
+ } catch (NotEnabledException e) {
+ MessagingUtils.error(DerivateSearchCompositeController.class, e);
+ } catch (NotHandledException e) {
+ MessagingUtils.error(DerivateSearchCompositeController.class, e);
+ }
+
+ return performFinish;
+ }
+