X-Git-Url: https://dev.e-taxonomy.eu/gitweb/cdmlib.git/blobdiff_plain/2d993c6eb138ef17118acf47a3d248941beecb94..242af8f3fbc0fab1dfcadd6c373154f4f33653fb:/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ReferenceServiceImpl.java?ds=sidebyside diff --git a/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ReferenceServiceImpl.java b/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ReferenceServiceImpl.java index e1e9c8e458..06397a8826 100644 --- a/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ReferenceServiceImpl.java +++ b/cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ReferenceServiceImpl.java @@ -1,35 +1,77 @@ +// $Id$ +/** +* Copyright (C) 2007 EDIT +* European Distributed Institute of Taxonomy +* http://www.e-taxonomy.eu +* +* The contents of this file are subject to the Mozilla Public License Version 1.1 +* See LICENSE.TXT at the top of this package for the full license terms. +*/ + package eu.etaxonomy.cdm.api.service; +import java.util.ArrayList; +import java.util.List; + import org.apache.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; + +import eu.etaxonomy.cdm.model.common.UuidAndTitleCache; import eu.etaxonomy.cdm.model.reference.ReferenceBase; +import eu.etaxonomy.cdm.model.taxon.TaxonBase; import eu.etaxonomy.cdm.persistence.dao.reference.IReferenceDao; -import java.util.UUID; @Service -@Transactional(readOnly = true) -public class ReferenceServiceImpl extends ServiceBase implements IReferenceService { - static Logger logger = Logger.getLogger(ReferenceServiceImpl.class); - - private IReferenceDao referenceDao; +@Transactional(propagation = Propagation.SUPPORTS, readOnly = true) +public class ReferenceServiceImpl extends IdentifiableServiceBase implements IReferenceService { + static Logger logger = Logger.getLogger(ReferenceServiceImpl.class); + + /** + * Constructor + */ + public ReferenceServiceImpl(){ + if (logger.isDebugEnabled()) { logger.debug("Load ReferenceService Bean"); } + } + + /* (non-Javadoc) + * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache() + */ + @Override + public void updateTitleCache() { + Class clazz = ReferenceBase.class; + super.updateTitleCache(clazz, null, null); + } + @Autowired protected void setDao(IReferenceDao dao) { this.dao = dao; - this.referenceDao = dao; + } + + public List> getUuidAndTitle() { + + return dao.getUuidAndTitle(); } + public List getAllReferencesForPublishing(){ + return dao.getAllNotNomenclaturalReferencesForPublishing(); + } - public ReferenceBase getReferenceByUuid(UUID uuid) { - return super.getCdmObjectByUuid(uuid); + public List getAllNomenclaturalReferences() { + + return dao.getAllNomenclaturalReferences(); } - @Transactional(readOnly = false) - public UUID saveReference(ReferenceBase reference) { - return super.saveCdmObject(reference); + @Override + public List listCoveredTaxa(ReferenceBase referenceBase, boolean includeSubordinateReferences, List propertyPaths) { + + List taxonList = dao.listCoveredTaxa(referenceBase, includeSubordinateReferences, propertyPaths); + + return taxonList; } }