Interface IXMEngineTaskGenerator


public interface IXMEngineTaskGenerator
Generates TaskInfo objects, one for each task required for the given task filters.

If IXMEngineConfig.xml specifies no "TaskFilters" element, the no-arg generateIXMTaskList() is used. If it is provided, generateIXMTaskList(JSONObject) is used.

Because it generates the TaskInfos in memory, this interface doesn't scale well to creating tens or hundreds of thousands (or more) of tasks. Engines which are required to work on this scale should additionally implement TaskWriter to write their GRID_TASKS directly using an INSERT statement or stored proc. However, this interface will still be used by the "plan" method in the JMX interface.

  • Method Summary

    Modifier and Type Method Description
    TaskInfo[] generateIXMTaskList()
    Generates and returns an array of IXM Tasks that need execution.
    TaskInfo[] generateIXMTaskList​(org.json.JSONObject taskFilters)
    Generates and returns an array of IXM Tasks that meet the passed in filter criteria.
  • Method Details

    • generateIXMTaskList

      TaskInfo[] generateIXMTaskList() throws IXMException
      Generates and returns an array of IXM Tasks that need execution. Called when no "TaskFilters" element is present in IXMEngineConfig.xml
      Returns:
      array of TaskInfo objects for a full engine run
      Throws:
      IXMException
    • generateIXMTaskList

      TaskInfo[] generateIXMTaskList​(org.json.JSONObject taskFilters) throws IXMException
      Generates and returns an array of IXM Tasks that meet the passed in filter criteria. Called when "TaskFilters" element is present in IXMEngineConfig.xml
      Parameters:
      taskFilters - based on the task filters this class decides the number ixm tasks that need to be generated
      Returns:
      an array of TaskInfo objects appropriate to the given params
      Throws:
      IXMException