2 * Copyright (C) 2009 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
9 package eu
.etaxonomy
.cdm
.api
.service
;
11 import java
.util
.ArrayList
;
12 import java
.util
.HashSet
;
13 import java
.util
.List
;
16 import org
.apache
.log4j
.Logger
;
18 import eu
.etaxonomy
.cdm
.model
.common
.CdmBase
;
21 * This class represents the result of a delete action.
27 public class DeleteResult
extends UpdateResult
{
29 private static final long serialVersionUID
= 8856465763413085548L;
31 @SuppressWarnings("unused")
32 private static final Logger logger
= Logger
.getLogger(DeleteResult
.class);
36 private final List
<Exception
> exceptions
= new ArrayList();
38 private final Set
<CdmBase
> relatedObjects
= new HashSet();
40 private Set
<CdmBase
> deletedObjects
= new HashSet();
43 // private Set<PersistPair> objectsToSave = new HashSet<>();
45 // protected class PersistPair{
46 // protected CdmBase objectToPersist;
47 // protected ICdmEntityDao<CdmBase> dao;
52 //***************************** GETTER /SETTER /ADDER *************************/
56 * Related objects that prevent the delete action to take place.
59 public Set
<CdmBase
> getRelatedObjects() {
60 return relatedObjects
;
62 public void addRelatedObject(CdmBase relatedObject
) {
63 this.relatedObjects
.add(relatedObject
);
65 public void addRelatedObjects(Set
<?
extends CdmBase
> relatedObjects
) {
66 this.relatedObjects
.addAll(relatedObjects
);
71 public void includeResult(UpdateResult includedResult
){
73 this.setMaxStatus(includedResult
.getStatus());
74 this.addExceptions(includedResult
.getExceptions());
75 this.addUpdatedObjects(includedResult
.getUpdatedObjects());
76 if (includedResult
instanceof DeleteResult
){
77 this.addDeletedObjects(((DeleteResult
)includedResult
).getDeletedObjects());
81 public Set
<CdmBase
> getDeletedObjects() {
82 return deletedObjects
;
84 public void addDeletedObjects(Set
<CdmBase
> deletedObjects
) {
85 this.deletedObjects
.addAll(deletedObjects
);
87 public void addDeletedObject(CdmBase deletedObject
) {
88 this.deletedObjects
.add(deletedObject
);