1 package org.collectionspace.services.client;
3 import javax.ws.rs.Consumes;
4 import javax.ws.rs.DELETE;
5 import javax.ws.rs.GET;
6 import javax.ws.rs.POST;
7 import javax.ws.rs.PUT;
8 import javax.ws.rs.Path;
9 import javax.ws.rs.PathParam;
10 import javax.ws.rs.Produces;
11 import javax.ws.rs.QueryParam;
12 import javax.ws.rs.core.Response;
14 import org.collectionspace.services.common.query.IQueryManager;
15 import org.collectionspace.services.common.authorityref.AuthorityRefDocList;
16 import org.collectionspace.services.common.authorityref.AuthorityRefList;
17 import org.collectionspace.services.contact.ContactsCommonList;
18 import org.collectionspace.services.organization.OrgauthoritiesCommonList;
19 import org.collectionspace.services.organization.OrganizationsCommonList;
20 import org.collectionspace.services.person.PersonsCommonList;
21 import org.jboss.resteasy.client.ClientResponse;
22 import org.jboss.resteasy.plugins.providers.multipart.MultipartInput;
23 import org.jboss.resteasy.plugins.providers.multipart.MultipartOutput;
26 * @version $Revision:$
28 @Path("/orgauthorities/")
29 @Produces({"multipart/mixed"})
30 @Consumes({"multipart/mixed"})
31 public interface OrgAuthorityProxy extends CollectionSpaceProxy {
33 // List OrgAuthorities
35 @Produces({"application/xml"})
36 ClientResponse<OrgauthoritiesCommonList> readList();
40 ClientResponse<Response> create(MultipartOutput multipart);
45 ClientResponse<MultipartInput> read(@PathParam("csid") String csid);
49 @Path("/urn:cspace:name({name})")
50 ClientResponse<MultipartInput> readByName(@PathParam("name") String name);
55 ClientResponse<MultipartInput> update(@PathParam("csid") String csid, MultipartOutput multipart);
60 ClientResponse<Response> delete(@PathParam("csid") String csid);
62 // List Items with options for matching a partial term or keywords.
64 @Produces("application/xml")
65 @Path("/{csid}/items/")
66 ClientResponse<OrganizationsCommonList>readItemList(
67 @PathParam("csid") String parentcsid,
68 @QueryParam (IQueryManager.SEARCH_TYPE_PARTIALTERM) String partialTerm,
69 @QueryParam(IQueryManager.SEARCH_TYPE_KEYWORDS_KW) String keywords);
76 * @see org.collectionspace.services.client.IntakeProxy#getAuthorityRefs(java.lang.String)
79 @Path("{csid}/items/{itemcsid}/refObjs")
80 @Produces("application/xml")
81 ClientResponse<AuthorityRefDocList> getReferencingObjects(
82 @PathParam("csid") String parentcsid,
83 @PathParam("itemcsid") String itemcsid);
85 // List Items for a named authority matching a partial term or keywords.
87 @Produces({"application/xml"})
88 @Path("/urn:cspace:name({specifier})/items/")
89 ClientResponse<OrganizationsCommonList> readItemListForNamedAuthority(
90 @PathParam("specifier") String specifier,
91 @QueryParam (IQueryManager.SEARCH_TYPE_PARTIALTERM) String partialTerm,
92 @QueryParam(IQueryManager.SEARCH_TYPE_KEYWORDS_KW) String keywords);
94 // List Item Authority References
96 @Produces({"application/xml"})
97 @Path("/{parentcsid}/items/{itemcsid}/authorityrefs/")
98 public ClientResponse<AuthorityRefList> getItemAuthorityRefs(
99 @PathParam("parentcsid") String parentcsid,
100 @PathParam("itemcsid") String itemcsid);
104 @Path("/{vcsid}/items/")
105 ClientResponse<Response> createItem(@PathParam("vcsid") String vcsid, MultipartOutput multipart);
109 @Path("/{vcsid}/items/{csid}")
110 ClientResponse<MultipartInput> readItem(@PathParam("vcsid") String vcsid, @PathParam("csid") String csid);
114 @Path("/{vcsid}/items/urn:cspace:name({specifier})")
115 ClientResponse<MultipartInput> readNamedItem(@PathParam("vcsid") String vcsid, @PathParam("specifier") String specifier);
117 //(R)ead Item In Named Authority
119 @Path("/urn:cspace:name({specifier})/items/{csid}")
120 ClientResponse<MultipartInput> readItemInNamedAuthority(@PathParam("specifier") String specifier, @PathParam("csid") String csid);
122 //(R)ead Named Item In Named Authority
124 @Path("/urn:cspace:name({specifier})/items/urn:cspace:name({itemspecifier})")
125 ClientResponse<MultipartInput> readNamedItemInNamedAuthority(@PathParam("specifier") String specifier, @PathParam("itemspecifier") String itemspecifier);
129 @Path("/{vcsid}/items/{csid}")
130 ClientResponse<MultipartInput> updateItem(@PathParam("vcsid") String vcsid, @PathParam("csid") String csid, MultipartOutput multipart);
134 @Path("/{vcsid}/items/{csid}")
135 ClientResponse<Response> deleteItem(@PathParam("vcsid") String vcsid, @PathParam("csid") String csid);
139 @Produces({"application/xml"})
140 @Path("/{parentcsid}/items/{itemcsid}/contacts/")
141 ClientResponse<ContactsCommonList> readContactList(
142 @PathParam("parentcsid") String parentcsid,
143 @PathParam("itemcsid") String itemcsid);
147 @Path("/{parentcsid}/items/{itemcsid}/contacts/")
148 ClientResponse<Response> createContact(
149 @PathParam("parentcsid") String parentcsid,
150 @PathParam("itemcsid") String itemcsid,
151 MultipartOutput multipart);
155 @Path("/{parentcsid}/items/{itemcsid}/contacts/{csid}")
156 ClientResponse<MultipartInput> readContact(
157 @PathParam("parentcsid") String parentcsid,
158 @PathParam("itemcsid") String itemcsid,
159 @PathParam("csid") String csid);
163 @Path("/{parentcsid}/items/{itemcsid}/contacts/{csid}")
164 ClientResponse<MultipartInput> updateContact(
165 @PathParam("parentcsid") String parentcsid,
166 @PathParam("itemcsid") String itemcsid,
167 @PathParam("csid") String csid,
168 MultipartOutput multipart);
172 @Path("/{parentcsid}/items/{itemcsid}/contacts/{csid}")
173 ClientResponse<Response> deleteContact(
174 @PathParam("parentcsid") String parentcsid,
175 @PathParam("itemcsid") String itemcsid,
176 @PathParam("csid") String csid);