Hi all;

We are building a security module for jackrabbit implementing an AccessManager 
interface.
I realized that when I ask to jackrabbit like "node.remove()" there are several 
calls to the AccesManager by the permission 1 (read) on nodes tree above the 
node I want to remove.
The interesting thing I found is that only when I call session.save(), 
jackrabbit calls to the AccessManager by the permission 4 (remove) on nodes I 
already remove with "node.remove()". (so my implementation wont find the nodes 
and will cause exceptions).
Is this the normal behavior of jackrabbit? Why it doesn't ask by permission 4 
in the moment I call "node.remove()", it only do that when I call 
"session.save()".? Is there a need for jackrabbit calls the permission on 
session.save again (or only in this event in the case I described)?
Is it configurable or something?

I am doing these questions because I depend on the nodes existing to get the 
user permissions, so if jackrabbit only ask for the permission level after the 
operation did , I wont have any nodes more because they are already removed, 
understand?

Hope your help, thanks
Helio

Reply via email to