moses.member
Class GenericReceiver

java.lang.Object
  |
  +--java.lang.Thread
        |
        +--moses.member.GenericReceiver
All Implemented Interfaces:
java.lang.Runnable

public class GenericReceiver
extends java.lang.Thread

This class allows the receiving of LGI messages asynchronously, thus supplementing the Member class. Messages arriving at a Member instance are dispatched by this generic receiver to any provided class that implements the GenericAgent interface. A typical usage of this class is as follows:
 
 


 
    Member m = new Member(...);
    GenericAgentInstance gai = ...;
 
    m.adopt(...);
 
    GenericReceiver gr = new GenericReceiver(gai, m);
    gr.start();
 
    

Following the arrival of a message at the member, the processReply method of the GenericAgent instance is called. The received message is presented to this method using an Answer wrapper.
 
  A more specialized functionality is also offered by the Receiver and Answer classes.

See Also:
Member, Receiver, Agent, GenericAgent

Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
GenericReceiver(moses.member.GenericAgent agent, moses.member.Member member)
          The constructor of this class creates a new generic receiver object.
 
Method Summary
 void run()
          This method implements the main thread of the receiver.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GenericReceiver

public GenericReceiver(moses.member.GenericAgent agent,
                       moses.member.Member member)
The constructor of this class creates a new generic receiver object.

Parameters:
agent - specifies an object that implements a GenericAgent interface
member - represents a member instance connected to its controller
Method Detail

run

public void run()
This method implements the main thread of the receiver. It waits for a message to arrive at the member, and it dispatches the message for processing at the processReply method of the GenericAnswer interface;

Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread