source: xssim/src/schedframe/scheduling/plan/SchedulingPlanInterface.java @ 104

Revision 104, 2.4 KB checked in by wojtekp, 13 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1package schedframe.scheduling.plan;
2
3import schedframe.scheduling.utils.DescriptionContainer;
4
5public interface SchedulingPlanInterface<T> extends DescriptionContainer<T> {
6
7        /**
8         *
9         *
10         * @param vTask
11         * @throws java.lang.IndexOutOfBoundsException if the index
12         * given is outside the bounds of the collection
13         */
14        public <Task> void addTask(final ScheduledTaskInterface<Task> vTask)
15                        throws java.lang.IndexOutOfBoundsException;
16
17        /**
18         *
19         *
20         * @param index
21         * @param vTask
22         * @throws java.lang.IndexOutOfBoundsException if the index
23         * given is outside the bounds of the collection
24         */
25        public <Task> void addTask(final int index,
26                        final ScheduledTaskInterface<Task> vTask)
27                        throws java.lang.IndexOutOfBoundsException;
28
29        /**
30         * Method getTask.
31         *
32         * @param index
33         * @throws java.lang.IndexOutOfBoundsException if the index
34         * given is outside the bounds of the collection
35         * @return the value of the schedframe.schedulingplan.impl.Task
36         * at the given index
37         */
38        public <Task>ScheduledTaskInterface<Task> getTask(final int index)
39                        throws java.lang.IndexOutOfBoundsException;
40
41        /**
42         * Method getTask.Returns the contents of the collection in an
43         * Array.  <p>Note:  Just in case the collection contents are
44         * changing in another thread, we pass a 0-length Array of the
45         * correct type into the API call.  This way we <i>know</i>
46         * that the Array returned is of exactly the correct length.
47         *
48         * @return this collection as an Array
49         */
50        public <Task>ScheduledTaskInterface<Task>[] getTask();
51
52        /**
53         * Method getTaskCount.
54         *
55         * @return the size of this collection
56         */
57        public int getTaskCount();
58
59        /**
60         */
61        public void removeAllTask();
62
63        /**
64         * Method removeTask.
65         *
66         * @param vTask
67         * @return true if the object was removed from the collection.
68         */
69        public <Task> boolean removeTask(final ScheduledTaskInterface<Task> vTask);
70
71        /**
72         * Method removeTaskAt.
73         *
74         * @param index
75         * @return the element removed from the collection
76         */
77        public <Task>ScheduledTaskInterface<Task> removeTaskAt(final int index);
78
79        /**
80         *
81         *
82         * @param index
83         * @param vTask
84         * @throws java.lang.IndexOutOfBoundsException if the index
85         * given is outside the bounds of the collection
86         */
87        public <Task> void setTask(final int index,
88                        final ScheduledTaskInterface<Task> vTask)
89                        throws java.lang.IndexOutOfBoundsException;
90
91        /**
92         *
93         *
94         * @param vTaskArray
95         */
96        public <Task> void setTask(final ScheduledTaskInterface<Task>[] vTaskArray);
97
98}
Note: See TracBrowser for help on using the repository browser.