KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > dream > control > activity > task > TaskActivationController


1 /**
2  * Dream
3  * Copyright (C) 2003-2004 INRIA Rhone-Alpes
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  *
19  * Contact: dream@objectweb.org
20  *
21  * Initial developer(s): Matthieu Leclercq
22  * Contributor(s):
23  */

24
25 package org.objectweb.dream.control.activity.task;
26
27 /**
28  * A control interface used to activate or desactivate tasks of the component
29  * (ie. register/unregister in activity manager). This interface is an hidden
30  * control interface used by lifecycle controller or by task controller.
31  */

32 public interface TaskActivationController
33 {
34
35   /**
36    * Register the given task with the activity manager. If the task is already
37    * registered, do nothing.
38    *
39    * @param task the task to register.
40    * @throws NoSuchTaskException if the given task is unknown.
41    * @throws IllegalTaskException if the task can't be registred in the activity
42    * manager.
43    * @see TaskManagerController#registerTask(Task, java.util.Map)
44    */

45   void activateTask(Task task) throws NoSuchTaskException, IllegalTaskException;
46
47   /**
48    * Unregister the given task with the activity manager. This method will block
49    * until the task is stopped and unregistered with the activity manager. If
50    * the task is not activated, do nothing.
51    *
52    * @param task the task to unregister.
53    * @throws NoSuchTaskException if the given task is unknown.
54    * @throws IllegalTaskException if the task can't be unregistred in the
55    * activity manager.
56    * @see TaskManagerController#unregisterTask(Task)
57    */

58   void deactivateTask(Task task) throws NoSuchTaskException,
59       IllegalTaskException;
60
61   /**
62    * Unregister the given task with the activity manager. This method returns
63    * immediatly, and the given listener will be notify when the task stop
64    * unregister with the activity manager. If the task is not activated, the
65    * listener is immediatly notifyed and the method returns.
66    *
67    * @param task the task to unregister.
68    * @param taskStoppedListener the listener to notify.
69    * @throws NoSuchTaskException if the given task is unknown.
70    * @throws IllegalTaskException if the task can't be unregistred in the
71    * activity manager.
72    * @see TaskManagerController#unregisterTask(Task)
73    */

74   void deactivateTask(Task task, TaskStoppedListener taskStoppedListener)
75       throws NoSuchTaskException, IllegalTaskException;
76 }
Popular Tags