[infinispan-dev] ISPN-185: Injecting a running JGroups channel into Infinispan

Manik Surtani manik at jboss.org
Tue Sep 29 10:55:26 EDT 2009


Regarding ISPN-185 [1] (Need to provide a mechanism in which a JGroups  
channel can be passed in), I'd like to discuss a few solutions.  I  
believe this directly affects the way JBoss AS will use Infinispan, so  
it would be good to hear from JBoss AS folk on this subject.  :)

Transport [2] is an interface that wraps up the JGroups Channel (among  
other things), and the default (only?) implementation so far is the  
JGroupsTransport [3].  Now one thing we can do to support channel  
injection is to actually support Transport injection.  This way a  
Transport can be constructed (simple constructor), the JGroups channel  
set, and the transport passed in to a GlobalConfiguration instance  
(setter TBD), which is then in turn passed to a DefaultCacheManager  
constructor [4].

The problem with this approach though, is that it will only work for  
programmatic configurations.  To support declarative configurations as  
well, we'd need to override the relevant DefaultCacheManager  
constructors [5] [6] [7] [8] to accept a Transport as well.  But this  
pollutes the CacheManager API, in my opinion.

So, how important is it that a running channel is used to override  
something defined in XML?

Cheers
Manik

[1] https://jira.jboss.org/jira/browse/ISPN-185
[2] http://docs.jboss.org/infinispan/4.0/apidocs/org/infinispan/remoting/transport/Transport.html
[3] http://fisheye.jboss.org/browse/Infinispan/trunk/core/src/main/java/org/infinispan/remoting/transport/jgroups/JGroupsTransport.java?r=883
[4] http://bit.ly/3roPkl
[5] http://bit.ly/vDtwa
[6] http://bit.ly/2FhsUn
[7] http://bit.ly/7YC8d
[8] http://bit.ly/2rgtyP

--
Manik Surtani
manik at jboss.org
Lead, Infinispan
Lead, JBoss Cache
http://www.infinispan.org
http://www.jbosscache.org







More information about the infinispan-dev mailing list