View Javadoc

1   /*
2    * Copyright (c) 2005, The K-Wf Grid Consortium
3    * Fraunhofer Institute for Computer Architecture and Software Technology
4    * See http://www.kwfgrid.eu and http://www.first.fraunhofer.de for more details.
5    */
6   package net.kwfgrid.gwui.taskframework;
7   
8   import java.util.*;
9   import javax.swing.Icon;
10  
11  public interface UserTask {
12      /***
13         Check if the task is valid.
14       */
15      boolean isValid();
16      /***
17         Check if the task is done.
18       */
19      boolean isDone();
20      /***
21         Execute the task.
22      */
23      void execute();
24      /***
25         Dispose the task and all resources of the task.
26      */
27      void dispose();
28      /***
29         Get the title of this task.
30      */
31      String getTitle();    
32      /***
33         Get the icon for this task. Should be 13x13 pixels with transparent background.       
34       */
35      Icon getIcon();
36      /***
37         Get a tool tip text for this task.
38      */
39      String getToolTipText();
40      /***
41         Notify the task that an object has been added to the workflow structure.
42         @return If this task is still valid after the modification of the workflow structure.
43      */
44      void objectsAdded(net.kwfgrid.gworkflowdl.protocol.structure.IStructureObject parent, String namespace, String name, List objects);
45      /***
46         Notify the task that an object has been removed from the workflow structure.
47         @return If this task is still valid after the modification of the workflow structure.
48      */
49      void objectsRemoved(net.kwfgrid.gworkflowdl.protocol.structure.IStructureObject parent, String namespace, String name, List objects);
50      /***
51         Notify the task that an object of the workflow structure has been updated.
52         @return If this task is still valid after the modification of the workflow structure.
53      */
54      void propertyChanged(net.kwfgrid.gworkflowdl.protocol.structure.IStructureObject parent, String namespace, String name, Object newvalue);
55  }
56