com.jxml.qare.qhome
Class MessageAgent

java.lang.Object
  |
  +--com.jxml.qare.qhome.SDO
        |
        +--com.jxml.qare.qhome.MessageAgent
All Implemented Interfaces:
Item
Direct Known Subclasses:
ActivationMsgReply, ActivationProcessMsg, CommonErrorReply, CommonExceptionReply, DeactivateMsg, DelegationProcessMsg, P2PRequest, P2PResponse, PingMsg, PongMsg, ProcessPrivilegeMsg, RegistrationMsgReply, RegistrationProcessMsg, RepliedUser, UserGroupsProcessMsg

public abstract class MessageAgent
extends SDO
implements Item

This is the base class for all Qhome messages in Qare and also has a method which expresses the data into XML. SDO stands for "Self Describing Objects"


Field Summary
 DBInbox.Row inbox
           
 DBSession.Row orginatingSession
           
 ESDO sourceESDO
           
 
Constructor Summary
MessageAgent()
           
 
Method Summary
 DBPendingMessage.Row lastSend(DBSession.Row qSession)
          Sends this object and then closes the session.
 DBPendingMessage.Row lastSend(DBSystem.Row toSystem, DBApplication.Row app, Map properties)
          Opens a new session and sends this object as a message, closing the session after the message is sent.
abstract  void process(DBSession.Row qSession, QAppPlugin qapp)
          This method is overidden by classes which use the process/reply logic.
 DBPendingMessage.Row send(DBSession.Row qSession)
          Sends this object as a message.
 DBPendingMessage.Row send(DBSession.Row qSession, boolean lastMsg)
          Sends this object as a message.
 DBPendingMessage.Row send(DBSystem.Row toSystem, DBApplication.Row app, DBUser.Row user)
          Opens a new session and sends this object as a message.
 DBPendingMessage.Row send(DBSystem.Row toSystem, DBApplication.Row app, DBUser.Row user, Map properties)
          Opens a new session and sends this object as a message.
 DBPendingMessage.Row send(DBSystem.Row toSystem, DBApplication.Row app, DBUser.Row user, String password, Map properties)
          Opens a new session and sends this object as a message.
 DBPendingMessage.Row send(DBSystem.Row toSystem, DBApplication.Row app, Map properties)
          Opens a new session and sends this object as a message.
 DBPendingMessage.Row send(String password, boolean lastMsg, DBSession.Row qSession)
           
 boolean signed()
          Returns true if the message must be signed.
 int timeout()
          Returns the timeout value in millis, or -1.
 
Methods inherited from class com.jxml.qare.qhome.SDO
createInboxMsg, createInboxMsg, eval, exceptionTraceString, getAction, getFactory, getFactoryClassName, getQDoc, getSchema, toXML
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.jxml.quick.config.Item
eval
 

Field Detail

inbox

public DBInbox.Row inbox

orginatingSession

public DBSession.Row orginatingSession

sourceESDO

public ESDO sourceESDO
Constructor Detail

MessageAgent

public MessageAgent()
Method Detail

signed

public boolean signed()
Returns true if the message must be signed.

timeout

public int timeout()
Returns the timeout value in millis, or -1.

process

public abstract void process(DBSession.Row qSession,
                             QAppPlugin qapp)
                      throws Exception
This method is overidden by classes which use the process/reply logic.

lastSend

public final DBPendingMessage.Row lastSend(DBSession.Row qSession)
                                    throws Exception
Sends this object and then closes the session.
Parameters:
qSession - the QSession defining the channel on which this message is to be sent.
Returns:
the pending message(PendingMsg) which holds this object.

send

public final DBPendingMessage.Row send(DBSession.Row qSession)
                                throws Exception
Sends this object as a message.
Parameters:
qSession - the QSession defining the channel on which this message is to be sent.
Returns:
the pending message(PendingMsg) which holds this object.

send

public final DBPendingMessage.Row send(DBSession.Row qSession,
                                       boolean lastMsg)
                                throws Exception
Sends this object as a message.
Parameters:
qSession - the QSession defining the channel on which this message is to be sent.
lastMsg - indicates whether a session is to be closed(true) after the message has been sent.
Returns:
the pending message(PendingMsg) which holds this object.

send

public final DBPendingMessage.Row send(DBSystem.Row toSystem,
                                       DBApplication.Row app,
                                       Map properties)
                                throws Exception
Opens a new session and sends this object as a message.
Parameters:
toSystem - URL of the server which is to process the message.
app - name of the application which is to process the message.
properties - misc. environment variables
Returns:
the pending message(PendingMsg) which holds this object.

lastSend

public final DBPendingMessage.Row lastSend(DBSystem.Row toSystem,
                                           DBApplication.Row app,
                                           Map properties)
                                    throws Exception
Opens a new session and sends this object as a message, closing the session after the message is sent.
Parameters:
toSystem - URL of the server which is to process the message.
app - name of the application which is to process the message.
war - war file name of the application which is to process the message.
properties - misc. environment variables
Returns:
the pending message(PendingMsg) which holds this object.

send

public final DBPendingMessage.Row send(DBSystem.Row toSystem,
                                       DBApplication.Row app,
                                       DBUser.Row user)
                                throws Exception
Opens a new session and sends this object as a message.
Parameters:
toSystem - URL of the server which is to process the message.
app - name of the application which is to process the message.
userName - the name of the account on the remote system.
Returns:
the pending message(PendingMsg) which holds this object.

send

public final DBPendingMessage.Row send(DBSystem.Row toSystem,
                                       DBApplication.Row app,
                                       DBUser.Row user,
                                       Map properties)
                                throws Exception
Opens a new session and sends this object as a message.
Parameters:
toSystem - URL of the server which is to process the message.
app - name of the application which is to process the message.
userName - the name of the account on the remote system.
properties - misc. environment variables
Returns:
the pending message(PendingMsg) which holds this object.

send

public final DBPendingMessage.Row send(DBSystem.Row toSystem,
                                       DBApplication.Row app,
                                       DBUser.Row user,
                                       String password,
                                       Map properties)
                                throws Exception
Opens a new session and sends this object as a message.
Parameters:
toSystem - URL of the server which is to process the message.
app - name of the application which is to process the message.
userName - the name of the account on the remote system.
password - the passowrd of the account on the remote system.
properties - misc. environment variables
Returns:
the pending message(PendingMsg) which holds this object.

send

public final DBPendingMessage.Row send(String password,
                                       boolean lastMsg,
                                       DBSession.Row qSession)
                                throws Exception