This project has retired. For details please refer to its
Attic page.
AclServiceImpl xref
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.chemistry.opencmis.client.bindings.spi.webservices;
20
21 import static org.apache.chemistry.opencmis.commons.impl.Converter.convert;
22
23 import org.apache.chemistry.opencmis.client.bindings.spi.BindingSession;
24 import org.apache.chemistry.opencmis.commons.data.Acl;
25 import org.apache.chemistry.opencmis.commons.data.ExtensionsData;
26 import org.apache.chemistry.opencmis.commons.enums.AclPropagation;
27 import org.apache.chemistry.opencmis.commons.exceptions.CmisRuntimeException;
28 import org.apache.chemistry.opencmis.commons.impl.jaxb.ACLServicePort;
29 import org.apache.chemistry.opencmis.commons.impl.jaxb.CmisException;
30 import org.apache.chemistry.opencmis.commons.impl.jaxb.EnumACLPropagation;
31 import org.apache.chemistry.opencmis.commons.spi.AclService;
32
33
34
35
36 public class AclServiceImpl extends AbstractWebServicesService implements AclService {
37
38 private final AbstractPortProvider portProvider;
39
40
41
42
43 public AclServiceImpl(BindingSession session, AbstractPortProvider portProvider) {
44 setSession(session);
45 this.portProvider = portProvider;
46 }
47
48 public Acl applyAcl(String repositoryId, String objectId, Acl addACEs, Acl removeACEs,
49 AclPropagation aclPropagation, ExtensionsData extension) {
50 ACLServicePort port = portProvider.getACLServicePort();
51
52 try {
53 return convert(port.applyACL(repositoryId, objectId, convert(addACEs), convert(removeACEs),
54 convert(EnumACLPropagation.class, aclPropagation), convert(extension)));
55 } catch (CmisException e) {
56 throw convertException(e);
57 } catch (Exception e) {
58 throw new CmisRuntimeException("Error: " + e.getMessage(), e);
59 } finally {
60 portProvider.endCall(port);
61 }
62 }
63
64 public Acl getAcl(String repositoryId, String objectId, Boolean onlyBasicPermissions, ExtensionsData extension) {
65 ACLServicePort port = portProvider.getACLServicePort();
66
67 try {
68 return convert(port.getACL(repositoryId, objectId, onlyBasicPermissions, convert(extension)));
69 } catch (CmisException e) {
70 throw convertException(e);
71 } catch (Exception e) {
72 throw new CmisRuntimeException("Error: " + e.getMessage(), e);
73 } finally {
74 portProvider.endCall(port);
75 }
76 }
77 }