import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeNotSupportedException;
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
+import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
-import eu.etaxonomy.cdm.api.service.exception.ReferencedObjectUndeletableException;
import eu.etaxonomy.cdm.api.service.pager.Pager;
import eu.etaxonomy.cdm.api.service.search.SearchResult;
import eu.etaxonomy.cdm.api.service.util.TaxonRelationshipEdge;
public class TransientOccurenceService implements IOccurrenceService {
private final IOccurrenceService defaultService;
- private final Collection<SpecimenOrObservationBase> units;
+ private final Collection<SpecimenOrObservationBase<?>> units;
/**
* @param defaultService
*/
public TransientOccurenceService(IOccurrenceService defaultService) {
this.defaultService = defaultService;
- this.units = new HashSet<SpecimenOrObservationBase>();
+ this.units = new HashSet<SpecimenOrObservationBase<?>>();
}
/**
* @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
*/
@Override
- public UUID delete(SpecimenOrObservationBase persistentObject) throws ReferencedObjectUndeletableException{
+ public String delete(SpecimenOrObservationBase persistentObject) {
return defaultService.delete(persistentObject);
}
* @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
*/
@Override
- public List<SpecimenOrObservationBase> list(Class<? extends SpecimenOrObservationBase> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
+ public <S extends SpecimenOrObservationBase> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
return defaultService.list(type, limit, start, orderHints, propertyPaths);
}
* @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
*/
@Override
- public Pager<SpecimenOrObservationBase> page(Class<? extends SpecimenOrObservationBase> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
+ public <S extends SpecimenOrObservationBase> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
return defaultService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
}
/**
* @return
*/
- public Collection<SpecimenOrObservationBase> getUnits() {
+ public Collection<SpecimenOrObservationBase<?>> getUnits() {
return units;
}
return defaultService.moveSequence(from, to, sequence);
}
+ @Override
+ public List<String> isDeletable(SpecimenOrObservationBase object,
+ DeleteConfiguratorBase config) {
+ return defaultService.isDeletable(object, config);
+ }
+
+ /* (non-Javadoc)
+ * @see eu.etaxonomy.cdm.api.service.IOccurrenceService#countDeterminations(eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase, eu.etaxonomy.cdm.model.taxon.TaxonBase)
+ */
+ @Override
+ public int countDeterminations(SpecimenOrObservationBase occurence, TaxonBase taxonbase) {
+ return defaultService.countDeterminations(occurence, taxonbase);
+ }
}