SchedulerServiceConfiguration.java :  » Inversion-of-Control » carbon » org » sape » carbon » services » scheduler » Java Open Source

Java Open Source » Inversion of Control » carbon 
carbon » org » sape » carbon » services » scheduler » SchedulerServiceConfiguration.java
/*
 * 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);
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.