Server side of occupant management stuff.

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@269 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Michael Bayne
2001-08-16 04:28:36 +00:00
parent eac3e9aa94
commit 2f7f106271
5 changed files with 202 additions and 15 deletions
@@ -1,5 +1,5 @@
//
// $Id: PlaceObject.dobj,v 1.4 2001/08/02 06:01:13 mdb Exp $
// $Id: PlaceObject.dobj,v 1.5 2001/08/16 04:28:36 mdb Exp $
package com.threerings.cocktail.party.data;
@@ -10,12 +10,22 @@ public class PlaceObject extends DObject
/** The field name of the <code>occupants</code> field. */
public static final String OCCUPANTS = "occupants";
/** The field name of the <code>occupantInfo</code> field. */
public static final String OCCUPANT_INFO = "occupantInfo";
/**
* Tracks the oid of the body objects of all of the occupants of this
* place.
*/
public OidList occupants = new OidList();
/**
* Contains an info record (of type {@link OccupantInfo} for each
* occupant that contains information about that occupant that needs
* to be known by everyone in the place.
*/
public DSet occupantInfo = new DSet();
/**
* Requests that the specified oid be added to the
* <code>occupants</code> oid list.
@@ -34,9 +44,37 @@ public class PlaceObject extends DObject
requestOidRemove(OCCUPANTS, oid);
}
/**
* Requests that the specified element be added to the
* <code>occupantInfo</code> set.
*/
public void addToOccupantInfo (DSet.Element elem)
{
requestElementAdd(OCCUPANT_INFO, elem);
}
/**
* Requests that the element matching the supplied key be removed from
* the <code>occupantInfo</code> set.
*/
public void removeFromOccupantInfo (Object key)
{
requestElementRemove(OCCUPANT_INFO, key);
}
/**
* Requests that the specified element be updated in the
* <code>occupantInfo</code> set.
*/
public void updateOccupantInfo (DSet.Element elem)
{
requestElementUpdate(OCCUPANT_INFO, elem);
}
protected void toString (StringBuffer buf)
{
super.toString(buf);
buf.append(", occupants=").append(occupants);
buf.append(", occupantInfo=").append(occupantInfo);
}
}