1 package eu
.etaxonomy
.taxeditor
.editor
.view
.derivate
.handler
;
5 import org
.eclipse
.core
.commands
.ExecutionEvent
;
6 import org
.eclipse
.ui
.PartInitException
;
8 import eu
.etaxonomy
.cdm
.api
.service
.IOccurrenceService
;
9 import eu
.etaxonomy
.cdm
.model
.occurrence
.SpecimenOrObservationBase
;
10 import eu
.etaxonomy
.taxeditor
.editor
.EditorUtil
;
11 import eu
.etaxonomy
.taxeditor
.editor
.handler
.OpenDerivateViewHandler
;
12 import eu
.etaxonomy
.taxeditor
.editor
.l10n
.Messages
;
13 import eu
.etaxonomy
.taxeditor
.editor
.view
.derivate
.DerivateViewEditorInput
;
14 import eu
.etaxonomy
.taxeditor
.handler
.defaultHandler
.DefaultOpenHandlerBase
;
15 import eu
.etaxonomy
.taxeditor
.model
.MessagingUtils
;
16 import eu
.etaxonomy
.taxeditor
.store
.CdmStore
;
18 public class OpenDerivativeEditorForSpecimenOrOBservationBase
extends DefaultOpenHandlerBase
<SpecimenOrObservationBase
<?
>>{
20 protected static final String OPEN_DERIVATIVE_EDITOR_FOR_TAXON_NODE_COULD_NOT_OPEN
= Messages
.OpenDerivativeEditorForTaxonNode_COULD_NOT_OPEN
;
26 protected SpecimenOrObservationBase
<?
> getEntity(UUID uuid
) {
27 return CdmStore
.getService(IOccurrenceService
.class).load(uuid
);
31 protected void open(ExecutionEvent event
, SpecimenOrObservationBase
<?
> entity
) {
33 EditorUtil
.open(new DerivateViewEditorInput(entity
.getUuid()));
34 } catch (PartInitException e
) {
35 MessagingUtils
.error(OpenDerivateViewHandler
.class, OPEN_DERIVATIVE_EDITOR_FOR_TAXON_NODE_COULD_NOT_OPEN
, e
);