/*
* The contents of this file are subject to the Sapient Public License
* Version 1.0 (the "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
* http://carbon.sf.net/License.html.
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
*
* The Original Code is The Carbon Component Framework.
*
* The Initial Developer of the Original Code is Sapient Corporation
*
* Copyright (C) 2003 Sapient Corporation. All Rights Reserved.
*/
package org.sape.carbon.services.scheduler;
import org.sape.carbon.core.component.ComponentConfiguration;
import org.sape.carbon.services.threadpool.ThreadPool;
/**
* Configuration interface for the SchedulerService. The configuration
* consists of 2 attributes: an array of fixed rate tasks and an array
* of fixed delay tasks. Fixed rate tasks are defined by the configuration
* interface FixedRateTaskConfiguration. Fixed delay tasks are defined by
* the configuration interface FixedDelayTaskConfiguration.
*
* @see org.sape.carbon.services.scheduler.FixedRateTaskConfiguration
* @see org.sape.carbon.services.scheduler.FixedDelayTaskConfiguration
*
* Copyright 2002 Sapient
* @since carbon 1.0
* @author Douglas Voet, June 2002
* @version $Revision: 1.9 $($Author: dvoet $ / $Date: 2003/11/20 21:46:15 $)
*/
public interface SchedulerServiceConfiguration
extends ComponentConfiguration {
/**
* Gets the FixedRateTasks associated with this scheduler.
*
* @return FixedRateTasks associated with this scheduler
*/
FixedRateTaskConfiguration[] getFixedRateTask();
/**
* Sets the FixedRateTasks associated with this scheduler.
*
* @param tasks FixedRateTasks associated with this scheduler
*/
void setFixedRateTask(FixedRateTaskConfiguration[] tasks);
/**
* Adds a FixedRateTask to this scheduler.
*
* @param task FixedRateTasks to associate with this scheduler
*/
void addFixedRateTask(FixedRateTaskConfiguration task);
/**
* Gets the FixedDelayTaskConfiguration associated with this scheduler.
*
* @return FixedDelayTaskConfiguration associated with this scheduler
*/
FixedDelayTaskConfiguration[] getFixedDelayTask();
/**
* Sets the FixedDelayTaskConfiguration associated with this scheduler.
*
* @param tasks FixedDelayTaskConfiguration associated with this
* scheduler
*/
void setFixedDelayTask(FixedDelayTaskConfiguration[] tasks);
/**
* Adds a FixedDelayTaskConfiguration to this scheduler.
*
* @param task FixedDelayTaskConfiguration to associate with this scheduler
*/
void addFixedDelayTask(FixedDelayTaskConfiguration task);
ThreadPool getThreadPool();
void setThreadPool(ThreadPool threadPool);
}
|