ABLE 2.0.0 07/02/2003 10:25:01

com.ibm.able
Interface AbleEventQueueProcessor

All Known Subinterfaces:
AbleAgent, AbleBean, AbleDataSink, AbleDataSource
All Known Implementing Classes:
AblePersistenceSupport

public interface AbleEventQueueProcessor

The AbleEventQueueProcessor interface provides a way for the AbleEventQueue to hand off processing of timer and asynchronous AbleEvents. It must be implemented by all objects wishing to interface with the AbleEventQueue object.


Method Summary
 AbleLogger getLogger()
          Returns a message logger object from the event queue's container.
 int getState()
          Returns the state of the event queue's container.
 void processAbleEvent(AbleEvent theAbleEvent)
          Processes an Able event synchronously; that is, on the same thread as the caller.
 void processNoEventProcessingEnabledSituation()
          Processes the situation where neither timer nor Able event processing is enabled in the event queue, but the event queue's asynchronous thread of control has been started.
 void processTimerEvent()
          Processes a timer expiration event synchronously; that is, on the same thread as the caller.
 void setState(int theState)
          Sets the state of the event queue's container.
 

Method Detail

processAbleEvent

public void processAbleEvent(AbleEvent theAbleEvent)
                      throws AbleException
Processes an Able event synchronously; that is, on the same thread as the caller.

This method is called by the AbleEventQueue when an event is removed from the queue for asynchronous processing. Note that this method also can be called directly from the handleAbleEvent() method described in the AbleEventListener interface when that method is given a synchronous event to handle.

Parameters:
theAbleEvent - The event to process.
Throws:
AbleException - If an error occurs.

processTimerEvent

public void processTimerEvent()
                       throws AbleException
Processes a timer expiration event synchronously; that is, on the same thread as the caller.

This method is called by an AbleEventQueue when the queue's sleep timer goes off.

Throws:
AbleException - If an error occurs.

processNoEventProcessingEnabledSituation

public void processNoEventProcessingEnabledSituation()
                                              throws AbleException
Processes the situation where neither timer nor Able event processing is enabled in the event queue, but the event queue's asynchronous thread of control has been started.

This method is called by an AbleEventQueue when the queue is neither enabled for timer processing nor Able event processing. When neither type of processing is enabled, the queue is in a tight processing loop, consuming CPU cycles. This method is called so that the event queue's container can do something about the situation or perform some other type of asynchronous processing.

Throws:
AbleException - If an error occurs.

setState

public void setState(int theState)
              throws AbleException
Sets the state of the event queue's container.

This method is called by an AbleEventQueue when the queue's run time loop changes state; for example, from Waiting to Active.

Parameters:
theState - An AbleState value.

Throws:
AbleException - If an error occurs.

getState

public int getState()
             throws AbleException
Returns the state of the event queue's container.

This method is called by an AbleEventQueue when the queue needs to interrogate the state of its container.

Returns:
An AbleState value.
Throws:
AbleException - If an error occurs.

getLogger

public AbleLogger getLogger()
                     throws AbleException
Returns a message logger object from the event queue's container.
Returns:
a Logger object.
Throws:
AbleException - If an error occurs.

ABLE 2.0.0 07/02/2003 10:25:01

(C) Copyright IBM Corporation 1999, 2003