com.ibm.websphere.ci
Interface CIWork
-
- All Superinterfaces:
- com.ibm.batch.api.CIWork, java.lang.Runnable, commonj.work.Work
public interface CIWork extends com.ibm.batch.api.CIWork
Interface implemented by classes that provide the logic for compute-intensive job steps.Each compute-intensive job step indicates the name of the class that provides the logic for the job. The specified class must implement this interface. The compute-intensive execution environment creates an instance of the class, sets the properties for the job step and arranges for the Work.run() method to be invoked by a WorkManager thread. The job step is considered to have completed successfully when the Work.run() method returns without throwing an exception. If the job is cancelled, the Work.release() method is invoked.
In addition to satisfying the constraints placed by the Work interface and implementing the methods below, objects that implement CIWork must adhere to the following:
- The Work.isDaemon() method must return true. This tells the container that the CIWork will run for an extended period of time.
- The CIWork implementation must have a no-argument constructor.
The parameters specified in the job will be passed to the CIWork on a
call to
CIWork.setProperties(java.util.Map)
. - Implementors of this interface are strongly encouraged to have their Work.run() methods return as soon as is practical after Work.release() is invoked. The simplest way to achieve this is to have Work.release() set a flag that the processing in Work.run() periodically checks.