Merged V2.2 to HEAD

7732: Support to cache null QName look ups ...
   7733: Support for store ACLs
   7741: Fix for over keen stiore ACLs ....
   7794: Fix for WCM-1019, tasks show all assets as modified when only one has
   7996: Fix for AWC-1519: cancelling discussion creation results in error


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@8448 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2008-03-07 01:50:03 +00:00
parent 513a32a71b
commit 6ce34484fc
22 changed files with 838 additions and 129 deletions

View File

@@ -44,6 +44,8 @@ public class PermissionContext
private Map<String, Object> additionalContext = new HashMap<String, Object>();
private Long storeAcl = null;
public PermissionContext(QName type)
{
this.type = type;
@@ -84,6 +86,16 @@ public class PermissionContext
{
return type;
}
public Long getStoreAcl()
{
return storeAcl;
}
public void setStoreAcl(Long storeAcl)
{
this.storeAcl = storeAcl;
}

View File

@@ -30,6 +30,7 @@ import java.util.Set;
import org.alfresco.service.Auditable;
import org.alfresco.service.PublicService;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.service.namespace.QName;
import org.apache.axis.wsdl.symbolTable.Parameters;
@@ -357,4 +358,52 @@ public interface PermissionService
"exactPermissionMatch" })
public Set<NodeRef> findNodesByAssignedPermission(String authority, String permission, boolean allow,
boolean includeContainingAuthorities, boolean exactPermissionMatch);
/**
* Add a permission mask to a store
*
* @param storeRef
* @param authority
* @param permission
* @param allow
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = { "storeRef", "authority", "permission", "allow" })
public void setPermission(StoreRef storeRef, String authority, String permission, boolean allow);
/**
* Remove part of a permission mask on a store
* @param storeRef
* @param authority
* @param permission
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = { "StoreRef", "authority", "permission" })
public void deletePermission(StoreRef storeRef, String authority, String permission);
/**
* Clear all permission masks for an authority on a store
*
* @param storeRef
* @param authority
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = { "StoreRef", "authority" })
public void clearPermission(StoreRef storeRef, String authority);
/**
* Remove all permission mask on a store
*
* @param storeRef
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = { "StoreRef" })
public void deletePermissions(StoreRef storeRef);
/**
* Get all the AccessPermissions that are set for anyone for the given node
*
* @param nodeRef -
* the reference to the node
* @return the set of allowed permissions
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = { "StoreRef" })
public Set<AccessPermission> getAllSetPermissions(StoreRef storeRef);
}