[jboss-dev-forums] [Design of EJB 3.0] - Re: EJBTHREE-1454 Encapsulate Container infomation in TO/VO

jaikiran do-not-reply at jboss.com
Sun Sep 21 04:29:50 EDT 2008


"jaikiran" wrote : 
  | 
  | I am planning to summarize the exact changes and even upload the new patch to the JIRA in my next post.
  | 
  | 

I have uploded the patch "EJBTHREE-1454 with review comments incorporated.patch" to the JIRA. And here is a summary of what was changed:

1) New methods introduced in InvokableContext:

   /**
  |     * Returns the initial context  
  |     * @return
  |     */
  |    Context getInitialContext();
  |    
  |    
  |    /**
  |     * Returns the classloader associated with this {@link InvokableContext}
  |     * @return
  |     */
  |    ClassLoader getClassloader();
  |    
  |    /**
  |     * Returns the name of the container
  |     * @return
  |     */
  |    String getName();
  |    
  |    /**
  |     * Returns the global unique id of the container
  |     * @return
  |     */
  |    String getGuid();
  |    
  |    /**
  |     * Returns the advisor to use for generated proxies
  |     * @return
  |     */
  |    Advisor getAdvisor();
  | 
  |    /**
  |     * Returns the registration name with which the container
  |     * has been registered with AOP Dispatcher 
  |     * 
  |     * @return
  |     */
  |    String getDispatcherRegistrationName();
  | 
  | 
  | 

2) New interface InvokableSessionContext introduced. InvokableSessionContext extends InvokableContext and will contain session specific APIs. Ex: 

   /**
  |     * Returns the session bean metadata 
  |     * @return
  |     */
  |    JBossSessionBeanMetaData getMetaData();
  |    

3) The SessionContainer (in proxy) and SessionSpecContainer (in core) now implement this InvokableSessionContext. These were earlier implementing InvokableContext.


4) The JndiSessionRegistrar* work with InvokableSessionContext

5) The *Session*ProxyFactory work with InvokableSessionContext whereas the ProxyFactoryBase uses the generic InvokableContext

6) The proxy/proxy-clustered internally use the getDispatcherRegistrationName() API to create the proxy factories. The SessionSpecContainer (in core) too uses this getDispatcherRegistrationName() to register with the AOP dispatcher.

7) Changed the pom in the proxy to build 1.0.7-SNAPSHOT. Changed the pom in core and proxy-clustered to depend on this new 1.0.7-SNAPSHOT from proxy.


Andrew,

I just noticed that there is a StatefulSessionInvokableContext (in proxy) which currently implements the  InvokableContext. I guess, this should now implement the new InvokableSessionContext. Do you recommend that i change this too? The patch that i have applied to the JIRA "EJBTHREE-1454 with review comments incorporated.patch" does not include this one change. I will include this change during commit, if approved.

I have done a clean build of all the modules to ensure that all the test cases are passing after these changes. I see 1 testcase running into a error in embedded module, but its not related to this change.


   


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4177863#4177863

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4177863



More information about the jboss-dev-forums mailing list