org.glassfish.ejb.api
Interface MessageBeanListener


public interface MessageBeanListener

Lifecycle contract for a single MessageBeanListener. Implemented by the MessageBeanContainer and called by the MessageBeanClient for each message delivery. Each message delivery MUST call each of the three methods exactly once, in the same thread, and in the following order : 1. beforeMessageDelivery 2. deliverMessage 3. afterMessageDelivery

Author:
Kenneth Saks

Method Summary
 void afterMessageDelivery()
          Post-delivery notification to the container.
 void beforeMessageDelivery(Method method, boolean txImported)
          Pre-delivery notification to the container.
 Object deliverMessage(Object[] params)
          Deliver a message to a message bean instance.
 ResourceHandle getResourceHandle()
           
 void setResourceHandle(ResourceHandle handle)
           
 

Method Detail

beforeMessageDelivery

void beforeMessageDelivery(Method method,
                           boolean txImported)
Pre-delivery notification to the container. Any transaction initialization is peformed here. In addition, when this method returns, the current thread's context class loader will be set the message-bean's application class loader.

Parameters:
method - is the method that will be invoked during deliverMessage. It is used the container during transaction setup to lookup the appropriate transaction attribute.
txImported - whether a transaction is being imported

deliverMessage

Object deliverMessage(Object[] params)
                      throws Throwable
Deliver a message to a message bean instance.

Parameters:
params - to use of the method invocation. Can be null or an 0-length array if there are 0 arguments.
Throws:
Throwable - This is either an application exception as thrown from the message bean instance or a javax.ejb.EJBException in the case that the bean throws a system exception. Note that exceptions are *always* propagated, regardless of transaction type.

afterMessageDelivery

void afterMessageDelivery()
Post-delivery notification to the container. Container will perform any work required to commit/rollback a container-managed transaction. When this method returns, the thread's context class loader will be restored to the value it had when beforeMessageDelivery was called.


getResourceHandle

ResourceHandle getResourceHandle()

setResourceHandle

void setResourceHandle(ResourceHandle handle)


Copyright © 2012. All Rights Reserved.