Interface CliArrayDesignAuditService

All Known Implementing Classes:
CliArrayDesignAuditServiceImpl

public interface CliArrayDesignAuditService
Co-bean that owns the audit-emission step for the ArrayDesign-targeted CLI tools. Each method is annotated with the appropriate Audited so the AuditedAspect fires when a CLI calls through this bean.

The CLIs themselves are registered as Spring prototype beans (see CliComponentScanConfig), but the imperative auditTrailService.addUpdateEvent(...) sites they previously housed lived inside private void audit(...) helpers invoked from same-class methods. Spring AOP cannot intercept either path: the private modifier hides the join point from the proxy, and the self-invocation targets the underlying this reference rather than the proxy. Hoisting the emission step onto this separately-injected bean restores a proxy boundary so the aspect can do its work.

Each record* method additionally regenerates the array-design report -- preserving the side effect of the legacy audit(...) helpers, which paired the audit-event emission with a report refresh.

  • Method Details

    • recordSequenceAnalysis

      void recordSequenceAnalysis(ArrayDesign arrayDesign, String note)
      Records an ArrayDesignSequenceAnalysisEvent on the platform. Used by ArrayDesignBlatCli after a successful BLAT alignment pass (or after re-using results from a PSL file).
    • recordSequenceUpdate

      void recordSequenceUpdate(ArrayDesign arrayDesign, String note)
      Records an ArrayDesignSequenceUpdateEvent on the platform. Used by ArrayDesignSequenceAssociationCli after attaching or looking up biological sequences for the platform's composite sequences.
    • recordSequenceRemove

      void recordSequenceRemove(ArrayDesign arrayDesign, String note)
      Records an ArrayDesignSequenceRemoveEvent on the platform. Used by ArrayDesignBioSequenceDetachCli after detaching the sequences associated with the platform.
    • recordProbeRenaming

      void recordProbeRenaming(ArrayDesign arrayDesign, String note)
      Records an ArrayDesignProbeRenamingEvent on the platform. Called after applying a probe-renaming map.
    • recordRepeatAnalysis

      void recordRepeatAnalysis(ArrayDesign arrayDesign, String note)
      Records an ArrayDesignRepeatAnalysisEvent on the platform. Used by ArrayDesignRepeatScanCli after running a repeat-masker scan over the platform's sequences.
    • recordSubsumeCheck

      void recordSubsumeCheck(ArrayDesign arrayDesign, String note)
      Records an ArrayDesignSubsumeCheckEvent on the platform. Used by ArrayDesignSubsumptionTesterCli after testing whether the platform subsumes (or is subsumed by) other platforms.
    • recordAnnotationBasedGeneMapping

      void recordAnnotationBasedGeneMapping(ArrayDesign arrayDesign, String note)
      Records an AnnotationBasedGeneMappingEvent on the platform. Used by GenericGenelistDesignGenerator after rebuilding the platform from a list of NCBI gene IDs.
    • recordAlignmentBasedGeneMapping

      void recordAlignmentBasedGeneMapping(ArrayDesign arrayDesign, String note)
      Records an AlignmentBasedGeneMappingEvent on the platform. Used by ArrayDesignProbeMapperCli for runs whose gene mapping came from BLAT alignment / probe sequence analysis (the default mode and the batch path).