That looks pretty hacky. You shouldn't be fiddling with the component registry.

Looks to me the following would be much simpler to do:
public class MyInterceptor extends CommandInterceptor {
  |    private final InterceptorParameter ip;
  |    public MyInterceptor(InterceptorParameter ip) {
  |       this.ip = ip;
  |    }
  | }
And then do:
InterceptorParameter ip = new InterceptorParameter();
  | MyInterceptor mi = new MyInterceptor(ip);
  | ((CacheSPI<Serializable, Object>)cache).addInterceptor(mi, 
org.jboss.cache.interceptors.CacheStoreInterceptor.class);
Bottom line, if your interceptor does not take any parameters, use the XML way 
to configure the interecetor. Otherwise, use the programatic way of shown in 
this comment. 

Another benefit of the approach I suggested is that InterceptorParameter in 
MyInterceptor becomes final and so, baring other params or exposure of 
InterceptorParameter, MyInterceptor becomes immutable, which is a good 
programming practice.

You can find examples like this and more in the JBoss Cache testsuite :)

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

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4268455
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to