KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > quikj > application > web > talk > plugin > GroupInfo


1 package com.quikj.application.web.talk.plugin;
2
3 import java.util.*;
4
5 public class GroupInfo
6 {
7     // some synchronization required due to: CP+OAMP interaction or OAMP+OAMP interaction
8

9     /** Creates a new instance of GroupInfo */
10     public GroupInfo(String JavaDoc name)
11     {
12         groupData.setName(name);
13     }
14     
15     public String JavaDoc getName()
16     {
17         return groupData.getName();
18     }
19     
20     /** Getter for property activeUserCount.
21      * @return Value of property activeUserCount.
22      */

23     public int getActiveUserCount()
24     {
25         return activeUserCount;
26     }
27     
28     /** Setter for property activeUserCount.
29      * @param activeUserCount New value of property activeUserCount.
30      */

31     public void setActiveUserCount(int activeUserCount)
32     {
33         this.activeUserCount = activeUserCount;
34     }
35     
36     public int incrementActiveUserCount()
37     // returns active user count, after incrementing
38
{
39         return ++activeUserCount;
40     }
41     
42     public int decrementActiveUserCount()
43     // returns active user count, after decrementing
44
{
45         return --activeUserCount;
46     }
47     
48     /** Getter for property groupData.
49      * @return Value of property groupData.
50      */

51     public GroupElement getGroupData()
52     {
53         return groupData;
54     }
55     
56     /** Setter for property groupData.
57      * @param groupData New value of property groupData.
58      */

59     public void setGroupData(GroupElement groupData)
60     {
61         this.groupData = groupData;
62     }
63     
64     /** Getter for property owner.
65      * @return Value of property owner.
66      */

67     public synchronized String JavaDoc getOwner()
68     {
69         return owner;
70     }
71     
72     /** Setter for property owner.
73      * @param owner New value of property owner.
74      */

75     public synchronized void setOwner(String JavaDoc owner)
76     {
77         this.owner = owner;
78     }
79     
80     public synchronized boolean addMember(String JavaDoc member)
81     {
82         return members.add(new String JavaDoc(member));
83     }
84     
85     public synchronized boolean removeMember(String JavaDoc member)
86     {
87         return members.remove(member);
88     }
89     
90     public synchronized boolean isMember(String JavaDoc member)
91     {
92         return members.contains(member);
93     }
94     
95     public synchronized int numMembers()
96     {
97         return members.size();
98     }
99     
100     public synchronized String JavaDoc [] getMembers()
101     {
102         // returns an array of 0 or more elements
103

104         String JavaDoc [] list = new String JavaDoc[members.size()];
105         int count = 0;
106         for (Iterator i = members.iterator();
107         i.hasNext(); count++)
108         {
109             list[count] = new String JavaDoc((String JavaDoc) i.next());
110         }
111         
112         return list;
113     }
114     
115     
116     private GroupElement groupData = new GroupElement();
117     
118     private String JavaDoc owner = null;
119     
120     private HashSet members = new HashSet();
121     
122     private int activeUserCount = 0;
123     
124 }
125
Popular Tags