|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.cfpm.caves.za.Group
public abstract class Group
An abstract group. Provides the basic functionality for every type of group (like burial societies or stokvels).
Field Summary | |
---|---|
private static int |
lastID
counter for running ID |
(package private) jess.Value[] |
memberIDs
list of member names, for easier access within Jess |
(package private) java.util.ArrayList<Person> |
members
member list |
(package private) SouthAfricaModel |
model
|
(package private) jess.Value |
name
Name of the group. |
protected java.beans.PropertyChangeSupport |
pcs
|
Constructor Summary | |
---|---|
Group(java.lang.String type,
java.util.ArrayList<Person> members,
SouthAfricaModel model)
Creates a new group of the given type with the given members. |
Method Summary | |
---|---|
private void |
addAsKnown(Person member)
internal function: the given member adds every other member as a known person and vice versa. |
void |
addMember(Person member)
adds a new member to the group. |
void |
addPropertyChangeListener(java.beans.PropertyChangeListener p)
adds a property change listener (for Jess) |
private void |
endorse(Person member)
internal function: the given member endorses every other member with same-club endorsement and vice versa. |
jess.Value[] |
getMemberIDs()
returns the member IDs |
jess.Value |
getName()
returns the group's name |
private void |
printIDs(jess.Value[] ids)
internal helper function for debugging: prints a list of member IDs. |
void |
removeMember(Person member)
removes the given member from this group. |
void |
removePropertyChangeListener(java.beans.PropertyChangeListener p)
removes a property change listener (for Jess) |
void |
setMemberIDs(jess.Value[] IDs)
sets the member IDs |
void |
setName(java.lang.String nameString)
sets the group's name |
void |
setName(jess.Value name)
sets the group's name |
java.lang.String |
toString()
returns a String representation of this group |
private void |
unEndorse(Person member)
internal function: the leaving member removes same-club endorsement for every other member and vice versa. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private static int lastID
jess.Value name
java.util.ArrayList<Person> members
jess.Value[] memberIDs
protected java.beans.PropertyChangeSupport pcs
SouthAfricaModel model
Constructor Detail |
---|
public Group(java.lang.String type, java.util.ArrayList<Person> members, SouthAfricaModel model)
type
- the group typemembers
- the list of membersmodel
- the modelMethod Detail |
---|
public void addMember(Person member)
member
- the new memberprivate void printIDs(jess.Value[] ids)
public void removeMember(Person member)
member
- the member to leave the groupprivate void endorse(Person member)
private void unEndorse(Person member)
private void addAsKnown(Person member)
public jess.Value[] getMemberIDs()
public void setMemberIDs(jess.Value[] IDs)
IDs
- list of member namespublic void addPropertyChangeListener(java.beans.PropertyChangeListener p)
public void removePropertyChangeListener(java.beans.PropertyChangeListener p)
public jess.Value getName()
public void setName(jess.Value name)
name
- name of the grouppublic void setName(java.lang.String nameString)
nameString
- name of the group as Stringpublic java.lang.String toString()
toString
in class java.lang.Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |