Hello,
While working with the JCRtoSPI module. I seens a place where an
instanceof check could lead to
some performance improvements.
for exemple, when you explore a node :
public static void explore(Node n) throws Exception{
//to some stuff here
NodeIterator ite = n.getNodes();
while(ite.hasNext()){
explore(ite.nextNode());
}
}
In the JCRtoSPI. this exploration makes succesfully calls on the
repository service :
- getChildInfos
- getNodeInfo on each childInfo.
An instanceof test on the childInfo object to see if it's already a
nodeInfo could
avoid the call to getNodeInfo (and all name resolver operations, path
parsing and so on).
This could be a significant performance gain in some spi implementations
where childInfo and NodeInfo are the same object.
For exemple a childInfo iterator which is backed by a resultset could
provide directly nodeinfo/childinfo object
without any extra cost rather than just a childinfo.
I hope my suggestion makes sens.
johann sorel