Class EeWriteServiceImpl
java.lang.Object
ubic.gemma.persistence.persister.EeWriteServiceImpl
- All Implemented Interfaces:
EeWriteService
Strangler-fig replacement for the EE-graph write path historically owned by
ExpressionPersister (now removed; the polymorphic EE dispatch arms
have been folded into PersisterHelperImpl.doPersist(Collection, Map)). Per-call caches
are plumbed as explicit Map<KEY, VALUE> parameters (Phase 3 lift;
formerly all carried on the now-deleted AbstractPersister.Caches POJO).
Persister-shrink S4a: this class autowires the typed leaf persister beans
(CommonPersister, GenomePersister) directly rather than
routing through PersisterHelperImpl. The former persister()
AOP-unwrap helper and the PersisterHelper field are gone.
- Author:
- pavlidis
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionNo-cache overload: synthesises theArrayDesignsForExperimentCacheviaExpressionExperimentPrePersistService.prepare(ExpressionExperiment)in the same transaction.Persist anExpressionExperimentgraph.persistBioAssay(BioAssay bioAssay) Persister-shrink S4c: public typed entry point for standaloneBioAssaypersistence.persistBioMaterial(BioMaterial bioMaterial) Persister-shrink S4c: public typed entry point for standaloneBioMaterialpersistence.
-
Constructor Details
-
EeWriteServiceImpl
public EeWriteServiceImpl()
-
-
Method Details
-
create
@Transactional public ExpressionExperiment create(ExpressionExperiment ee, @Nullable ArrayDesignsForExperimentCache cache) Description copied from interface:EeWriteServicePersist anExpressionExperimentgraph.The
cacheshould be obtained from a prior, separate transaction viaExpressionExperimentPrePersistService.prepare(ExpressionExperiment).- Specified by:
createin interfaceEeWriteService- Parameters:
ee- the expression experiment to persistcache- cache of array designs already persisted in a prior transaction- Returns:
- the persisted entity
-
create
No-cache overload: synthesises theArrayDesignsForExperimentCacheviaExpressionExperimentPrePersistService.prepare(ExpressionExperiment)in the same transaction. Matches the historical behaviour of the polymorphicpersisterHelper.persist(ee)dispatch (the formerExpressionPersister.doPersistEE arm did the same synthesis and emitted a warning recommending a separate transaction). The warning is preserved here.- Specified by:
createin interfaceEeWriteService- Parameters:
ee- the expression experiment to persist- Returns:
- the persisted entity
-
persistBioAssay
Persister-shrink S4c: public typed entry point for standaloneBioAssaypersistence. Opens aFlushMode.MANUALwindow matching the priorPersisterHelperImpl.persist(BioAssay)semantics, allocates fresh per-call caches, and delegates to the package-privatepersistBioAssay(BioAssay, Map, ArrayDesignsForExperimentCache, Map)helper. TheArrayDesignsForExperimentCacheisnullbecause the caller is providing an already-persistent platform on theBioAssay; seefillInBioAssayAssociations(BioAssay, Map, ArrayDesignsForExperimentCache, Map).- Specified by:
persistBioAssayin interfaceEeWriteService- Parameters:
bioAssay- the bioassay to persist- Returns:
- the persisted entity
-
persistBioMaterial
Persister-shrink S4c: public typed entry point for standaloneBioMaterialpersistence. Opens aFlushMode.MANUALwindow matching the priorPersisterHelperImpl.persist(BioMaterial)semantics, allocates fresh per-call caches, and delegates to the package-privatepersistBioMaterial(BioMaterial, Map, Map)helper.- Specified by:
persistBioMaterialin interfaceEeWriteService- Parameters:
bioMaterial- the biomaterial to persist- Returns:
- the persisted entity
-