package ws.prova.esb;

import ws.prova.RMessage;

/**
 * Basic contract on ESB Universal Message Object (UMO) class.
 * <br>
 * It is the class that will
 * (1) create an asynchronous <code>Communicator</code>;
 * (2) implement <code>send</code> to allow a Prova agent to send messages via bus;
 * (3) accept messages from the bus and use <code>Communicator.add()</code> to queue these messages on the agent.
 */
public interface ProvaUMO {
	public void receive( RMessage rMsg ) throws Exception;
	public void send(String agent, String receiver, RMessage toSend) throws Exception;
}
