[jboss-jira] [JBoss JIRA] Resolved: (JBCACHE-89) Allow Specifying Custom Interceptors in XML Configuration

Mircea Markus (JIRA) jira-events at lists.jboss.org
Tue Jul 15 11:34:29 EDT 2008


     [ http://jira.jboss.com/jira/browse/JBCACHE-89?page=all ]

Mircea Markus resolved JBCACHE-89.
----------------------------------

    Fix Version/s: 3.0.0.ALPHA1
       Resolution: Done

resolved all but the documentation (docs cannot be updated at this time as the layout is being changed for i18n).
http://jira.jboss.com/jira/browse/JBCACHE-1391 was created to capture this.


> Allow Specifying Custom Interceptors in XML Configuration
> ---------------------------------------------------------
>
>                 Key: JBCACHE-89
>                 URL: http://jira.jboss.com/jira/browse/JBCACHE-89
>             Project: JBoss Cache
>          Issue Type: Feature Request
>    Affects Versions: 1.2
>            Reporter: Daniel Gredler
>         Assigned To: Mircea Markus
>             Fix For: 3.0.0.ALPHA1, 3.0.0.GA
>
>   Original Estimate: 1 day
>          Time Spent: 30 minutes
>  Remaining Estimate: 7 hours, 30 minutes
>
> It would be nice to be able to add interceptors via the XML configuration files. Indeed, in TreeCache.java the following comment exists, which may indicate that this feature is already planned:
>       // Create the interceptors in the correct order (later to be defined in XML file)
>       createInterceptorChain();
> A possible example configuration would be:
>    <server>
>      <classpath codebase="./lib" archives="jboss-cache.jar, jgroups.jar" /> 
>      <mbean code="org.jboss.cache.TreeCache" name="jboss.cache:service=TreeCache">
>        ...
>        <attribute name="Interceptors">
>          <interceptor>com.foo.project.MyInterceptor</interceptor>
>        </attribute>
>        ...
>      </mbean>
>    </server>
> Something along the lines of the following method would then be able to add the custom interceptors (in TreeCache.java):
>    public void setInterceptors(Element interceptors) throws Exception {
>       NodeList list = interceptors.getChildNodes();
>       for(int i = 0; i < list.getLength(); i++) {
>          org.w3c.dom.Node node = list.item(i);
>          if(node.getNodeType() != org.w3c.dom.Node.ELEMENT_NODE)
>             continue;
>          NodeList children = node.getChildNodes();
>          if(children.getLength() != 1)
>             continue;
>          org.w3c.dom.Node childNode = list.item(0);
>          if(childNode.getNodeType() != org.w3c.dom.Node.TEXT_NODE)
>             continue;
>          String className = childNode.getNodeValue();
>          if(className == null || className.length() == 0)
>             continue;
>          Interceptor interceptor = createInterceptor(className);
>          addInterceptor(interceptor_chain, interceptor);
>       }
>    }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list