So far, for my requisites, I have to modify only one of JBoss Core classes, to 
make it possible to work. In some cases, it should be advisable to modify some 
other classes with instanceof statements, not required in my cases.

I have made a new interface, extending EvictionQueue, named 
SubcontextEvitionQueue with this code:

  | public interface SubcontextEvictionQueue extends EvictionQueue {
  |     NodeEntry getFirstNodeEntry(Fqn fqn);
  |     void modifyElementCount(Fqn fqn, int difference);
  |     int getNumberOfNodes(Fqn fqn);
  |     int getNumberOfElements(Fqn fqn);
  | }
  | 

And modified:

  |    public void NodeEntry.setNumberOfElements(int numberOfElements)
  |    {
  |       if (queue != null)
  |       {
  |          int difference = numberOfElements - this.numberOfElements;
  |          if (queue instanceof SubcontextEvictionQueue){
  |              queue.modifyElementCount(difference);
  |          }else{
  |              queue.modifyElementCount(fqn, difference);
  |          }
  |       }
  |       this.numberOfElements = numberOfElements;
  |    }
  | 

This make it possible to create an EvictionAlgorithm/EvictionQueue assigned to 
a region, that handles number of items in subnodes, without the need for 
creating a region infraestructure.

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

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

Reply via email to