Class ArrayDesignReportTaskCommand

java.lang.Object
ubic.gemma.core.job.TaskCommand
ubic.gemma.core.tasks.maintenance.ArrayDesignReportTaskCommand
All Implemented Interfaces:
Serializable

public class ArrayDesignReportTaskCommand extends TaskCommand
Regenerate the cached on-disk platform reports, either for every platform or for a single one.

The platform counterpart of ExpressionExperimentReportTaskCommand. Needed because these counts are far too expensive to compute per request — counting distinct genes for one large platform measures ~1.7s against production — and the Quartz trigger that would refresh them monthly (SchedulerConfig.arrayDesignReportTrigger) is gated on the scheduler profile, which production nodes do not run.

Author:
paul
See Also:
  • Constructor Details

    • ArrayDesignReportTaskCommand

      public ArrayDesignReportTaskCommand(Boolean all)
    • ArrayDesignReportTaskCommand

      public ArrayDesignReportTaskCommand(ArrayDesign arrayDesign)
  • Method Details

    • getTaskClass

      public Class<? extends Task<? extends TaskCommand>> getTaskClass()
      Description copied from class: TaskCommand
      Obtain the class of the Task object that will be run for this command.

      If null, the task command cannot be submitted through TaskRunningService.submitTaskCommand(TaskCommand) and a task object must be explicitly created.

      For now, this how we map from TaskCommand to Task that actually runs it. We have to have this mapping somewhere until we make Tasks themselves serializable. Tasks are not readily serializable because they have dependencies to Spring services. at which point TaskCommand can be deprecated(or remain as TaskContext).

      Overrides:
      getTaskClass in class TaskCommand
    • doAll

      public boolean doAll()
    • getArrayDesign

      public ArrayDesign getArrayDesign()
    • setArrayDesign

      public void setArrayDesign(ArrayDesign arrayDesign)
    • setAll

      public void setAll(Boolean all)