Interface BibliographicReferenceReadService
- All Known Implementing Classes:
BibliographicReferenceReadServiceImpl
BibliographicReference.
Phase 3 of the BibliographicReferenceService decomposition (strangler fig). This
service houses the read cluster previously implemented directly on the
BibliographicReferenceServiceImpl facade: browse, findByExternalId,
findVOByExternalId, countDistinctWithRelatedExperiments,
countWithRelatedExperiments, getRelatedExperiments, listAll,
search, and thaw. Methods delegate to BibliographicReferenceDao
(plus SearchService and ExpressionExperimentService where the original
facade methods needed them to populate related-experiment VOs).
Write-side methods (create, save, update, remove,
refresh, findOrCreate, plus the inherited BaseService mutators)
stay on the BibliographicReferenceService facade.
Callers should generally keep using BibliographicReferenceService as the facade --
the facade delegates to this service. Direct injection is appropriate where a class is
logically read-only (REST endpoints, CLIs, browser controllers, intra-core readers).
ACL / @Secured annotations live on BibliographicReferenceService (the
caller-facing facade interface); enforcement happens at the facade proxy boundary,
so this interface is intentionally unsecured.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionbrowse(int start, int limit) longlongfindAllByExternalId(String id, String databaseName) Retrieve ALL references sharing an identifier (accession + database name), ordered by id ascending.Get a reference by the unqualified external id.findByExternalId(String id, String databaseName) Retrieve a reference by identifier, qualified by the database name (such as 'pubmed').findByExternalId(DatabaseEntry accession) Get a reference VO by the unqualified external id.getRelatedExperiments(int offset, int limit) listAll()thaw(Collection<BibliographicReference> bibliographicReferences) thaw(BibliographicReference bibliographicReference)
-
Method Details
-
browse
-
browse
-
findByExternalId
-
findByExternalId
Get a reference by the unqualified external id. Searches for pubmed by default. -
findByExternalId
Retrieve a reference by identifier, qualified by the database name (such as 'pubmed'). -
findAllByExternalId
Retrieve ALL references sharing an identifier (accession + database name), ordered by id ascending. Usually at most one, but prod has duplicate rows for some accessions; this exposes the whole set for de-duplication. -
findVOByExternalId
Get a reference VO by the unqualified external id. Searches for pubmed by default. -
countDistinctWithRelatedExperiments
long countDistinctWithRelatedExperiments() -
countWithRelatedExperiments
long countWithRelatedExperiments() -
getRelatedExperiments
Map<BibliographicReference, Set<ExpressionExperimentIdAndShortName>> getRelatedExperiments(int offset, int limit) -
getRelatedExperiments
Map<BibliographicReference, Collection<ExpressionExperiment>> getRelatedExperiments(Collection<BibliographicReference> records) -
listAll
Collection<Long> listAll()- Returns:
- all the IDs of bibliographic references in the system.
-
search
List<BibliographicReferenceValueObject> search(String query, boolean searchExperiments, boolean searchBibrefs) throws SearchException - Throws:
SearchException
-
search
- Throws:
SearchException
-
thaw
-
thaw
-