2 * PermissionRoleClient.java
4 * {Purpose of This Class}
6 * {Other Notes Relating to This Class (Optional)}
9 * $LastChangedRevision: $
12 * This document is a part of the source code and related artifacts
13 * for CollectionSpace, an open source collections management system
14 * for museums and related institutions:
16 * http://www.collectionspace.org
17 * http://wiki.collectionspace.org
19 * Copyright (C) 2009 {Contributing Institution}
21 * Licensed under the Educational Community License (ECL), Version 2.0.
22 * You may not use this file except in compliance with this License.
24 * You may obtain a copy of the ECL 2.0 License at
25 * https://source.collectionspace.org/collection-space/LICENSE.txt
27 package org.collectionspace.services.client;
29 import javax.ws.rs.core.Response;
32 import org.collectionspace.services.authorization.PermissionRole;
33 import org.jboss.resteasy.client.ProxyFactory;
34 import org.jboss.resteasy.plugins.providers.RegisterBuiltin;
35 import org.jboss.resteasy.client.ClientResponse;
36 import org.jboss.resteasy.client.core.executors.ApacheHttpClientExecutor;
37 import org.jboss.resteasy.spi.ResteasyProviderFactory;
39 // TODO: Auto-generated Javadoc
41 * A RolePermissionClient.
43 * @version $Revision:$
45 public class RolePermissionClient extends AbstractServiceClientImpl {
47 /** The role permission proxy. */
48 private RolePermissionProxy rolePermissionProxy;
51 public String getServiceName() {
52 throw new UnsupportedOperationException(); //FIXME: REM - http://issues.collectionspace.org/browse/CSPACE-3498 }
58 public String getServicePathComponent() {
59 return "authorization/roles";
64 * Default constructor for PermissionRoleClient class.
67 public RolePermissionClient() {
68 ResteasyProviderFactory factory = ResteasyProviderFactory.getInstance();
69 RegisterBuiltin.register(factory);
74 * @see org.collectionspace.services.client.CollectionSpaceClient#getProxy()
77 public CollectionSpaceProxy getProxy() {
78 return this.rolePermissionProxy;
82 * allow to reset proxy as per security needs.
84 public void setProxy() {
86 rolePermissionProxy = ProxyFactory.create(RolePermissionProxy.class,
87 getBaseURL(), new ApacheHttpClientExecutor(getHttpClient()));
89 rolePermissionProxy = ProxyFactory.create(RolePermissionProxy.class,
97 * @param csid the csid
98 * @return the client response
101 public ClientResponse<PermissionRole> read(String csid) {
102 return rolePermissionProxy.read(csid);
108 * @param csid the csid
109 * @param prcsid the prcsid
110 * @return the client response
112 public ClientResponse<PermissionRole> read(String csid, String prcsid) {
113 return rolePermissionProxy.read(csid, prcsid);
117 * Creates the relationships.
119 * @param csid the csid
120 * @param permRole the perm role
121 * @return the client response
124 public ClientResponse<Response> create(String csid, PermissionRole permRole) {
125 return rolePermissionProxy.create(csid, permRole);
129 * delete given relationships between given role and permission(s).
131 * @param csid the csid
132 * @param permRole the perm role
133 * @return the client response
135 public ClientResponse<Response> delete(String csid, PermissionRole permRole) {
136 return rolePermissionProxy.delete(csid, "delete", permRole);
140 * delete given relationships between given role and permission(s).
142 * @param csid the csid
143 * @return the client response
146 public ClientResponse<Response> delete(String csid) {
147 return rolePermissionProxy.delete(csid);