Description
Read access should be checked irrespective of whether the item data is in the cache or not. Something might have changed between first reading the node and reading the node again that impacts read access.
We are running into the situation where node.hasNode() returns false for a node that is in the item manager cache and for which access was revoked but node.getNode() returns the node anyway. So node.hasNode is implemented in the right way, but node.getNode is not.