--- experimental/agents/Agent.java 2001/04/23 19:45:18 1.1 +++ experimental/agents/Agent.java 2001/05/04 02:04:35 1.2 @@ -1,6 +1,51 @@ -abstract class Agent implements Runnable { +//---PACKAGE DECLARATION--- + +//---IMPORTS--- +import java.io.Serializable; + +/** + * The agent abstract class defines the operations that a compliant + * agent should implement. + * + * @author $Author: ajm $ + * @version $Id: Agent.java,v 1.2 2001/05/04 02:04:35 ajm Exp $ + */ +abstract class Agent implements Runnable, Serializable { + +//---FINAL / FINAL STATIC ATTRIBUTES--- + + /** + * The current CVS revision of this class + */ + public static final String REVISION = "$Revision: 1.2 $"; + +//---STATIC METHODS--- + +//---CONSTRUCTORS--- + +//---PUBLIC METHODS--- + public abstract void onArrival(Station station); + public abstract String getName(); + public abstract long getTransmissionCount(); + public abstract void greet(Agent agent); + + public abstract void shutdown(); + +//---PRIVATE/PROTECTED METHODS--- + +//---ACCESSOR/MUTATOR METHODS--- + +//---ATTRIBUTES--- + + /** + * The name of the agent + */ + private String _name = null; + +//---STATIC ATTRIBUTES--- + } \ No newline at end of file