Class SingleCellExperimentDesignAuditServiceImpl
java.lang.Object
ubic.gemma.persistence.service.expression.experiment.SingleCellExperimentDesignAuditServiceImpl
- All Implemented Interfaces:
SingleCellExperimentDesignAuditService
@Service
public class SingleCellExperimentDesignAuditServiceImpl
extends Object
implements SingleCellExperimentDesignAuditService
Implementation of
SingleCellExperimentDesignAuditService: a thin
co-bean that exists so the @Audited aspect can intercept the
cell-type-factor create / remove audit emissions previously written
imperatively from private helpers in
SingleCellExpressionExperimentServiceImpl.
The Transactional default propagation (REQUIRED) joins
whichever transaction the caller is in (all callers in
SingleCellExpressionExperimentServiceImpl run with
@Transactional themselves).
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidrecordCellTypeFactorCreated(ExpressionExperiment ee, ExperimentalFactor cellTypeFactor, String ctlDescription) Record anExperimentalDesignUpdatedEventagainst the EE noting the creation of a cell-type factor from a preferred cell-type assignment.voidrecordCellTypeFactorRemoved(ExpressionExperiment ee, ExperimentalFactor removedCellTypeFactor) Record anExperimentalDesignUpdatedEventagainst the EE noting the removal of an existing cell-type factor.
-
Constructor Details
-
SingleCellExperimentDesignAuditServiceImpl
public SingleCellExperimentDesignAuditServiceImpl()
-
-
Method Details
-
recordCellTypeFactorCreated
@Transactional @Audited(value=ExperimentalDesignUpdatedEvent.class, messageSpel="'Created a cell type factor ' + #cellTypeFactor + ' from preferred cell type assignment ' + #ctlDescription + '.'") public void recordCellTypeFactorCreated(ExpressionExperiment ee, ExperimentalFactor cellTypeFactor, String ctlDescription) Record anExperimentalDesignUpdatedEventagainst the EE noting the creation of a cell-type factor from a preferred cell-type assignment.The
Auditedannotation drives emission through theAuditedAspect; this method body is intentionally a logging-only marker so the proxy-intercepted return triggers exactly oneExperimentalDesignUpdatedEvent.- Specified by:
recordCellTypeFactorCreatedin interfaceSingleCellExperimentDesignAuditService- Parameters:
ee- experiment to auditcellTypeFactor- the freshly created cell-type factorctlDescription- the preferred CTA'stoString(passed by caller so the message matches the historical imperative form verbatim)
-
recordCellTypeFactorRemoved
@Transactional @Audited(value=ExperimentalDesignUpdatedEvent.class, messageSpel="'Removed the cell type factor ' + #removedCellTypeFactor + '.'") public void recordCellTypeFactorRemoved(ExpressionExperiment ee, ExperimentalFactor removedCellTypeFactor) Record anExperimentalDesignUpdatedEventagainst the EE noting the removal of an existing cell-type factor.The
Auditedannotation drives emission through theAuditedAspect; this method body is intentionally a logging-only marker so the proxy-intercepted return triggers exactly oneExperimentalDesignUpdatedEvent.- Specified by:
recordCellTypeFactorRemovedin interfaceSingleCellExperimentDesignAuditService- Parameters:
ee- experiment to auditremovedCellTypeFactor- the cell-type factor that was removed
-