mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
Verify if node exists
This commit is contained in:
@@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user