[CMA-34] Get specific permissions on a particular node for the currently authenticated session Created: 02/Oct/08 Updated: 21/May/10 Resolved: 06/Oct/08 |
|
| Status: | Closed |
| Project: | Remote Alfresco API rivet |
| Component/s: | CMA Alfresco, CMA API |
| Affects Version/s: | None |
| Fix Version/s: | 1.7.0 |
| Type: | Improvement | Priority: | Critical |
| Reporter: | vjalilov | Assignee: | vjalilov |
| Resolution: | Completed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
OBJECTIVE: Knowing whether the currently authenticated user can "ReadProperties", "ReadContent", "WriteProperties", etc on the returned nodes, so, we can enable/disable UI functionality based on permissions. SPECIFICATION: We need a SearchService query method with the following signature: public java.util.List<Node> query(Ticket ticket, org.alfresco.service.cmr.repository.StoreRef store, SearchService.QueryLanguage queryLanguage, java.lang.String query, java.util.List<org.alfresco.service.namespace.QName> requiredProperties, java.util.List<String> requiredPermissions, // *************** NEW PARAMETER ************** boolean returnPeerAssocs, boolean returnChildAssocs, boolean returnAspects, int maxResults) throws InvalidTicketException, CmaRuntimeException //************************************************************************************** java.util.List<String> requiredPermissions = new java.util.List<String>(5); requiredPermissions.add("ReadProperties"); requiredPermissions.add("ReadContent"); requiredPermissions.add("Delete"); requiredPermissions.add("WriteProperties"); requiredPermissions.add("WriteContent"); //************************************************************************************** The resulting Node elements in java.util.List<Node> should have the requiredPermissions and their status (ALLOWED, DENIED) //************************************************************************************** node.getPermissions().get(0).getPermission() ---> "ReadProperties" node.getPermissions().get(0).getAccessStatus() ---> AccessStatus.ALLOWED node.getPermissions().get(1).getPermission() ---> "ReadContent" node.getPermissions().get(1).getAccessStatus() ---> AccessStatus.ALLOWED node.getPermissions().get(2).getPermission() ---> "Delete" node.getPermissions().get(2).getAccessStatus() ---> AccessStatus.DENIED node.getPermissions().get(3).getPermission() ---> "WriteProperties" node.getPermissions().get(3).getAccessStatus() ---> AccessStatus.ALLOWED node.getPermissions().get(4).getPermission() ---> "WriteContent" node.getPermissions().get(4).getAccessStatus() ---> AccessStatus.DENIED //************************************************************************************** |
| Comments |
| Comment by hlim [ 06/Oct/08 ] |
| done. |