if (object instanceof SpecimenOrObservationBase){
IOccurrenceService service = controller.getOccurrenceService();
- service.load(((SpecimenOrObservationBase) object).getUuid());
- result = service.delete((SpecimenOrObservationBase)object);
+ SpecimenOrObservationBase persistedObject = service.load(((SpecimenOrObservationBase) object).getUuid());
+ if (persistedObject != null){
+ result = service.delete(persistedObject);
+ }
} else if (object instanceof Reference){
IReferenceService service = controller.getReferenceService();
- service.load(((Reference) object).getUuid());
- result = service.delete((Reference)object);
+
+ Reference persistedObject = service.load(((Reference) object).getUuid());
+ if (persistedObject != null){
+ result = service.delete(persistedObject);
+ }
+
} else if (object instanceof Group){
IGroupService service = controller.getGroupService();
- service.load(((Group) object).getUuid());
- result = service.delete((Group) object);
+ Group persistedObject = service.load(((Group) object).getUuid());
+ if (persistedObject != null){
+ result = service.delete(persistedObject);
+ }
}else if (object instanceof User){
IUserService service = controller.getUserService();
- service.load(((User) object).getUuid());
- result = service.delete((User) object);
+ User persistedObject = service.load(((User) object).getUuid());
+ if (persistedObject != null){
+ result = service.delete(persistedObject);
+ }
} 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);
+ if (name != null){
+ 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);
+ TaxonBase taxonBase = service.load(((TaxonBase) object).getUuid());
+ if (taxonBase != null){
+ 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());
+ TeamOrPersonBase teamOrPerson = (TeamOrPersonBase)service.load(((TeamOrPersonBase) object).getUuid());
result = service.delete((TeamOrPersonBase)object);
}
} catch (Exception e){