Class ArrayDesignProbeMapperCli

All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware, org.springframework.context.EnvironmentAware, CLI

public class ArrayDesignProbeMapperCli extends ArrayDesignSequenceManipulatingCli
Process the blat results for an array design to map them onto genes. Typical workflow would be to run:
  1. Create the array design, perhaps by loading a GPL or via a GSE.
  2. ArrayDesignSequenceAssociationCli - attach sequences to array design, fetching from BLAST database if necessary. For affymetrix designs, get the probe sequences and pass them to the command line (also a web interface)
  3. ArrayDesignBlatCli - runs blat. You must start the appropriate server using the configuration in the properties files.
  4. ArrayDesignProbeMapperCli (this class); you must have the correct GoldenPath database installed and available as configured in your properties files.
This can also allow directly associating probes with genes (via products) based on an input file, without any sequence analysis.

In batch mode, platforms that are "children" (mergees or subsumees) of other platforms will be skipped. Platforms which are themselves merged or subsumers, when run, will result in the child platforms being updated implicitly (via an audit event and report update)

Author:
pavlidis
  • Constructor Details

    • ArrayDesignProbeMapperCli

      public ArrayDesignProbeMapperCli()
  • Method Details

    • getShortDesc

      public String getShortDesc()
      Description copied from interface: CLI
      Obtain a short description for this command explaining what it does.
      Specified by:
      getShortDesc in interface CLI
      Overrides:
      getShortDesc in class AbstractCLI
    • buildArrayDesignOptions

      protected void buildArrayDesignOptions(org.apache.commons.cli.Options options)
      Overrides:
      buildArrayDesignOptions in class ArrayDesignSequenceManipulatingCli
    • processArrayDesignOptions

      protected void processArrayDesignOptions(org.apache.commons.cli.CommandLine commandLine) throws org.apache.commons.cli.ParseException
      See 'configure' for how the other options are handled. (non-Javadoc)
      Overrides:
      processArrayDesignOptions in class ArrayDesignSequenceManipulatingCli
      Throws:
      org.apache.commons.cli.ParseException
    • needToRun

      protected boolean needToRun(Date skipIfLastRunLaterThan, ArrayDesign arrayDesign, Class<? extends ArrayDesignAnalysisEvent> eventClass)
      Override to do additional checks to make sure the array design is in a state of readiness for probe mapping.
      Overrides:
      needToRun in class ArrayDesignSequenceManipulatingCli
      Parameters:
      eventClass - e.g., ArrayDesignSequenceAnalysisEvent.class
      Returns:
      true if skipIfLastRunLaterThan is null, or there is no record of a previous analysis, or if the last analysis was run before skipIfLastRunLaterThan. false otherwise.
    • getCommandName

      public String getCommandName()
      Description copied from interface: CLI
      A short memorable name for the command that can be used to locate this class.
      Specified by:
      getCommandName in interface CLI
      Overrides:
      getCommandName in class AbstractCLI
      Returns:
      name; if null or blank, this will not be available as a shortcut command.
    • processArrayDesigns

      protected void processArrayDesigns(Collection<ArrayDesign> arrayDesignsToProcess)
      Overrides:
      processArrayDesigns in class ArrayDesignSequenceManipulatingCli