com.ibm.agletx.patterns
Class Meeting

java.lang.Object
  |
  +--com.ibm.agletx.patterns.Meeting

public final class Meeting
extends java.lang.Object
implements java.io.Serializable

This Meeting class abstracts light synchronization between multiple aglets by using a meeting concept. A meeting is established by creating a meeting object and distribute it among the aglets which suppose to participate in the meeting. A meeting object includes:
1. the meeting place (URL)
2. a meeting identifier
3. an optional list of agletIDs, named colleagues, of aglets which are expected to be presented at the meeting place
4. an optional object (named attachedInfo) describing additional information regarding the meeting (e.g. list or number of participants, minimum number of required participants).

Upon arrival to the meeting, an aglet notifies its arrival via the ready method. As a result all aglets already presented are notified of its arrival by receiving a special message (its kind is that of the meeting ID) with the agletID of this newly arrived aglet.

See Also:
Serialized Form

Constructor Summary
Meeting(java.lang.String place)
          A Constructor
Meeting(java.lang.String place, java.util.Vector colleagues)
          A Constructor
 
Method Summary
 java.lang.Object getAttachedInfo()
           
 java.lang.String getID()
           
 java.lang.String getPlace()
           
 java.util.Enumeration ready(Aglet ag)
          Accepts an aglet to a meeting.
 void setAttachedInfo(java.lang.Object obj)
           
 void setColleagues(java.util.Vector colleagues)
           
 void setID(java.lang.String id)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Meeting

public Meeting(java.lang.String place)
A Constructor
Parameters:
place - the meeting place.

Meeting

public Meeting(java.lang.String place,
               java.util.Vector colleagues)
        throws AgletException
A Constructor
Parameters:
place - the meeting place.
colleagues - the colleagues
Throws:
AgletException - if colleagues is invalid (should include only AgletID objects)
Method Detail

setID

public void setID(java.lang.String id)

setAttachedInfo

public void setAttachedInfo(java.lang.Object obj)

getAttachedInfo

public java.lang.Object getAttachedInfo()

setColleagues

public void setColleagues(java.util.Vector colleagues)
                   throws AgletException

getPlace

public java.lang.String getPlace()

getID

public java.lang.String getID()

ready

public java.util.Enumeration ready(Aglet ag)
                            throws AgletException
Accepts an aglet to a meeting.
Parameters:
aglet - the arrived aglet.
Returns:
enumeration of the agletID of all presented aglets.
Throws:
AgletException - if wrong meeting place or if any of the colleagues is not presented.