@Repository public class ExpressionExperimentDaoImpl extends AbstractCuratableDao<ExpressionExperiment,ExpressionExperimentValueObject> implements ExpressionExperimentDao
ExpressionExperiment
AbstractQueryFilteringVoEnabledDao.QueryHint
REPORT_SLOW_QUERY_AFTER_MS
DEFAULT_BATCH_SIZE, elementClass, log
OBJECT_ALIAS
Constructor and Description |
---|
ExpressionExperimentDaoImpl(SessionFactory sessionFactory) |
addEventsToMap, addNonTroubledFilter, create, findByName, findByShortName
getObjectAlias, loadAllValueObjects, loadValueObject, loadValueObjectById, loadValueObjects, loadValueObjectsByIds
doLoadValueObjects
countAll, create, createInBatch, findByProperty, findByPropertyIn, findOneByProperty, findOrCreate, flush, getElementClass, getSessionFactory, load, load, loadAll, remove, remove, removeAllInBatch, removeInBatch, save, save, saveInBatch, update, update, updateInBatch
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
loadValueObjectsByIds
findByName, findByShortName
getElementClass, getObjectAlias
loadAllValueObjects, loadValueObject, loadValueObjectById, loadValueObjects
countAll, create, create, createInBatch, findOrCreate, load, load, loadAll, remove, remove, removeAllInBatch, removeInBatch, save, save, saveInBatch, update, update, updateInBatch
@Autowired public ExpressionExperimentDaoImpl(SessionFactory sessionFactory)
public List<ExpressionExperiment> browse(int start, int limit)
browse
in interface BrowsingDao<ExpressionExperiment>
public List<ExpressionExperiment> browse(int start, int limit, String orderField, boolean descending)
browse
in interface BrowsingDao<ExpressionExperiment>
public long countNotTroubled()
countNotTroubled
in interface ExpressionExperimentDao
public Collection<Long> filterByTaxon(@Nullable Collection<Long> ids, Taxon taxon)
filterByTaxon
in interface ExpressionExperimentDao
public ExpressionExperiment find(ExpressionExperiment entity)
BaseDao
find
in interface BaseDao<ExpressionExperiment>
find
in class AbstractDao<ExpressionExperiment>
entity
- the entity to look for.public Collection<ExpressionExperiment> findByAccession(DatabaseEntry accession)
findByAccession
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> findByAccession(String accession)
findByAccession
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> findByBibliographicReference(Long bibRefID)
findByBibliographicReference
in interface ExpressionExperimentDao
public ExpressionExperiment findByBioAssay(BioAssay ba)
findByBioAssay
in interface ExpressionExperimentDao
public ExpressionExperiment findByBioMaterial(BioMaterial bm)
findByBioMaterial
in interface ExpressionExperimentDao
public Map<ExpressionExperiment,BioMaterial> findByBioMaterials(Collection<BioMaterial> bms)
findByBioMaterials
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> findByExpressedGene(Gene gene, Double rank)
findByExpressedGene
in interface ExpressionExperimentDao
public ExpressionExperiment findByFactor(ExperimentalFactor ef)
findByFactor
in interface ExpressionExperimentDao
public ExpressionExperiment findByFactorValue(FactorValue fv)
findByFactorValue
in interface ExpressionExperimentDao
public ExpressionExperiment findByFactorValue(Long factorValueId)
findByFactorValue
in interface ExpressionExperimentDao
public Map<ExpressionExperiment,FactorValue> findByFactorValues(Collection<FactorValue> fvs)
findByFactorValues
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> findByGene(Gene gene)
findByGene
in interface ExpressionExperimentDao
public ExpressionExperiment findByQuantitationType(QuantitationType quantitationType)
findByQuantitationType
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> findByTaxon(Taxon taxon)
findByTaxon
in interface ExpressionExperimentDao
public List<ExpressionExperiment> findByUpdatedLimit(Collection<Long> ids, int limit)
findByUpdatedLimit
in interface ExpressionExperimentDao
public List<ExpressionExperiment> findByUpdatedLimit(int limit)
findByUpdatedLimit
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> findUpdatedAfter(@Nullable Date date)
findUpdatedAfter
in interface ExpressionExperimentDao
public Map<Long,Long> getAnnotationCounts(Collection<Long> ids)
getAnnotationCounts
in interface ExpressionExperimentDao
public Collection<? extends AnnotationValueObject> getAnnotationsByBioMaterials(Long eeId)
getAnnotationsByBioMaterials
in interface ExpressionExperimentDao
public Collection<? extends AnnotationValueObject> getAnnotationsByFactorvalues(Long eeId)
getAnnotationsByFactorvalues
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> getExperimentsLackingPublications()
getExperimentsLackingPublications
in interface ExpressionExperimentDao
public int updateTroubledByArrayDesign(ArrayDesign arrayDesign, boolean troubled)
ExpressionExperimentDao
updateTroubledByArrayDesign
in interface ExpressionExperimentDao
public long countTroubledPlatforms(ExpressionExperiment ee)
ExpressionExperimentDao
countTroubledPlatforms
in interface ExpressionExperimentDao
public MeanVarianceRelation updateMeanVarianceRelation(ExpressionExperiment ee, MeanVarianceRelation mvr)
updateMeanVarianceRelation
in interface ExpressionExperimentDao
public Collection<ArrayDesign> getArrayDesignsUsed(BioAssaySet bas)
getArrayDesignsUsed
in interface ExpressionExperimentDao
public Map<ArrayDesign,Collection<Long>> getArrayDesignsUsed(Collection<Long> eeids)
getArrayDesignsUsed
in interface ExpressionExperimentDao
public Map<Long,Collection<AuditEvent>> getAuditEvents(Collection<Long> ids)
getAuditEvents
in interface ExpressionExperimentDao
public Collection<BioAssayDimension> getBioAssayDimensions(ExpressionExperiment expressionExperiment)
getBioAssayDimensions
in interface ExpressionExperimentDao
public long getBioMaterialCount(ExpressionExperiment expressionExperiment)
getBioMaterialCount
in interface ExpressionExperimentDao
public long getDesignElementDataVectorCount(ExpressionExperiment ee)
getDesignElementDataVectorCount
in interface ExpressionExperimentDao
ee
- the expression experimentpublic Collection<ExpressionExperiment> getExperimentsWithOutliers()
getExperimentsWithOutliers
in interface ExpressionExperimentDao
public Map<Long,Date> getLastArrayDesignUpdate(Collection<ExpressionExperiment> expressionExperiments)
getLastArrayDesignUpdate
in interface ExpressionExperimentDao
public Date getLastArrayDesignUpdate(ExpressionExperiment ee)
getLastArrayDesignUpdate
in interface ExpressionExperimentDao
public Map<Taxon,Long> getPerTaxonCount()
getPerTaxonCount
in interface ExpressionExperimentDao
public Map<Long,Long> getPopulatedFactorCounts(Collection<Long> ids)
getPopulatedFactorCounts
in interface ExpressionExperimentDao
public Map<Long,Long> getPopulatedFactorCountsExcludeBatch(Collection<Long> ids)
getPopulatedFactorCountsExcludeBatch
in interface ExpressionExperimentDao
public Map<QuantitationType,Long> getQuantitationTypeCount(ExpressionExperiment ee)
getQuantitationTypeCount
in interface ExpressionExperimentDao
public Collection<QuantitationType> getQuantitationTypes(ExpressionExperiment expressionExperiment)
getQuantitationTypes
in interface ExpressionExperimentDao
public Collection<QuantitationType> getQuantitationTypes(ExpressionExperiment expressionExperiment, @Nullable ArrayDesign arrayDesign)
getQuantitationTypes
in interface ExpressionExperimentDao
public QuantitationType getPreferredQuantitationType(ExpressionExperiment ee)
ExpressionExperimentDao
getPreferredQuantitationType
in interface ExpressionExperimentDao
public QuantitationType getMaskedPreferredQuantitationType(ExpressionExperiment ee)
ExpressionExperimentDao
getMaskedPreferredQuantitationType
in interface ExpressionExperimentDao
public Map<ExpressionExperiment,Collection<AuditEvent>> getSampleRemovalEvents(Collection<ExpressionExperiment> expressionExperiments)
getSampleRemovalEvents
in interface ExpressionExperimentDao
public Collection<ExpressionExperimentSubSet> getSubSets(ExpressionExperiment expressionExperiment)
getSubSets
in interface ExpressionExperimentDao
public <T extends BioAssaySet> Map<T,Taxon> getTaxa(Collection<T> bioAssaySets)
getTaxa
in interface ExpressionExperimentDao
public Taxon getTaxon(BioAssaySet ee)
getTaxon
in interface ExpressionExperimentDao
public Slice<ExpressionExperimentDetailsValueObject> loadDetailsValueObjects(@Nullable Filters filters, @Nullable Sort sort, int offset, int limit)
ExpressionExperimentDao
ExpressionExperimentDao.loadDetailsValueObjects(Filters, Sort, int, int)
for detailed EE VOs.loadDetailsValueObjects
in interface ExpressionExperimentDao
public Slice<ExpressionExperimentDetailsValueObject> loadDetailsValueObjectsByIds(@Nullable Collection<Long> ids, @Nullable Taxon taxon, @Nullable Sort sort, int offset, int limit)
ExpressionExperimentDao
loadDetailsValueObjectsByIds
in interface ExpressionExperimentDao
ids
- only list specific ids, or null to ignoretaxon
- only list EEs in the specified taxon, or null to ignoresort
- the field to order the results by.offset
- offsetlimit
- maximum number of results to returnpublic List<ExpressionExperimentDetailsValueObject> loadDetailsValueObjectsByIds(@NonNull @NonNull Collection<Long> ids)
ExpressionExperimentDao
ExpressionExperimentDao.loadDetailsValueObjectsByIds(Collection, Taxon, Sort, int, int)
, but returning a list.loadDetailsValueObjectsByIds
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> loadLackingFactors()
loadLackingFactors
in interface ExpressionExperimentDao
public Collection<ExpressionExperiment> loadLackingTags()
loadLackingTags
in interface ExpressionExperimentDao
protected ExpressionExperimentValueObject doLoadValueObject(ExpressionExperiment entity)
AbstractVoEnabledDao
This should be fast and efficient, and avoid any database query or post-processing. If you need to perform
additional queries, consider overriding AbstractVoEnabledDao.loadValueObject(Identifiable)
or AbstractVoEnabledDao.loadValueObjects(Collection)
.
doLoadValueObject
in class AbstractVoEnabledDao<ExpressionExperiment,ExpressionExperimentValueObject>
public List<ExpressionExperimentValueObject> loadValueObjectsPreFilter(@Nullable Filters filters, @Nullable Sort sort)
FilteringVoEnabledDao
FilteringVoEnabledDao.loadValueObjectsPreFilter(Filters, Sort, int, int)
if you do not
intend to provide pagination capabilities.loadValueObjectsPreFilter
in interface FilteringVoEnabledDao<ExpressionExperiment,ExpressionExperimentValueObject>
loadValueObjectsPreFilter
in class AbstractQueryFilteringVoEnabledDao<ExpressionExperiment,ExpressionExperimentValueObject>
FilteringVoEnabledDao.loadValueObjectsPreFilter(Filters, Sort, int, int)
public Slice<ExpressionExperimentValueObject> loadValueObjectsPreFilter(@Nullable Filters filters, @Nullable Sort sort, int offset, int limit)
FilteringVoEnabledDao
FilteringService.getObjectFilter(String, ObjectFilter.Operator, String)
and FilteringService.getSort(String, Sort.Direction)
to produce the object filters and sort safely from user input.loadValueObjectsPreFilter
in interface FilteringVoEnabledDao<ExpressionExperiment,ExpressionExperimentValueObject>
loadValueObjectsPreFilter
in class AbstractQueryFilteringVoEnabledDao<ExpressionExperiment,ExpressionExperimentValueObject>
filters
- filters applied on the search. The properties mentioned in the ObjectFilter
must exist and be visible to Hibernate. You can use nested properties such as "curationDetails.lastUpdated".sort
- an object property and direction to order by. This property must exist and be visible to
Hibernate. You can use nested properties such as "curationDetails.lastUpdated".offset
- an offset from which entities are retrieved when sorted according to the sort argument, or 0 to
ignorelimit
- a limit on the number of returned results, or -1 to ignoreprotected ExpressionExperimentValueObject processLoadValueObjectsQueryResult(Object result)
AbstractQueryFilteringVoEnabledDao
Query.list()
.
By default, it will cast the result into a O
and then apply AbstractVoEnabledDao.doLoadValueObject(Identifiable)
to
obtain a value object.processLoadValueObjectsQueryResult
in class AbstractQueryFilteringVoEnabledDao<ExpressionExperiment,ExpressionExperimentValueObject>
Slice
in AbstractQueryFilteringVoEnabledDao.loadValueObjectsPreFilter(Filters, Sort, int, int)
public void remove(ExpressionExperiment ee)
BaseDao
remove
in interface BaseDao<ExpressionExperiment>
remove
in class AbstractDao<ExpressionExperiment>
ee
- the entity to be removedpublic void thaw(ExpressionExperiment expressionExperiment)
thaw
in interface ExpressionExperimentDao
public void thawWithoutVectors(ExpressionExperiment ee)
thawWithoutVectors
in interface ExpressionExperimentDao
public void thawBioAssays(ExpressionExperiment expressionExperiment)
thawBioAssays
in interface ExpressionExperimentDao
public void thawForFrontEnd(ExpressionExperiment expressionExperiment)
thawForFrontEnd
in interface ExpressionExperimentDao
protected Query getLoadValueObjectsQuery(@Nullable Filters filters, @Nullable Sort sort, EnumSet<AbstractQueryFilteringVoEnabledDao.QueryHint> hints)
AbstractQueryFilteringVoEnabledDao
List
of O
when Query.list()
is invoked,
you must override AbstractQueryFilteringVoEnabledDao.processLoadValueObjectsQueryResult(Object)
.getLoadValueObjectsQuery
in class AbstractQueryFilteringVoEnabledDao<ExpressionExperiment,ExpressionExperimentValueObject>
Query
that produce a list of O
protected Query getCountValueObjectsQuery(@Nullable Filters filters)
AbstractQueryFilteringVoEnabledDao
AbstractQueryFilteringVoEnabledDao.getLoadValueObjectsQuery(Filters, Sort, EnumSet)
.getCountValueObjectsQuery
in class AbstractQueryFilteringVoEnabledDao<ExpressionExperiment,ExpressionExperimentValueObject>
Query
which must return a single Long
valueCopyright © 2005–2023 Pavlidis lab, Michael Smith Laboratories and Department of Psychiatry, University of British Columbia. All rights reserved.