mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-10-08 14:51:49 +00:00
107541: Merged 5.0.N (5.0.3) to HEAD-BUG-FIX (5.1/Cloud) (PARTIAL MERGE) 107413: Merged DEV to 5.0.N (5.0.3) 106858 : MNT-13545: JavaDoc : Inconsistencies between the Java doc and the actual code - Cleaning of Javadoc, 107565: MNT-13545 Fix compilation after merge of Javadoc git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@107633 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
43 lines
1.2 KiB
Java
43 lines
1.2 KiB
Java
package org.alfresco.opencmis.mapping;
|
|
|
|
import org.alfresco.opencmis.dictionary.CMISActionEvaluator;
|
|
import org.alfresco.opencmis.dictionary.CMISNodeInfo;
|
|
import org.alfresco.service.ServiceRegistry;
|
|
import org.alfresco.service.cmr.security.PermissionService;
|
|
import org.apache.chemistry.opencmis.commons.enums.Action;
|
|
|
|
public class CanDeleteDocumentEvaluator extends AbstractActionEvaluator
|
|
{
|
|
private CMISActionEvaluator currentVersionEvaluator;
|
|
|
|
/**
|
|
* Construct
|
|
*
|
|
* @param serviceRegistry ServiceRegistry
|
|
*/
|
|
protected CanDeleteDocumentEvaluator(ServiceRegistry serviceRegistry)
|
|
{
|
|
super(serviceRegistry, Action.CAN_DELETE_OBJECT);
|
|
this.currentVersionEvaluator = new PermissionActionEvaluator(serviceRegistry,
|
|
Action.CAN_DELETE_OBJECT, PermissionService.DELETE_NODE);
|
|
}
|
|
|
|
public boolean isAllowed(CMISNodeInfo nodeInfo)
|
|
{
|
|
boolean isAllowed = true;
|
|
|
|
if(!nodeInfo.isCurrentVersion() || nodeInfo.hasPWC())
|
|
{
|
|
// not allowed if not current version or is checked out
|
|
isAllowed = false;
|
|
}
|
|
else
|
|
{
|
|
isAllowed = currentVersionEvaluator.isAllowed(nodeInfo);
|
|
}
|
|
|
|
return isAllowed;
|
|
}
|
|
|
|
}
|