{
// construct document attributes from path
String path = Folder.PATH_SEPARATOR + PageSecurity.DOCUMENT_TYPE;
// optimized retrieval from cache by path if available
NodeImpl cachedNode = DatabasePageManagerCache.cacheLookup(path);
if (cachedNode instanceof PageSecurity)
{
// check for view access on document
cachedNode.checkAccess(JetspeedActions.VIEW);
return (PageSecurity)cachedNode;
}
// retrieve document from database