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.spi.ResteasyProviderFactory;
39 * A PermissionRoleClient.
41 * @version $Revision:$
43 public class PermissionRoleClient extends AbstractServiceClientImpl {
45 /** The permission role proxy. */
46 private PermissionRoleProxy permissionRoleProxy;
51 public String getServicePathComponent() {
52 return "authorization/permissions";
57 * Default constructor for PermissionRoleClient class.
60 public PermissionRoleClient() {
61 ResteasyProviderFactory factory = ResteasyProviderFactory.getInstance();
62 RegisterBuiltin.register(factory);
67 * @see org.collectionspace.services.client.CollectionSpaceClient#getProxy()
70 public CollectionSpaceProxy getProxy() {
71 return this.permissionRoleProxy;
75 * allow to reset proxy as per security needs.
77 public void setProxy() {
79 permissionRoleProxy = ProxyFactory.create(PermissionRoleProxy.class,
80 getBaseURL(), getHttpClient());
82 permissionRoleProxy = ProxyFactory.create(PermissionRoleProxy.class,
90 * @param csid the csid
91 * @param prcsid relationship does not have an id, junk is fine
92 * @return the client response
95 public ClientResponse<PermissionRole> read(String csid, String prcsid) {
96 return permissionRoleProxy.read(csid, prcsid);
102 * @param csid the csid
103 * @param permRole the perm role
104 * @return the client response
107 public ClientResponse<Response> create(String csid, PermissionRole permRole) {
108 return permissionRoleProxy.create(csid, permRole);
113 * Delete given relationships between given permission and role(s)
115 * @param csid the csid
116 * @param relationships to delete
120 public ClientResponse<Response> delete(String csid, PermissionRole permRole) {
121 return permissionRoleProxy.delete(csid, "delete", permRole);