/**
 * IJobCallback.java
 * Created on Jun 5, 2008
 * (C) Copyright TANDBERG Television Ltd.
 */
package com.tandbergtv.watchpoint.pmm.job.callback;

import java.util.Date;
import java.util.Map;

/**
 * This interface should be implemented by all types of job callbacks.
 * This is considered as an integration point with a scheduling engine 
 * which will have its own methods that need to be overridden for a 
 * callback to be fired.
 * 
 * This interface is also looked up by missed triggers.
 * 
 * @author spuranik
 */
public interface IJobCallback {

	/**
	 * This method is called for a mis-fire for a missed trigger.  
	 * 
	 * @param callbackInfo
	 * 	callback info that was added to the job at the time of scheduling
	 * @param jobExecutionDate
	 * 	date on which the job is/was executed.
	 */
	void executeJob(Map<String, Object> callbackInfo, Date jobExecutionDate);

}
