This changes PermissionsDaoComponentImpl to work with NodeRefs instead

of Nodes so that Permissions can be used with AVM nodes.  It needs
to be factored a little bit differently, so consider this a WIP.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3698 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Britt Park
2006-09-05 14:17:34 +00:00
parent 8c2ad19b2f
commit 1fd96d13d5
12 changed files with 308 additions and 77 deletions

View File

@@ -24,6 +24,7 @@ import java.util.List;
import java.util.Map;
import java.util.SortedMap;
import org.alfresco.repo.domain.DbAccessControlList;
import org.alfresco.repo.domain.PropertyValue;
import org.alfresco.service.cmr.repository.ContentData;
import org.alfresco.service.namespace.QName;
@@ -587,4 +588,19 @@ public interface AVMService
* @return Whether the given node has the given aspect.
*/
public boolean hasAspect(int version, String path, QName aspectName);
/**
* Get the ACL on a given node.
* @param version The version to look under.
* @param path The path to the node.
* @return The ACL.
*/
public DbAccessControlList getACL(int version, String path);
/**
* Set the ACL on a given node.
* @param path The path to the node.
* @param acl The ACL to set.
*/
public void setACL(String path, DbAccessControlList acl);
}

View File

@@ -21,6 +21,7 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
import org.alfresco.repo.domain.DbAccessControlList;
import org.alfresco.service.Auditable;
import org.alfresco.service.PublicService;
import org.alfresco.service.cmr.dictionary.InvalidAspectException;
@@ -296,7 +297,6 @@ public interface NodeService
*
* @param parentRef the parent end of the association
* @param childRef the child end of the association
* @return Returns a collection of deleted entities - both associations and node references.
* @throws InvalidNodeRefException if the parent or child nodes could not be found
*/
@Auditable(key = Auditable.Key.ARG_0 ,parameters = {"parentRef", "childRef"})
@@ -561,4 +561,20 @@ public interface NodeService
NodeRef destinationParentNodeRef,
QName assocTypeQName,
QName assocQName);
/**
* Get the access control list associated with a Node.
* @param nodeRef The reference to the Node.
* @return The access control list.
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"nodeRef"})
public DbAccessControlList getAccessControlList(NodeRef nodeRef);
/**
* Set the access control list on a node.
* @param nodeRef The node reference.
* @param acl The list to set.
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"nodeRef", "acl"})
public void setAccessControlList(NodeRef nodeRef, DbAccessControlList acl);
}