delete the message that the delete functionality is an experimental feature
authorKatja Luther <k.luther@bgbm.org>
Tue, 10 Mar 2015 11:13:18 +0000 (11:13 +0000)
committerKatja Luther <k.luther@bgbm.org>
Tue, 10 Mar 2015 11:13:18 +0000 (11:13 +0000)
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/handler/DeleteHandler.java

index 948428086c09d44ba6f56e658afd49ef86446418..b6b990d244630a1e9fb4a59d9cb4c52246ba3151 100644 (file)
@@ -73,97 +73,92 @@ public class DeleteHandler extends AbstractHandler {
        @Override
        public Object execute(ExecutionEvent event) throws ExecutionException {
                
        @Override
        public Object execute(ExecutionEvent event) throws ExecutionException {
                
-               if(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_EXPERIMENTAL_FEATURES)){
-                       ISelection selection = HandlerUtil.getCurrentSelection(event);
+               ISelection selection = HandlerUtil.getCurrentSelection(event);
+               
+               IEditorPart editor = HandlerUtil.getActiveEditor(event);
+               
+               IEditorInput input = editor.getEditorInput();
+               
+               if((input instanceof IEntityPersistenceService) && (selection instanceof IStructuredSelection)){
                        
                        
-                       IEditorPart editor = HandlerUtil.getActiveEditor(event);
                        
                        
-                       IEditorInput input = editor.getEditorInput();
+                       IDocumentProvider provider = ((BulkEditor) editor).getDocumentProvider();
+                       LineAnnotationModel model = 
+                                       (LineAnnotationModel) provider.getAnnotationModel(input);
                        
                        
-                       if((input instanceof IEntityPersistenceService) && (selection instanceof IStructuredSelection)){
-                               
-                               
-                               IDocumentProvider provider = ((BulkEditor) editor).getDocumentProvider();
-                               LineAnnotationModel model = 
-                                               (LineAnnotationModel) provider.getAnnotationModel(input);
-                               
-                               
-                               IStructuredSelection structuredSelection = (IStructuredSelection) selection;
-                               
-                               IEntityPersistenceService persistenceService = (IEntityPersistenceService) input;
-                               
+                       
+                       IStructuredSelection structuredSelection = (IStructuredSelection) selection;
+                       
+                       IEntityPersistenceService persistenceService = (IEntityPersistenceService) input;
+                       
+                       
+                       for(Object object : structuredSelection.toList()){
                                
                                
-                               for(Object object : structuredSelection.toList()){
-                                       
-                                       LineAnnotation annotation = (LineAnnotation) model.getAnnotation(object);
-                                       DeleteResult result = new DeleteResult();       
-                                       //result.setError();
-                                       try {
-                                               ICdmApplicationConfiguration controller;
-                                               controller = (ICdmApplicationConfiguration) CdmStore.getCurrentApplicationConfiguration();
-                                               //persistenceService.delete(object);
-                                               if (object instanceof SpecimenOrObservationBase){
-                                                       
-                                                       IOccurrenceService service = controller.getOccurrenceService();
-                                                       service.load(((SpecimenOrObservationBase) object).getUuid());
-                                                       result = service.delete((SpecimenOrObservationBase)object);
-                                               } else if (object instanceof Reference){
-                                                       IReferenceService service = controller.getReferenceService();
-                                                       service.load(((Reference) object).getUuid());
-                                                       result = service.delete((Reference)object);
-                                               } else if (object instanceof Group){
-                                                       IGroupService service = controller.getGroupService();
-                                                       service.load(((Group) object).getUuid());
-                                                       result = service.delete((Group) object);
-                                               }else if (object instanceof User){
-                                                       IUserService service = controller.getUserService();
-                                                       service.load(((User) object).getUuid());
-                                                       result = service.delete((User) object);
-                                               } else if (object instanceof TaxonNameBase){
-                                                       INameService service = controller.getNameService();
-                                                       TaxonNameBase name = service.load(((TaxonNameBase) object).getUuid());
-                                                       NameDeletionConfigurator config = new NameDeletionConfigurator();
-                                                       
-                                                       result = service.delete(name, config);
-                                               } else if (object instanceof TaxonBase){
-                                                       ITaxonService service = controller.getTaxonService();
-                                                       service.load(((TaxonBase) object).getUuid());
-                                                       if (object instanceof Taxon){
-                                                               result = service.deleteTaxon((Taxon)object, null, null);
-                                                       }else{
-                                                               result = service.deleteSynonym((Synonym)object, null);
-                                                       }
-                                               } else if (object instanceof TeamOrPersonBase){
-                                                       IAgentService service = controller.getAgentService();
-                                                       object = service.load(((TeamOrPersonBase) object).getUuid());
-                                                       result = service.delete((TeamOrPersonBase)object);
-                                               }
-                                       } catch (Exception e){
-                                               MessagingUtils.messageDialog("Exception occured. Could not delete", getClass(), e.getMessage(), null);
-                                       }
-                                       if (result.isError() || result.isAbort()){
-                                               if (!result.getExceptions().isEmpty()) {
-                                                       MessagingUtils.messageDialog("Could not delete", getClass(), result.getExceptions().toString(), null);
+                               LineAnnotation annotation = (LineAnnotation) model.getAnnotation(object);
+                               DeleteResult result = new DeleteResult();       
+                               //result.setError();
+                               try {
+                                       ICdmApplicationConfiguration controller;
+                                       controller = (ICdmApplicationConfiguration) CdmStore.getCurrentApplicationConfiguration();
+                                       //persistenceService.delete(object);
+                                       if (object instanceof SpecimenOrObservationBase){
+                                               
+                                               IOccurrenceService service = controller.getOccurrenceService();
+                                               service.load(((SpecimenOrObservationBase) object).getUuid());
+                                               result = service.delete((SpecimenOrObservationBase)object);
+                                       } else if (object instanceof Reference){
+                                               IReferenceService service = controller.getReferenceService();
+                                               service.load(((Reference) object).getUuid());
+                                               result = service.delete((Reference)object);
+                                       } else if (object instanceof Group){
+                                               IGroupService service = controller.getGroupService();
+                                               service.load(((Group) object).getUuid());
+                                               result = service.delete((Group) object);
+                                       }else if (object instanceof User){
+                                               IUserService service = controller.getUserService();
+                                               service.load(((User) object).getUuid());
+                                               result = service.delete((User) object);
+                                       } else if (object instanceof TaxonNameBase){
+                                               INameService service = controller.getNameService();
+                                               TaxonNameBase name = service.load(((TaxonNameBase) object).getUuid());
+                                               NameDeletionConfigurator config = new NameDeletionConfigurator();
+                                               
+                                               result = service.delete(name, config);
+                                       } else if (object instanceof TaxonBase){
+                                               ITaxonService service = controller.getTaxonService();
+                                               service.load(((TaxonBase) object).getUuid());
+                                               if (object instanceof Taxon){
+                                                       result = service.deleteTaxon((Taxon)object, null, null);
                                                }else{
                                                }else{
-                                                       MessagingUtils.messageDialog("Could not delete", getClass(), "The object could not be deleted. An exception occured.", null);
-                                                       
+                                                       result = service.deleteSynonym((Synonym)object, null);
                                                }
                                                }
+                                       } else if (object instanceof TeamOrPersonBase){
+                                               IAgentService service = controller.getAgentService();
+                                               object = service.load(((TeamOrPersonBase) object).getUuid());
+                                               result = service.delete((TeamOrPersonBase)object);
                                        }
                                        }
-                                       if (result.isOk() ){
-                                               ((BulkEditor) editor).removeAnnotatedLine(annotation);
-                                               if(result.getUpdatedObjects().size() != 0 && !result.getExceptions().isEmpty()){
-                                                       MessageDialog.openInformation(null, "Delete successfull", "The Synonym could be deleted, but there is an updated object: " + result.getExceptions().toString());
-                                               }
-
+                               } catch (Exception e){
+                                       MessagingUtils.messageDialog("Exception occured. Could not delete", getClass(), e.getMessage(), null);
+                               }
+                               if (result.isError() || result.isAbort()){
+                                       if (!result.getExceptions().isEmpty()) {
+                                               MessagingUtils.messageDialog("Could not delete", getClass(), result.getExceptions().toString(), null);
+                                       }else{
+                                               MessagingUtils.messageDialog("Could not delete", getClass(), "The object could not be deleted. An exception occured.", null);
+                                               
+                                       }
+                               }
+                               if (result.isOk() ){
+                                       ((BulkEditor) editor).removeAnnotatedLine(annotation);
+                                       if(result.getUpdatedObjects().size() != 0 && !result.getExceptions().isEmpty()){
+                                               MessageDialog.openInformation(null, "Delete successfull", "The Synonym could be deleted, but there is an updated object: " + result.getExceptions().toString());
                                        }
                                        }
-                                       
-                               }                               
-                       }
-               }else{
-                       MessagingUtils.warningDialog("Feature not enabled", getClass(), "Deletion is currently an experimental feature." +
-                                       "Enable it via Preferences at your own risk.");
+
+                               }
+                               
+                       }                               
                }
                }
-               
+       
                
                return null;
        }
                
                return null;
        }