Project

General

Profile

« Previous | Next » 

Revision bcdc7df3

Added by Katja Luther over 9 years ago

adaption for error handling of delete methods

View differences:

eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/handler/DeleteHandler.java
22 22
import org.eclipse.ui.handlers.HandlerUtil;
23 23
import org.eclipse.ui.texteditor.IDocumentProvider;
24 24

  
25
import eu.etaxonomy.cdm.api.service.DeleteResult;
25 26
import eu.etaxonomy.cdm.api.service.IAgentService;
26 27
import eu.etaxonomy.cdm.api.service.IGroupService;
27 28
import eu.etaxonomy.cdm.api.service.INameService;
......
85 86
				for(Object object : structuredSelection.toList()){
86 87
					
87 88
					LineAnnotation annotation = (LineAnnotation) model.getAnnotation(object);
88
					String result = "";	
89
					DeleteResult result = new DeleteResult();	
89 90
					try {
90 91
						ICdmApplicationConfiguration controller;
91 92
						controller = (ICdmApplicationConfiguration) CdmStore.getCurrentApplicationConfiguration();
......
120 121
					} catch (Exception e){
121 122
						BulkEditorUtil.errorDialog("Could not delete", getClass(), e.getMessage(), null);
122 123
					}
123
					try {
124
						UUID uuid = UUID.fromString(result);
125
					}catch (IllegalArgumentException e){
126
						BulkEditorUtil.errorDialog("Could not delete", getClass(), result, null);
124
					if (result.isError()){
125
						BulkEditorUtil.errorDialog("Could not delete", getClass(), result.getExceptions().get(0).getMessage(), null);
127 126
					}
128 127
					((BulkEditor) editor).removeAnnotatedLine(annotation);
129 128
					
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/DeleteTaxonOperation.java
12 12

  
13 13
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
14 14
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
15
import eu.etaxonomy.cdm.api.service.DeleteResult;
15 16
import eu.etaxonomy.cdm.api.service.ITaxonService;
16 17
import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
17 18
import eu.etaxonomy.cdm.api.service.exception.DataChangeNoRollbackException;
......
68 69
				ITaxonService service = controller.getTaxonService();
69 70
				
70 71

  
71
				String result =	service.deleteTaxon(element, new TaxonDeletionConfigurator(), classification);
72
				DeleteResult result =	service.deleteTaxon(element, new TaxonDeletionConfigurator(), classification);
72 73

  
73 74

  
74 75
				//closeObsoleteEditor(taxon);
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientAgentService.java
20 20
import org.hibernate.criterion.Criterion;
21 21
import org.hibernate.envers.query.criteria.AuditCriterion;
22 22

  
23
import eu.etaxonomy.cdm.api.service.DeleteResult;
23 24
import eu.etaxonomy.cdm.api.service.IAgentService;
24 25
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
25 26
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
......
284 285
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
285 286
     */
286 287
    @Override
287
    public String delete(AgentBase persistentObject) {
288
    public DeleteResult delete(AgentBase persistentObject) {
288 289
        return defaultAgentService.delete(persistentObject);
289 290
    }
290 291

  
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientClassificationService.java
20 20
import org.hibernate.criterion.Criterion;
21 21
import org.hibernate.envers.query.criteria.AuditCriterion;
22 22

  
23
import eu.etaxonomy.cdm.api.service.DeleteResult;
23 24
import eu.etaxonomy.cdm.api.service.IClassificationService;
24 25
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
25 26
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
......
299 300
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
300 301
     */
301 302
    @Override
302
    public String delete(Classification persistentObject) {
303
    public DeleteResult delete(Classification persistentObject) {
303 304
        return defaultClassificationService.delete(persistentObject);
304 305
    }
305 306

  
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientDescriptionService.java
20 20
import org.hibernate.criterion.Criterion;
21 21
import org.hibernate.envers.query.criteria.AuditCriterion;
22 22

  
23
import eu.etaxonomy.cdm.api.service.DeleteResult;
23 24
import eu.etaxonomy.cdm.api.service.DistributionTree;
24 25
import eu.etaxonomy.cdm.api.service.IDescriptionService;
25 26
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
......
277 278
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
278 279
     */
279 280
    @Override
280
    public String delete(DescriptionBase persistentObject) {
281
    public DeleteResult delete(DescriptionBase persistentObject) {
281 282
        return defaultDescriptionService.delete(persistentObject);
282 283
    }
283 284

  
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientNameService.java
23 23
import org.hibernate.criterion.Criterion;
24 24
import org.hibernate.envers.query.criteria.AuditCriterion;
25 25

  
26
import eu.etaxonomy.cdm.api.service.DeleteResult;
26 27
import eu.etaxonomy.cdm.api.service.INameService;
27 28
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
28 29
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
......
219 220
     * @see eu.etaxonomy.cdm.api.service.INameService#delete(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.api.service.config.NameDeletionConfigurator)
220 221
     */
221 222
    @Override
222
    public String delete(TaxonNameBase name, NameDeletionConfigurator config)  {
223
    public DeleteResult delete(TaxonNameBase name, NameDeletionConfigurator config)  {
223 224
        return defaultNameService.delete(name, config);
224 225
    }
225 226

  
......
256 257
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
257 258
     */
258 259
    @Override
259
    public String delete(TaxonNameBase persistentObject) {
260
    public DeleteResult delete(TaxonNameBase persistentObject) {
260 261
        return defaultNameService.delete(persistentObject);
261 262
    }
262 263

  
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientOccurenceService.java
27 27

  
28 28
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
29 29
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeNotSupportedException;
30
import eu.etaxonomy.cdm.api.service.DeleteResult;
30 31
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
31 32
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
32 33
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
......
276 277
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
277 278
     */
278 279
    @Override
279
    public String delete(SpecimenOrObservationBase persistentObject) {
280
    public DeleteResult delete(SpecimenOrObservationBase persistentObject) {
280 281
        return defaultService.delete(persistentObject);
281 282
    }
282 283

  
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientReferenceService.java
20 20
import org.hibernate.criterion.Criterion;
21 21
import org.hibernate.envers.query.criteria.AuditCriterion;
22 22

  
23
import eu.etaxonomy.cdm.api.service.DeleteResult;
23 24
import eu.etaxonomy.cdm.api.service.IReferenceService;
24 25
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
25 26
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
......
273 274
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
274 275
     */
275 276
    @Override
276
    public String delete(Reference persistentObject) {
277
    public DeleteResult delete(Reference persistentObject) {
277 278
        return defaultReferenceService.delete(persistentObject);
278 279
    }
279 280

  
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientTaxonService.java
24 24
import org.hibernate.criterion.Criterion;
25 25
import org.hibernate.envers.query.criteria.AuditCriterion;
26 26

  
27
import eu.etaxonomy.cdm.api.service.DeleteResult;
27 28
import eu.etaxonomy.cdm.api.service.ITaxonService;
28 29
import eu.etaxonomy.cdm.api.service.TaxaAndNamesSearchMode;
29 30
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
......
257 258
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
258 259
     */
259 260
    @Override
260
    public String delete(TaxonBase persistentObject) {
261
    public DeleteResult delete(TaxonBase persistentObject) {
261 262
        return defaultTaxonService.delete(persistentObject);
262 263
    }
263 264

  
......
1346 1347
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonym(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator)
1347 1348
     */
1348 1349
    @Override
1349
    public String deleteSynonym(Synonym arg0, SynonymDeletionConfigurator arg1) {
1350
    public DeleteResult deleteSynonym(Synonym arg0, SynonymDeletionConfigurator arg1) {
1350 1351
        return defaultTaxonService.deleteSynonym(arg0, arg1);
1351 1352
    }
1352 1353

  
......
1354 1355
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonym(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator)
1355 1356
     */
1356 1357
    @Override
1357
    public String deleteSynonym(Synonym arg0, Taxon arg1, SynonymDeletionConfigurator arg2) {
1358
    public DeleteResult deleteSynonym(Synonym arg0, Taxon arg1, SynonymDeletionConfigurator arg2) {
1358 1359
        return defaultTaxonService.deleteSynonym(arg0, arg1, arg2);
1359 1360
    }
1360 1361

  
......
1362 1363
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteTaxon(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator, eu.etaxonomy.cdm.model.taxon.Classification)
1363 1364
     */
1364 1365
    @Override
1365
    public String deleteTaxon(Taxon arg0, TaxonDeletionConfigurator arg1, Classification arg2) {
1366
    public DeleteResult deleteTaxon(Taxon arg0, TaxonDeletionConfigurator arg1, Classification arg2) {
1366 1367
        return defaultTaxonService.deleteTaxon(arg0, arg1, arg2);
1367 1368
    }
1368 1369

  
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientTermService.java
331 331
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
332 332
     */
333 333
    @Override
334
    public String delete(DefinedTermBase persistentObject) {
334
    public DeleteResult delete(DefinedTermBase persistentObject) {
335 335
        return defaultTermService.delete(persistentObject);
336 336
    }
337 337

  
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/key/polytomous/operation/DeleteOperation.java
15 15
import org.eclipse.core.runtime.IAdaptable;
16 16
import org.eclipse.core.runtime.IProgressMonitor;
17 17
import org.eclipse.core.runtime.IStatus;
18
import org.eclipse.jface.dialogs.MessageDialog;
18 19

  
19 20
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
21
import eu.etaxonomy.cdm.api.service.DeleteResult;
20 22
import eu.etaxonomy.cdm.api.service.IPolytomousKeyService;
21 23
import eu.etaxonomy.cdm.api.service.exception.ReferencedObjectUndeletableException;
22 24
import eu.etaxonomy.cdm.model.description.PolytomousKey;
......
53 55
			throws ExecutionException {
54 56
		bind();
55 57
		
56
		String result = CdmStore.getService(IPolytomousKeyService.class).delete(key);
58
		DeleteResult result = CdmStore.getService(IPolytomousKeyService.class).delete(key);
59
		if (result.isError()){
60
			MessageDialog.openError(null, "Delete failed", result.getExceptions().get(0).getMessage());
61
			
62
		}else if(!result.getExceptions().isEmpty()){
63
			//TODO:Warning!
64
		}
57 65
		
58 66
		return postExecute(null);
59 67
	}
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/DeleteOperation.java
19 19
import org.eclipse.core.runtime.IAdaptable;
20 20
import org.eclipse.core.runtime.IProgressMonitor;
21 21
import org.eclipse.core.runtime.IStatus;
22
import org.eclipse.jface.dialogs.MessageDialog;
22 23

  
23 24
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
24 25
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
26
import eu.etaxonomy.cdm.api.service.DeleteResult;
25 27
import eu.etaxonomy.cdm.api.service.IClassificationService;
26 28
import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
27 29
import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
......
102 104

  
103 105
				element = ((TaxonNode)taxonNode).getTaxon();
104 106
				
105
				String result = service.deleteTaxonNode((TaxonNode)taxonNode, config);
106
				//TODO:if result is not a UUIDstring then pop up a message box
107
				DeleteResult result = service.deleteTaxonNode((TaxonNode)taxonNode, config);
108
				if (result.isError()){
109
					//TODO:Error message!
110
					MessageDialog.openError(null, "Delete failed", result.getExceptions().get(0).getMessage());
111
				}
112

  
107 113

  
108 114
			}else if(taxonNode != null && taxonNode instanceof Classification){
109 115
				Classification taxonomicTree = (Classification) taxonNode;
......
113 119
					}
114 120
				}*/
115 121
				
116
				String result = CdmStore.getService(IClassificationService.class).delete(taxonomicTree);
117
				
122
				DeleteResult result = CdmStore.getService(IClassificationService.class).delete(taxonomicTree);
123
				if (result.isError()){
124
					//TODO:Error message!
125
					MessageDialog.openError(null, "Delete failed", result.getExceptions().get(0).getMessage());
126
				}
118 127

  
119 128
				/*}else{
120 129
					try{
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/DeleteTermBaseOperation.java
15 15
import org.eclipse.core.runtime.IProgressMonitor;
16 16
import org.eclipse.core.runtime.IStatus;
17 17
import org.eclipse.core.runtime.Status;
18
import org.eclipse.jface.dialogs.MessageDialog;
18 19

  
20
import eu.etaxonomy.cdm.api.service.DeleteResult;
19 21
import eu.etaxonomy.cdm.api.service.ITermService;
20 22
import eu.etaxonomy.cdm.api.service.IVocabularyService;
21 23
import eu.etaxonomy.cdm.api.service.exception.DataChangeNoRollbackException;
......
79 81

  
80 82
			definedEditorInput.getVocabularies().remove((TermVocabulary)termBase); 
81 83
			
82
			String result =	CdmStore.getService(IVocabularyService.class).delete((TermVocabulary)termBase);
83
			
84
			DeleteResult result =	CdmStore.getService(IVocabularyService.class).delete((TermVocabulary)termBase);
85
			if (result.isError()){
86
				//TODO: Error message!
87
			}
84 88
			
85 89
		} else if (termBase instanceof DefinedTermBase) {
86 90
			
......
114 118
				vocabulary.removeTerm(definedTermBase);
115 119
			}
116 120
			
117
			String result =	CdmStore.getService(ITermService.class).delete((DefinedTermBase)termBase);
121
			DeleteResult result =	CdmStore.getService(ITermService.class).delete((DefinedTermBase)termBase);
118 122
			
123
			if (result.isError()){
124
				MessageDialog.openError(null, "Delete failed", result.getExceptions().get(0).getMessage());
125
			}
119 126
		}
120 127
		
121 128
		return postExecute(termBase);
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/SelectFeatureTreeWizardPage.java
31 31
import org.eclipse.swt.widgets.Label;
32 32
import org.eclipse.swt.widgets.Text;
33 33

  
34
import eu.etaxonomy.cdm.api.service.DeleteResult;
34 35
import eu.etaxonomy.cdm.api.service.IFeatureTreeService;
35 36
import eu.etaxonomy.cdm.api.service.exception.DataChangeNoRollbackException;
36 37
import eu.etaxonomy.cdm.model.description.FeatureTree;
......
162 163
			for(Object element : selection.toArray()){
163 164
				viewer.remove(element);
164 165
				
165
				String result =	CdmStore.getService(IFeatureTreeService.class).delete((FeatureTree) element);
166
				DeleteResult result =	CdmStore.getService(IFeatureTreeService.class).delete((FeatureTree) element);
166 167
				
168
				if (result.isError()){
169
					
170
				}
167 171
				viewer.setSelection(new StructuredSelection(new Object[0]));
168 172
			}
169 173
		}

Also available in: Unified diff