2006-04-20 13:57:06 +00:00

111 lines
3.0 KiB
Java

/*
* Copyright (C) 2005 Alfresco, Inc.
*
* Licensed under the Mozilla Public License version 1.1
* with a permitted attribution clause. You may obtain a
* copy of the License at
*
* http://www.alfresco.org/legal/license.txt
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
* either express or implied. See the License for the specific
* language governing permissions and limitations under the
* License.
*/
package org.alfresco.repo.action.scheduled;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.springframework.beans.factory.InitializingBean;
/**
* The information needed to schedule a job.
*
* The implementation is responsible for creating job details, triggers and registering with a scheduler.
*
* This is not used anywhere at the moment. When we have a service then scheduled actions will be registered with the service.
*
* @author Andy Hind
*/
public interface ScheduledActionDefinition extends InitializingBean
{
/**
* Set the template action definition that is used to build the Action to execute.
*
* @param templateActionDefinition
*/
public void setTemplateActionDefinition(TemplateActionDefinition templateActionDefinition);
/**
* Get the template action definition that is used to build the Action to execute.
*
* @return
*/
public TemplateActionDefinition getTemplateActionDefinition();
/**
* Register with a scheduler. This should be called in the implementation afterPropertiesSet() method of InitializingBean
*
* @param scheduler
* @throws SchedulerException
*/
public void register(Scheduler scheduler) throws SchedulerException;
/**
* Set the name of the job - used for job admin
*
* @param jobName
*/
public void setJobName(String jobName);
/**
* Get the name of the job - used for job admin
*
* @return
*/
public String getJobName();
/**
* Set the job group - used for job admin
*
* @param jobGroup
*/
public void setJobGroup(String jobGroup);
/**
* Get the job group - used for job admin
* @return
*/
public String getJobGroup();
/**
* Set the trigger name - used for job admin
*
* @param triggerName
*/
public void setTriggerName(String triggerName);
/**
* Get the trigger name - used for job admin
* @return
*/
public String getTriggerName();
/**
* Set the trigger group - used for job admin
*
* @param triggerGroup
*/
public void setTriggerGroup(String triggerGroup);
/**
* Get the trigger group - used for job admin
*
* @return
*/
public String getTriggerGroup();
}