Class ArrayDesignDaoImpl
- All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean,BaseDao<ArrayDesign>,BaseVoEnabledDao<ArrayDesign,,ArrayDesignValueObject> CachedFilteringDao<ArrayDesign>,CachedFilteringVoEnabledDao<ArrayDesign,,ArrayDesignValueObject> CuratableDao<ArrayDesign>,ArrayDesignDao,FilteringDao<ArrayDesign>,FilteringVoEnabledDao<ArrayDesign,ArrayDesignValueObject>
- Author:
- pavlidis
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class ubic.gemma.persistence.service.AbstractFilteringVoEnabledDao
AbstractFilteringVoEnabledDao.FilterablePropertiesConfigurer, AbstractFilteringVoEnabledDao.FilterablePropertyMeta -
Field Summary
Fields inherited from class ubic.gemma.persistence.service.common.auditAndSecurity.curation.AbstractCuratableDao
CURATION_DETAILS_ALIASFields inherited from class ubic.gemma.persistence.service.AbstractVoEnabledDao
REPORT_SLOW_QUERY_AFTER_MSFields inherited from class ubic.gemma.persistence.service.AbstractDao
logFields inherited from interface ubic.gemma.persistence.service.expression.arrayDesign.ArrayDesignDao
OBJECT_ALIAS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddProbes(ArrayDesign arrayDesign, Collection<CompositeSequence> newProbes) protected voidconfigureFilterableProperties(AbstractFilteringVoEnabledDao<ArrayDesign, ArrayDesignValueObject>.FilterablePropertiesConfigurer configurer) Register filterable properties.voiddeleteAlignmentData(ArrayDesign arrayDesign) voiddeleteGeneProductAlignmentAssociations(ArrayDesign arrayDesign) voiddeleteGeneProductAnnotationAssociations(ArrayDesign arrayDesign) voiddeleteGeneProductAssociations(ArrayDesign arrayDesign) protected ArrayDesignValueObjectLoads a single value objects for the given array design.find(ArrayDesign entity) Does a look up for the given entity in the persistent storage, usually looking for a specific identifier ( either id or a string property).findByAlternateName(String queryString) findByManufacturer(String queryString) findByName(String name) findByShortName(String shortName) findByTaxon(Taxon taxon) findOneByAlternateName(String name) findOneByName(String name) getAllAssociatedBioAssays(ArrayDesign arrayDesign) getAuditEvents(Collection<Long> ids) getBioSequences(ArrayDesign arrayDesign) getExpressionExperiments(ArrayDesign arrayDesign) longgetExpressionExperimentsCount(ArrayDesign arrayDesign) Obtain the number of associated expression experiments.protected QuerygetFilteringCountQuery(Filters filters) Produce a query that will be used to retrieve the size ofAbstractQueryFilteringVoEnabledDao.getFilteringQuery(Filters, Sort).protected QuerygetFilteringIdQuery(Filters filters, Sort sort) Produce a query that will be used to retrieve IDs ofAbstractQueryFilteringVoEnabledDao.getFilteringQuery(Filters, Sort).protected QuerygetFilteringQuery(Filters filters, Sort sort) Produce a query for retrieving value objects after applying a set of filters and a given ordering.getGenes(ArrayDesign arrayDesign) Obtain all the genes associated to the platform.getGenesByCompositeSequence(Collection<ArrayDesign> arrayDesign) getGenesByCompositeSequence(ArrayDesign arrayDesign) Obtain all the genes associated to the platform organized by corresponding design elements.getSwitchedExpressionExperiments(ArrayDesign arrayDesign) Get the ids of experiments that "originally" used this platform, but which don't any more due to a platform switch.getSwitchedExpressionExperimentsCount(ArrayDesign arrayDesign) Count the number of switchedExpressionExperimentfrom a given platform.getTaxa(ArrayDesign arrayDesign) protected voidInitialize a result fromAbstractQueryFilteringVoEnabledDao.getFilteringQuery(Filters, Sort)retrieved from the HibernateStandardQueryCache.isMerged(Collection<Long> ids) isMergee(Collection<Long> ids) isSubsumed(Collection<Long> ids) isSubsumer(Collection<Long> ids) loadAlignments(ArrayDesign arrayDesign) loadBlacklistedValueObjects(Filters filters, Sort sort, int offset, int limit) loadCompositeSequences(ArrayDesign arrayDesign, int limit, int offset) loadValueObjectsForEE(Long eeId) longlonglonglonglonglonglonglongnumAllGenes(Collection<Long> ids) longnumBioSequences(ArrayDesign arrayDesign) longnumBlatResults(ArrayDesign arrayDesign) longnumCompositeSequences(ArrayDesign arrayDesign) longnumCompositeSequenceWithBioSequences(ArrayDesign arrayDesign) longnumCompositeSequenceWithBlatResults(ArrayDesign arrayDesign) longnumCompositeSequenceWithGenes(ArrayDesign arrayDesign) longnumExperiments(ArrayDesign arrayDesign) longnumGenes(ArrayDesign arrayDesign) protected voidPost-process VOs in bulk.voidremove(ArrayDesign arrayDesign) Remove a persistent instancevoidremoveBiologicalCharacteristics(ArrayDesign arrayDesign) resolveFilterablePropertyMeta(String propertyName) voidthaw(ArrayDesign arrayDesign) Thaw the given platform as perArrayDesignDao.thawLite(ArrayDesign)with its probes and genes.voidthawCompositeSequences(ArrayDesign arrayDesign) Only thaw the design elements of a given platform.voidthawLite(ArrayDesign arrayDesign) Lightly thaw the given platform.booleanupdateSubsumingStatus(ArrayDesign candidateSubsumer, ArrayDesign candidateSubsumee) Methods inherited from class ubic.gemma.persistence.service.common.auditAndSecurity.curation.AbstractCuratableDao
addEventsToMap, addNonTroubledFilter, distinctIfNecessary, formNativeNonTroubledClause, formNonTroubledClause, groupByIfNecessary, loadTroubledIds, updateCurationDetailsFromAuditEventMethods inherited from class ubic.gemma.persistence.service.AbstractQueryFilteringVoEnabledDao
count, countWithCache, getEntityTransformer, getValueObjectTransformer, load, load, loadIds, loadIdsWithCache, loadValueObjects, loadValueObjects, loadValueObjectsWithCache, loadValueObjectsWithCache, loadWithCache, loadWithCacheMethods inherited from class ubic.gemma.persistence.service.AbstractFilteringVoEnabledDao
afterPropertiesSet, getFilter, getFilter, getFilter, getFilter, getFilter, getFilter, getFilterableProperties, getFilterablePropertyAllowedValues, getFilterablePropertyDescription, getFilterablePropertyMeta, getFilterablePropertyType, getSort, isFilterablePropertyDeprecated, isFilterablePropertyUsingSubquery, resolveFilterablePropertyMetaMethods inherited from class ubic.gemma.persistence.service.AbstractVoEnabledDao
doLoadValueObjects, loadAllValueObjects, loadValueObject, loadValueObjectById, loadValueObjects, loadValueObjectsByIdsMethods inherited from class ubic.gemma.persistence.service.AbstractDao
countAll, create, create, findByProperty, findByPropertyIn, findOneByProperty, findOrCreate, getBatchSize, getElementClass, getEntityName, getIdentifierPropertyName, getSessionFactory, load, load, loadAll, loadReference, loadReference, reload, reload, remove, remove, save, save, streamAll, streamAll, streamQuery, update, updateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ubic.gemma.persistence.service.BaseDao
countAll, create, create, findOrCreate, getElementClass, load, load, loadAll, loadReference, loadReference, reload, reload, remove, remove, save, save, streamAll, streamAll, update, updateMethods inherited from interface ubic.gemma.persistence.service.BaseVoEnabledDao
loadAllValueObjects, loadValueObject, loadValueObjectById, loadValueObjects, loadValueObjectsByIdsMethods inherited from interface ubic.gemma.persistence.service.CachedFilteringDao
countWithCache, loadIdsWithCache, loadWithCache, loadWithCacheMethods inherited from interface ubic.gemma.persistence.service.CachedFilteringVoEnabledDao
loadValueObjectsWithCache, loadValueObjectsWithCacheMethods inherited from interface ubic.gemma.persistence.service.common.auditAndSecurity.curation.CuratableDao
loadTroubledIds, updateCurationDetailsFromAuditEventMethods inherited from interface ubic.gemma.persistence.service.FilteringDao
count, getFilter, getFilter, getFilter, getFilter, getFilter, getFilter, getFilterableProperties, getFilterablePropertyAllowedValues, getFilterablePropertyDescription, getFilterablePropertyType, getSort, isFilterablePropertyDeprecated, isFilterablePropertyUsingSubquery, load, load, loadIdsMethods inherited from interface ubic.gemma.persistence.service.FilteringVoEnabledDao
loadValueObjects, loadValueObjects
-
Constructor Details
-
ArrayDesignDaoImpl
-
-
Method Details
-
loadAllGenericGenePlatforms
- Specified by:
loadAllGenericGenePlatformsin interfaceArrayDesignDao
-
addProbes
- Specified by:
addProbesin interfaceArrayDesignDao
-
deleteAlignmentData
- Specified by:
deleteAlignmentDatain interfaceArrayDesignDao
-
deleteGeneProductAlignmentAssociations
- Specified by:
deleteGeneProductAlignmentAssociationsin interfaceArrayDesignDao
-
deleteGeneProductAnnotationAssociations
- Specified by:
deleteGeneProductAnnotationAssociationsin interfaceArrayDesignDao
-
loadBlacklistedValueObjects
public Slice<ArrayDesignValueObject> loadBlacklistedValueObjects(@Nullable Filters filters, @Nullable Sort sort, int offset, int limit) - Specified by:
loadBlacklistedValueObjectsin interfaceArrayDesignDao
-
deleteGeneProductAssociations
- Specified by:
deleteGeneProductAssociationsin interfaceArrayDesignDao
-
findByShortName
- Specified by:
findByShortNamein interfaceArrayDesignDao
-
findByName
- Specified by:
findByNamein interfaceArrayDesignDao
-
findOneByName
- Specified by:
findOneByNamein interfaceArrayDesignDao
-
find
Description copied from interface:BaseDaoDoes a look up for the given entity in the persistent storage, usually looking for a specific identifier ( either id or a string property).- Specified by:
findin interfaceBaseDao<ArrayDesign>- Overrides:
findin classAbstractDao<ArrayDesign>- Parameters:
entity- the entity to look for.- Returns:
- an entity that was found in the persistent storage, or null if no such entity was found.
-
findByAlternateName
- Specified by:
findByAlternateNamein interfaceArrayDesignDao
-
findOneByAlternateName
- Specified by:
findOneByAlternateNamein interfaceArrayDesignDao
-
findByManufacturer
- Specified by:
findByManufacturerin interfaceArrayDesignDao
-
findByTaxon
- Specified by:
findByTaxonin interfaceArrayDesignDao
-
getAllAssociatedBioAssays
- Specified by:
getAllAssociatedBioAssaysin interfaceArrayDesignDao
-
getAuditEvents
- Specified by:
getAuditEventsin interfaceArrayDesignDao
-
getBioSequences
- Specified by:
getBioSequencesin interfaceArrayDesignDao
-
getGenes
Description copied from interface:ArrayDesignDaoObtain all the genes associated to the platform.- Specified by:
getGenesin interfaceArrayDesignDao
-
getGenesByCompositeSequence
Description copied from interface:ArrayDesignDaoObtain all the genes associated to the platform organized by corresponding design elements.- Specified by:
getGenesByCompositeSequencein interfaceArrayDesignDao
-
getGenesByCompositeSequence
public Map<CompositeSequence,Set<Gene>> getGenesByCompositeSequence(Collection<ArrayDesign> arrayDesign) - Specified by:
getGenesByCompositeSequencein interfaceArrayDesignDao
-
getExpressionExperiments
- Specified by:
getExpressionExperimentsin interfaceArrayDesignDao
-
getExpressionExperimentsCount
Description copied from interface:ArrayDesignDaoObtain the number of associated expression experiments.This is much faster than looking up the size of
ArrayDesignDao.getExpressionExperiments(ArrayDesign).- Specified by:
getExpressionExperimentsCountin interfaceArrayDesignDao
-
getPerTaxonCount
- Specified by:
getPerTaxonCountin interfaceArrayDesignDao
-
getSwitchedExpressionExperiments
Get the ids of experiments that "originally" used this platform, but which don't any more due to a platform switch.- Specified by:
getSwitchedExpressionExperimentsin interfaceArrayDesignDao- Parameters:
arrayDesign- a platform for which the statistic is computed- Returns:
- collection of experiment IDs.
-
getSwitchedExpressionExperimentsCount
Description copied from interface:ArrayDesignDaoCount the number of switchedExpressionExperimentfrom a given platform.- Specified by:
getSwitchedExpressionExperimentsCountin interfaceArrayDesignDao
-
getTaxa
- Specified by:
getTaxain interfaceArrayDesignDao
-
isMerged
- Specified by:
isMergedin interfaceArrayDesignDao
-
isMergee
- Specified by:
isMergeein interfaceArrayDesignDao
-
isSubsumed
- Specified by:
isSubsumedin interfaceArrayDesignDao
-
isSubsumer
- Specified by:
isSubsumerin interfaceArrayDesignDao
-
loadAlignments
- Specified by:
loadAlignmentsin interfaceArrayDesignDao
-
loadCompositeSequences
public Collection<CompositeSequence> loadCompositeSequences(ArrayDesign arrayDesign, int limit, int offset) - Specified by:
loadCompositeSequencesin interfaceArrayDesignDao
-
doLoadValueObject
Loads a single value objects for the given array design.- Specified by:
doLoadValueObjectin classAbstractVoEnabledDao<ArrayDesign,ArrayDesignValueObject> - Parameters:
ad- the array design to be converted to a value object- Returns:
- a value object with properties of the given array design.
-
postProcessValueObjects
Description copied from class:AbstractVoEnabledDaoPost-process VOs in bulk.Use this as an opportunity to load extra informations that could not be populated in the initial
AbstractVoEnabledDao.doLoadValueObject(Identifiable)orAbstractVoEnabledDao.doLoadValueObjects(Collection)- Overrides:
postProcessValueObjectsin classAbstractVoEnabledDao<ArrayDesign,ArrayDesignValueObject>
-
loadValueObjectsForEE
- Specified by:
loadValueObjectsForEEin interfaceArrayDesignDao
-
numAllCompositeSequenceWithBioSequences
public long numAllCompositeSequenceWithBioSequences()- Specified by:
numAllCompositeSequenceWithBioSequencesin interfaceArrayDesignDao
-
numAllCompositeSequenceWithBioSequences
- Specified by:
numAllCompositeSequenceWithBioSequencesin interfaceArrayDesignDao
-
numAllCompositeSequenceWithBlatResults
public long numAllCompositeSequenceWithBlatResults()- Specified by:
numAllCompositeSequenceWithBlatResultsin interfaceArrayDesignDao
-
numAllCompositeSequenceWithBlatResults
- Specified by:
numAllCompositeSequenceWithBlatResultsin interfaceArrayDesignDao
-
numAllCompositeSequenceWithGenes
public long numAllCompositeSequenceWithGenes()- Specified by:
numAllCompositeSequenceWithGenesin interfaceArrayDesignDao
-
numAllCompositeSequenceWithGenes
- Specified by:
numAllCompositeSequenceWithGenesin interfaceArrayDesignDao
-
numAllGenes
public long numAllGenes()- Specified by:
numAllGenesin interfaceArrayDesignDao
-
numAllGenes
- Specified by:
numAllGenesin interfaceArrayDesignDao
-
numBioSequences
- Specified by:
numBioSequencesin interfaceArrayDesignDao
-
numBlatResults
- Specified by:
numBlatResultsin interfaceArrayDesignDao
-
numCompositeSequences
- Specified by:
numCompositeSequencesin interfaceArrayDesignDao
-
numCompositeSequenceWithBioSequences
- Specified by:
numCompositeSequenceWithBioSequencesin interfaceArrayDesignDao
-
numCompositeSequenceWithBlatResults
- Specified by:
numCompositeSequenceWithBlatResultsin interfaceArrayDesignDao
-
numCompositeSequenceWithGenes
- Specified by:
numCompositeSequenceWithGenesin interfaceArrayDesignDao
-
numExperiments
- Specified by:
numExperimentsin interfaceArrayDesignDao
-
numGenes
- Specified by:
numGenesin interfaceArrayDesignDao
-
remove
Description copied from interface:BaseDaoRemove a persistent instance- Specified by:
removein interfaceBaseDao<ArrayDesign>- Overrides:
removein classAbstractDao<ArrayDesign>- Parameters:
arrayDesign- the entity to be removed
-
removeBiologicalCharacteristics
- Specified by:
removeBiologicalCharacteristicsin interfaceArrayDesignDao
-
thawLite
Description copied from interface:ArrayDesignDaoLightly thaw the given platform.This includes all the to-one relations, but not the design elements.
- Specified by:
thawLitein interfaceArrayDesignDao
-
thaw
Description copied from interface:ArrayDesignDaoThaw the given platform as perArrayDesignDao.thawLite(ArrayDesign)with its probes and genes.- Specified by:
thawin interfaceArrayDesignDao
-
thawCompositeSequences
Description copied from interface:ArrayDesignDaoOnly thaw the design elements of a given platform.- Specified by:
thawCompositeSequencesin interfaceArrayDesignDao
-
updateSubsumingStatus
- Specified by:
updateSubsumingStatusin interfaceArrayDesignDao
-
getFilteringQuery
Description copied from class:AbstractQueryFilteringVoEnabledDaoProduce a query for retrieving value objects after applying a set of filters and a given ordering.Note that if your implementation does not produce a
ListofAbstractQueryFilteringVoEnabledDaowhenQuery.list()is invoked, you must overrideAbstractQueryFilteringVoEnabledDao.getValueObjectTransformer().The make the cached query (i.e.
AbstractQueryFilteringVoEnabledDao.loadWithCache(Filters, Sort)behave the same, you also have to explicitly initialize any lazy relations inAbstractVoEnabledDao.doLoadValueObject(Identifiable)because the VO constructor will not initialize them.- Specified by:
getFilteringQueryin classAbstractQueryFilteringVoEnabledDao<ArrayDesign,ArrayDesignValueObject> - Returns:
- a
Querythat produce a list ofAbstractQueryFilteringVoEnabledDao
-
initializeCachedFilteringResult
Description copied from class:AbstractQueryFilteringVoEnabledDaoInitialize a result fromAbstractQueryFilteringVoEnabledDao.getFilteringQuery(Filters, Sort)retrieved from the HibernateStandardQueryCache.Lazy-loaded relations that are fetched in
AbstractQueryFilteringVoEnabledDao.getFilteringQuery(Filters, Sort)must be initialized manually in this method to ensure that the entity has all the expected fields if they are retrieved from the second-level cache.- Specified by:
initializeCachedFilteringResultin classAbstractQueryFilteringVoEnabledDao<ArrayDesign,ArrayDesignValueObject>
-
getFilteringIdQuery
Description copied from class:AbstractQueryFilteringVoEnabledDaoProduce a query that will be used to retrieve IDs ofAbstractQueryFilteringVoEnabledDao.getFilteringQuery(Filters, Sort).- Overrides:
getFilteringIdQueryin classAbstractQueryFilteringVoEnabledDao<ArrayDesign,ArrayDesignValueObject>
-
getFilteringCountQuery
Description copied from class:AbstractQueryFilteringVoEnabledDaoProduce a query that will be used to retrieve the size ofAbstractQueryFilteringVoEnabledDao.getFilteringQuery(Filters, Sort).- Overrides:
getFilteringCountQueryin classAbstractQueryFilteringVoEnabledDao<ArrayDesign,ArrayDesignValueObject> - Returns:
- a
Querywhich must return a singleLongvalue
-
configureFilterableProperties
protected void configureFilterableProperties(AbstractFilteringVoEnabledDao<ArrayDesign, ArrayDesignValueObject>.FilterablePropertiesConfigurer configurer) Description copied from class:AbstractFilteringVoEnabledDaoRegister filterable properties.- Overrides:
configureFilterablePropertiesin classAbstractCuratableDao<ArrayDesign,ArrayDesignValueObject>
-
resolveFilterablePropertyMeta
protected AbstractFilteringVoEnabledDao.FilterablePropertyMeta.FilterablePropertyMetaBuilder resolveFilterablePropertyMeta(String propertyName) Description copied from class:AbstractCuratableDaoObtain various meta-information used to infer what to use in aFilterorSort.This is used by
AbstractFilteringVoEnabledDao.getFilter(String, Filter.Operator, String)andFilteringDao.getSort(String, Sort.Direction, Sort.NullMode).Include filtering by
lastUpdated,troubledandneedsAttentionfrom the associated curation details.- Overrides:
resolveFilterablePropertyMetain classAbstractCuratableDao<ArrayDesign,ArrayDesignValueObject> - See Also:
-