2 * CollectionObjectProxy.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 © 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.Consumes;
30 import javax.ws.rs.DELETE;
31 import javax.ws.rs.GET;
32 import javax.ws.rs.POST;
33 import javax.ws.rs.PUT;
34 import javax.ws.rs.Path;
35 import javax.ws.rs.PathParam;
36 import javax.ws.rs.QueryParam;
37 import javax.ws.rs.Produces;
38 //import javax.ws.rs.core.Context;
39 import javax.ws.rs.core.Response;
40 //import javax.ws.rs.core.UriInfo;
42 //import org.collectionspace.services.client.IClientQueryParams;
43 import org.collectionspace.services.client.CollectionSpaceProxy;
44 import org.collectionspace.services.common.query.IQueryManager;
45 import org.collectionspace.services.common.authorityref.AuthorityRefList;
46 //import org.collectionspace.services.jaxb.AbstractCommonList;
47 import org.collectionspace.services.collectionobject.CollectionobjectsCommonList;
49 import org.jboss.resteasy.client.ClientResponse;
52 * @version $Revision:$
53 * FIXME: http://issues.collectionspace.org/browse/CSPACE-1684
55 @Path(CollectionObjectClient.SERVICE_PATH_PROXY)
56 @Produces({"application/xml"})
57 @Consumes({"application/xml"})
58 public interface CollectionObjectProxy extends CollectionSpaceProxy {
63 * @return the client response
66 @Produces({"application/xml"})
67 ClientResponse<CollectionobjectsCommonList> readList();
70 // * Read list. //FIXME: REM - Remove this dead code please.
72 // * @param pageSize the page size
73 // * @param pageNumber the page number
74 // * @return the client response
77 // @Produces({"application/xml"})
79 // ClientResponse<CollectionobjectsCommonList> readList(
80 // @QueryParam(IClientQueryParams.PAGE_SIZE_PARAM) String pageSize,
81 // @QueryParam(IClientQueryParams.START_PAGE_PARAM) String pageNumber);
88 * @return the client response
91 @Path("/{ms}/roundtrip")
92 @Produces({"application/xml"})
93 ClientResponse<Response> roundtrip(@PathParam("ms") int ms);
98 * @param keywords the keywords
99 * @return the client response
102 @Produces({"application/xml"})
103 ClientResponse<CollectionobjectsCommonList> keywordSearch(
104 @QueryParam(IQueryManager.SEARCH_TYPE_KEYWORDS_KW) String keywords);
110 * @param payload the payload
111 * @return the client response
114 ClientResponse<Response> create(byte[] payload);
120 * @param csid the csid
121 * @return the client response
125 ClientResponse<String> read(@PathParam("csid") String csid);
128 @Produces({"application/xml"})
129 @Path("/{csid}/picture")
130 @Deprecated //FIXME: REM - Remove this method and the corresponding client, and resource as well.
131 ClientResponse<Response> createPicture(@PathParam("csid") String csid);
133 // List Authority references
135 * Gets the authority refs.
137 * @param csid the csid
138 * @return the authority refs
141 @Produces({"application/xml"})
142 @Path("/{csid}/authorityrefs/")
143 ClientResponse<AuthorityRefList> getAuthorityRefs(@PathParam("csid") String csid);
150 * @param csid the csid
151 * @param multipart the multipart
152 * @return the client response
156 ClientResponse<String> update(@PathParam("csid") String csid, byte[] payload);
162 * @param csid the csid
163 * @return the client response
167 ClientResponse<Response> delete(@PathParam("csid") String csid);