1 package org.glassbox.gui;
2
3 /***
4 Interface for a group.
5 */
6 public interface Group {
7 /*** The key of the application-status property. */
8 public static final String APPLICATION_STATUS_KEY = "glassbox.Application.status";
9 /*** A possible value of the application-status property. */
10 public static final String PAUSED = "paused";
11 /*** A possible value of the application-status property. */
12 public static final String RUNNING = "running";
13 /*** A possible value of the application-status property. */
14 public static final String EXITING = "exiting";
15 /*** A possible value of the application-status property. */
16 public static final String INITIATED = "initiated";
17 /*** A possible value of the application-status property. */
18 public static final String UNDEFINED = "undefined";
19
20 /***
21 Add a member to the group.
22 */
23 void addMember(Member member);
24
25 /***
26 Remove a member from the group.
27 */
28 void removeMember(String identifier);
29
30 /***
31 Set a property of the group.
32 This will cause a property change notification to all members of the group.
33 */
34 void setProperty(String name, Object value);
35
36 /***
37 Get a property of the group.
38 */
39 Object getProperty(String name);
40
41 /***
42 Get a member by name.
43 */
44 Member getMember(String name);
45 }