Class ProcessedExpressionDataVectorServiceImpl
- java.lang.Object
-
- ubic.gemma.persistence.service.AbstractService<T>
-
- ubic.gemma.persistence.service.expression.bioAssayData.AbstractDesignElementDataVectorService<ProcessedExpressionDataVector>
-
- ubic.gemma.persistence.service.expression.bioAssayData.ProcessedExpressionDataVectorServiceImpl
-
- All Implemented Interfaces:
BaseImmutableService<ProcessedExpressionDataVector>,BaseReadOnlyService<ProcessedExpressionDataVector>,BaseService<ProcessedExpressionDataVector>,ProcessedExpressionDataVectorService
@Service public class ProcessedExpressionDataVectorServiceImpl extends AbstractDesignElementDataVectorService<ProcessedExpressionDataVector> implements ProcessedExpressionDataVectorService
- Author:
- Paul
-
-
Field Summary
-
Fields inherited from class ubic.gemma.persistence.service.AbstractService
log
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedProcessedExpressionDataVectorServiceImpl(ProcessedExpressionDataVectorDao mainDao)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description intcomputeProcessedExpressionData(ExpressionExperiment ee)Create processed vectors and update ranks.intcomputeProcessedExpressionData(ExpressionExperiment ee, boolean ignoreQuantitationMismatch)Create processed vectors and update ranks.intcreateProcessedDataVectors(ExpressionExperiment expressionExperiment)intcreateProcessedDataVectors(ExpressionExperiment expressionExperiment, boolean ignoreQuantitationMismatch)Collection<T>find(Collection<QuantitationType> quantitationTypes)Find specific type (DesignElementDataVectorService) of vectors that meet the given criteria.Collection<T>find(QuantitationType quantitationType)Find specific type (DesignElementDataVectorService) of vectors that meet the given criteria.Collection<T>find(BioAssayDimension bioAssayDimension)Find specific type (raw or processed, depending on the service) of vectors that meet the given criteria.Collection<T>findAndThaw(Collection<QuantitationType> quantitationTypes)Collection<T>findAndThaw(QuantitationType quantitationType)Find and thaw specific type (DesignElementDataVectorService) of vectors that meet the given criteria.Collection<T>findAndThaw(BioAssayDimension bioAssayDimension)List<DoubleVectorValueObject>getDiffExVectors(Long resultSetId, double threshold, int maxNumberOfResults)List<ExperimentExpressionLevelsValueObject>getExpressionLevels(Collection<ExpressionExperiment> ees, Collection<Gene> genes, boolean keepGeneNonSpecific, String consolidateMode)List<ExperimentExpressionLevelsValueObject>getExpressionLevelsByIds(Collection<Long> eeIds, Collection<Gene> genes, boolean keepGeneNonSpecific, String consolidateMode)Retrieve expression levels by dataset IDs.List<ExperimentExpressionLevelsValueObject>getExpressionLevelsDiffEx(Collection<ExpressionExperiment> ees, Long diffExResultSetId, double threshold, int max, boolean keepGeneNonSpecific, String consolidateMode)List<ExperimentExpressionLevelsValueObject>getExpressionLevelsPca(Collection<ExpressionExperiment> ees, int limit, int component, boolean keepGeneNonSpecific, String consolidateMode)Collection<DoubleVectorValueObject>getProcessedDataArrays(Collection<ExpressionExperiment> expressionExperiments, Collection<Long> genes)Collection<DoubleVectorValueObject>getProcessedDataArrays(BioAssaySet bioAssaySet, Collection<Long> genes)Collection<DoubleVectorValueObject>getProcessedDataArrays(ExpressionExperiment expressionExperiment)Collection<DoubleVectorValueObject>getProcessedDataArraysByProbe(Collection<ExpressionExperiment> expressionExperiments, Collection<CompositeSequence> compositeSequences)Collection<ProcessedExpressionDataVector>getProcessedDataVectors(ExpressionExperiment expressionExperiment)Collection<ProcessedExpressionDataVector>getProcessedDataVectorsAndThaw(ExpressionExperiment expressionExperiment)Retrieve and thaw a collection of vectors for a given experiment.Collection<DoubleVectorValueObject>getRandomProcessedDataArrays(ExpressionExperiment ee, int limit)Map<ExpressionExperiment,Map<Gene,Collection<Double>>>getRanks(Collection<ExpressionExperiment> expressionExperiments, Collection<Gene> genes, ProcessedExpressionDataVectorDao.RankMethod method)voidreorderByDesign(ExpressionExperiment ee)Creates new bioAssayDimensions to match the experimental design, reorders the data to match, updates.intreplaceProcessedDataVectors(ExpressionExperiment ee, Collection<ProcessedExpressionDataVector> vectors)Replace the processed vectors of a EE with the given vectors.Collection<T>thaw(Collection<T> vectors)Deprecated.UsefindAndThaw(QuantitationType),findAndThaw(Collection)orfindAndThaw(BioAssayDimension)instead, it's much more efficient.voidupdateRanks(ExpressionExperiment ee)Update the ranks of the processed vectors for the given experiment.-
Methods inherited from class ubic.gemma.persistence.service.expression.bioAssayData.AbstractDesignElementDataVectorService
find, find, find, findAndThaw, findAndThaw, findAndThaw, thaw
-
Methods inherited from class ubic.gemma.persistence.service.AbstractService
countAll, create, create, ensureInSession, ensureInSession, find, findOrCreate, findOrFail, getElementClass, load, load, loadAll, loadOrFail, loadOrFail, loadOrFail, loadOrFail, remove, remove, remove, save, save, update, update
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface ubic.gemma.persistence.service.BaseReadOnlyService
countAll, find, findOrFail, getElementClass, load, load, loadAll, loadOrFail, loadOrFail, loadOrFail, loadOrFail
-
-
-
-
Constructor Detail
-
ProcessedExpressionDataVectorServiceImpl
@Autowired protected ProcessedExpressionDataVectorServiceImpl(ProcessedExpressionDataVectorDao mainDao)
-
-
Method Detail
-
createProcessedDataVectors
@Transactional public int createProcessedDataVectors(ExpressionExperiment expressionExperiment)
- Specified by:
createProcessedDataVectorsin interfaceProcessedExpressionDataVectorService- See Also:
ProcessedExpressionDataVectorDao.createProcessedDataVectors(ExpressionExperiment, boolean)
-
createProcessedDataVectors
@Transactional public int createProcessedDataVectors(ExpressionExperiment expressionExperiment, boolean ignoreQuantitationMismatch) throws QuantitationMismatchException
- Specified by:
createProcessedDataVectorsin interfaceProcessedExpressionDataVectorService- Throws:
QuantitationMismatchException- See Also:
ProcessedExpressionDataVectorDao.createProcessedDataVectors(ExpressionExperiment, boolean)
-
computeProcessedExpressionData
@Transactional public int computeProcessedExpressionData(ExpressionExperiment ee)
Description copied from interface:ProcessedExpressionDataVectorServiceCreate processed vectors and update ranks.Mismatch between quantitation type and data is ignored.
-
computeProcessedExpressionData
@Transactional public int computeProcessedExpressionData(ExpressionExperiment ee, boolean ignoreQuantitationMismatch) throws QuantitationMismatchException
Description copied from interface:ProcessedExpressionDataVectorServiceCreate processed vectors and update ranks.- Specified by:
computeProcessedExpressionDatain interfaceProcessedExpressionDataVectorService- Throws:
QuantitationMismatchException- See Also:
ProcessedExpressionDataVectorService.createProcessedDataVectors(ExpressionExperiment, boolean),ProcessedExpressionDataVectorService.updateRanks(ExpressionExperiment)
-
replaceProcessedDataVectors
@Transactional public int replaceProcessedDataVectors(ExpressionExperiment ee, Collection<ProcessedExpressionDataVector> vectors)
Description copied from interface:ProcessedExpressionDataVectorServiceReplace the processed vectors of a EE with the given vectors.Ranks are recomputed.
- Specified by:
replaceProcessedDataVectorsin interfaceProcessedExpressionDataVectorService- Parameters:
ee- eevectors- non-persistent, all of the same quantitationtype
-
reorderByDesign
@Transactional public void reorderByDesign(ExpressionExperiment ee)
Description copied from interface:ProcessedExpressionDataVectorServiceCreates new bioAssayDimensions to match the experimental design, reorders the data to match, updates.- Specified by:
reorderByDesignin interfaceProcessedExpressionDataVectorService
-
updateRanks
@Transactional public void updateRanks(ExpressionExperiment ee)
Description copied from interface:ProcessedExpressionDataVectorServiceUpdate the ranks of the processed vectors for the given experiment.- Specified by:
updateRanksin interfaceProcessedExpressionDataVectorService
-
getExpressionLevels
@Transactional(readOnly=true) public List<ExperimentExpressionLevelsValueObject> getExpressionLevels(Collection<ExpressionExperiment> ees, Collection<Gene> genes, boolean keepGeneNonSpecific, @Nullable String consolidateMode)
- Specified by:
getExpressionLevelsin interfaceProcessedExpressionDataVectorService- Parameters:
ees- expressionExperimentsgenes- geneskeepGeneNonSpecific- whether to keep vectors that are not specific to the geneconsolidateMode- how to consolidate the vectors when there is more than one- Returns:
- value objects containing structured information about the expression levels of given genes
-
getExpressionLevelsByIds
@Transactional(readOnly=true) public List<ExperimentExpressionLevelsValueObject> getExpressionLevelsByIds(Collection<Long> eeIds, Collection<Gene> genes, boolean keepGeneNonSpecific, @Nullable String consolidateMode)
Description copied from interface:ProcessedExpressionDataVectorServiceRetrieve expression levels by dataset IDs.
-
getExpressionLevelsPca
@Transactional(readOnly=true) public List<ExperimentExpressionLevelsValueObject> getExpressionLevelsPca(Collection<ExpressionExperiment> ees, int limit, int component, boolean keepGeneNonSpecific, @Nullable String consolidateMode)
- Specified by:
getExpressionLevelsPcain interfaceProcessedExpressionDataVectorService- Parameters:
ees- expressionExperimentslimit- thresholdcomponent- the principal componentkeepGeneNonSpecific- whether to keep vectors that are not specific to the geneconsolidateMode- how to consolidate the vectors when there is more than one- Returns:
- value objects containing structured information about the expression levels of genes highly loaded in the given principal component.
-
getExpressionLevelsDiffEx
@Transactional(readOnly=true) public List<ExperimentExpressionLevelsValueObject> getExpressionLevelsDiffEx(Collection<ExpressionExperiment> ees, Long diffExResultSetId, double threshold, int max, boolean keepGeneNonSpecific, @Nullable String consolidateMode)
- Specified by:
getExpressionLevelsDiffExin interfaceProcessedExpressionDataVectorService- Parameters:
ees- eesdiffExResultSetId- the differential expression result set to accessthreshold- thresholdmax- max levelkeepGeneNonSpecific- whether to keep vectors that are not specific to the geneconsolidateMode- how to consolidate the vectors when there is more than one- Returns:
- value objects containing structured information about the expression levels of genes highly loaded in the given principal component.
-
getProcessedDataArrays
@Transactional(readOnly=true) public Collection<DoubleVectorValueObject> getProcessedDataArrays(Collection<ExpressionExperiment> expressionExperiments, Collection<Long> genes)
- Specified by:
getProcessedDataArraysin interfaceProcessedExpressionDataVectorService- See Also:
CachedProcessedExpressionDataVectorService.getProcessedDataArrays(Collection, Collection)
-
getProcessedDataArrays
@Transactional(readOnly=true) public Collection<DoubleVectorValueObject> getProcessedDataArrays(BioAssaySet bioAssaySet, Collection<Long> genes)
- Specified by:
getProcessedDataArraysin interfaceProcessedExpressionDataVectorService- See Also:
CachedProcessedExpressionDataVectorService.getProcessedDataArrays(BioAssaySet, Collection)
-
getProcessedDataArrays
@Transactional(readOnly=true) public Collection<DoubleVectorValueObject> getProcessedDataArrays(ExpressionExperiment expressionExperiment)
- Specified by:
getProcessedDataArraysin interfaceProcessedExpressionDataVectorService- See Also:
CachedProcessedExpressionDataVectorService.getProcessedDataArrays(BioAssaySet)
-
getRandomProcessedDataArrays
@Transactional(readOnly=true) public Collection<DoubleVectorValueObject> getRandomProcessedDataArrays(ExpressionExperiment ee, int limit)
- Specified by:
getRandomProcessedDataArraysin interfaceProcessedExpressionDataVectorService- See Also:
CachedProcessedExpressionDataVectorService.getRandomProcessedDataArrays(BioAssaySet, int)
-
getProcessedDataArraysByProbe
@Transactional(readOnly=true) public Collection<DoubleVectorValueObject> getProcessedDataArraysByProbe(Collection<ExpressionExperiment> expressionExperiments, Collection<CompositeSequence> compositeSequences)
-
getProcessedDataVectors
@Transactional(readOnly=true) public Collection<ProcessedExpressionDataVector> getProcessedDataVectors(ExpressionExperiment expressionExperiment)
- Specified by:
getProcessedDataVectorsin interfaceProcessedExpressionDataVectorService- See Also:
ProcessedExpressionDataVectorDao.getProcessedVectors(ExpressionExperiment)
-
getProcessedDataVectorsAndThaw
@Transactional(readOnly=true) public Collection<ProcessedExpressionDataVector> getProcessedDataVectorsAndThaw(ExpressionExperiment expressionExperiment)
Description copied from interface:ProcessedExpressionDataVectorServiceRetrieve and thaw a collection of vectors for a given experiment.
-
getRanks
@Transactional(readOnly=true) public Map<ExpressionExperiment,Map<Gene,Collection<Double>>> getRanks(Collection<ExpressionExperiment> expressionExperiments, Collection<Gene> genes, ProcessedExpressionDataVectorDao.RankMethod method)
-
getDiffExVectors
@Transactional(readOnly=true) public List<DoubleVectorValueObject> getDiffExVectors(Long resultSetId, double threshold, int maxNumberOfResults)
- Specified by:
getDiffExVectorsin interfaceProcessedExpressionDataVectorService
-
find
@Secured({"IS_AUTHENTICATED_ANONYMOUSLY","AFTER_ACL_DATAVECTOR_COLLECTION_READ"}) public abstract Collection<T> find(BioAssayDimension bioAssayDimension)Find specific type (raw or processed, depending on the service) of vectors that meet the given criteria.- Parameters:
bioAssayDimension- the BA dimension- Returns:
- the found vectors of type
DesignElementDataVectorService
-
findAndThaw
@Secured({"IS_AUTHENTICATED_ANONYMOUSLY","AFTER_ACL_DATAVECTOR_COLLECTION_READ"}) public abstract Collection<T> findAndThaw(BioAssayDimension bioAssayDimension)
-
find
@Secured("GROUP_ADMIN") public abstract Collection<T> find(Collection<QuantitationType> quantitationTypes)Find specific type (DesignElementDataVectorService) of vectors that meet the given criteria.- Parameters:
quantitationTypes- the QTs- Returns:
- the found vectors of type
DesignElementDataVectorService
-
findAndThaw
@Secured("GROUP_ADMIN") public abstract Collection<T> findAndThaw(Collection<QuantitationType> quantitationTypes)
-
find
@Secured({"IS_AUTHENTICATED_ANONYMOUSLY","AFTER_ACL_DATAVECTOR_COLLECTION_READ"}) public abstract Collection<T> find(QuantitationType quantitationType)Find specific type (DesignElementDataVectorService) of vectors that meet the given criteria.- Parameters:
quantitationType- the QT- Returns:
- the found vectors of type
DesignElementDataVectorService
-
findAndThaw
@Secured({"IS_AUTHENTICATED_ANONYMOUSLY","AFTER_ACL_DATAVECTOR_COLLECTION_READ"}) public abstract Collection<T> findAndThaw(QuantitationType quantitationType)Find and thaw specific type (DesignElementDataVectorService) of vectors that meet the given criteria.
-
thaw
@CheckReturnValue @Deprecated public abstract Collection<T> thaw(Collection<T> vectors)
Deprecated.UsefindAndThaw(QuantitationType),findAndThaw(Collection)orfindAndThaw(BioAssayDimension)instead, it's much more efficient.Thaw the given vectors.
-
-