com.ibm.wsspi.batch.parallel.status
Class SubJobCollector

java.lang.Object
  extended by com.ibm.websphere.grid.spi.SPI
      extended by com.ibm.wsspi.batch.parallel.status.SubJobCollector
All Implemented Interfaces:
java.lang.Comparable

public abstract class SubJobCollector
extends SPI

SubJobCollector is the abstract base class for the ParallelJobManager SubJobCollector System Programming Interface (SPI). Use the SubJobCollector to collect data about a specific subjob. The SubJobCollector is invoked immediately before a checkpoint is taken by a subjob instance.

Implement the SubJobCollector SPI, by extending this class and implementing the collect method.

Configure this SPI with the following declaration in the xd.spi.properties file:

 spi.parallel.status.SubJobCollector=<fully-qualified implementation class name>
 

Notes:

  1. The xd.spi.properties file is located in:
  2.  <WAS install root>/properties.  E.g.
     
           /WebSphere/AppServer/properties
     
  3. The jar file containing the implementation of this SPI should be stored in:
  4.  <WAS install root>/lib/classes.  E.g.
     
           /WebSphere/AppServer/lib/classes
     

    You are responsible for creating the classes directory if it does not already exist.


    Constructor Summary
    SubJobCollector()
               
     
    Method Summary
    abstract  java.io.Externalizable collect(java.lang.String parallelJobName, java.lang.String logicalTXID, java.lang.String subJobID)
              Collects data for the specified subjob.
     java.lang.String getName()
              Returns the name of this SPI instance.
     
    Methods inherited from class com.ibm.websphere.grid.spi.SPI
    compareTo, getInvocationOrder, setInvocationOrder, toString
     
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
     

    Constructor Detail

    SubJobCollector

    public SubJobCollector()
    Method Detail

    collect

    public abstract java.io.Externalizable collect(java.lang.String parallelJobName,
                                                   java.lang.String logicalTXID,
                                                   java.lang.String subJobID)
    Collects data for the specified subjob. This data is then transmitted to the ParallelJobManager for delivery to the SubJobAnalyzer SPI. This method is called immediately before a checkpoint is taken.

    Parameters:
    parallelJobName - specifies name of the current parallel job. This name is the same each time you submit the same parallel job.
    logicalTXID - specifies a unique identifier for the current parallel job instance. This identifier defines a logical unit of work in which all subjobs for the current parallel job execute.
    subJobID - specifies the unique identifier of a subjob belonging to the current parallel job.
    Returns:
    Externalizable containing data to be delivered by ParallelJobManager to SubJobAnalyzer SPI. If return value is null, delivery is cancelled and SubJobAnalyzer will not be called.
    See Also:
    SubJobAnalyzer

    getName

    public java.lang.String getName()
    Description copied from class: SPI
    Returns the name of this SPI instance. Should return a unique identifier.

    Specified by:
    getName in class SPI