Verify if node exists

This commit is contained in:
Mihai Cozma
2016-07-06 10:29:07 +03:00
parent 244523ac5c
commit 27d2d3674f

View File

@@ -146,32 +146,34 @@ public class ExtendedPermissionServiceImpl extends PermissionServiceImpl
public AccessStatus hasPermission(NodeRef nodeRef, String perm) public AccessStatus hasPermission(NodeRef nodeRef, String perm)
{ {
AccessStatus result = AccessStatus.UNDETERMINED; AccessStatus result = AccessStatus.UNDETERMINED;
if (nodeService.exists(nodeRef))
{
// permission pre-processors // permission pre-processors
List<PermissionPreProcessor> preProcessors = permissionProcessorRegistry.getPermissionPreProcessors(); List<PermissionPreProcessor> preProcessors = permissionProcessorRegistry.getPermissionPreProcessors();
for (PermissionPreProcessor preProcessor : preProcessors) for (PermissionPreProcessor preProcessor : preProcessors)
{ {
// pre process permission // pre process permission
result = preProcessor.process(nodeRef, perm); result = preProcessor.process(nodeRef, perm);
// veto if denied // veto if denied
if (AccessStatus.DENIED.equals(result)) if (AccessStatus.DENIED.equals(result))
{ {
return result; return result;
}
} }
}
// evaluate permission // evaluate permission
result = hasPermissionImpl(nodeRef, perm); result = hasPermissionImpl(nodeRef, perm);
// permission post-processors
List<PermissionPostProcessor> postProcessors = permissionProcessorRegistry.getPermissionPostProcessors();
for (PermissionPostProcessor postProcessor : postProcessors)
{
// post process permission
result = postProcessor.process(result, nodeRef, perm);
}
// permission post-processors
List<PermissionPostProcessor> postProcessors = permissionProcessorRegistry.getPermissionPostProcessors();
for (PermissionPostProcessor postProcessor : postProcessors)
{
// post process permission
result = postProcessor.process(result, nodeRef, perm);
}
}
return result; return result;
} }