]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
863265bd0a818fb51bf436d4d8838830696324c2
[tmp/jakarta-migration.git] /
1 package org.collectionspace.services.client;
2
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.core.Response;
12
13 import org.collectionspace.services.common.authorityref.AuthorityRefDocList;
14 import org.collectionspace.services.contact.ContactsCommonList;
15 import org.collectionspace.services.location.LocationauthoritiesCommonList;
16 import org.collectionspace.services.location.LocationsCommonList;
17 import org.jboss.resteasy.client.ClientResponse;
18 import org.jboss.resteasy.plugins.providers.multipart.MultipartInput;
19 import org.jboss.resteasy.plugins.providers.multipart.MultipartOutput;
20
21 /**
22  * @version $Revision:$
23  */
24 @Path("/locationauthorities/")
25 @Produces({"multipart/mixed"})
26 @Consumes({"multipart/mixed"})
27 public interface LocationAuthorityProxy extends CollectionSpaceProxy {
28
29     // List Locationauthorities
30     @GET
31     @Produces({"application/xml"})
32     ClientResponse<LocationauthoritiesCommonList> readList();
33
34     //(C)reate
35     @POST
36     ClientResponse<Response> create(MultipartOutput multipart);
37
38     //(R)ead
39     @GET
40     @Path("/{csid}")
41     ClientResponse<MultipartInput> read(@PathParam("csid") String csid);
42
43     //(R)ead by name
44     @GET
45     @Path("/urn:cspace:name({name})")
46     ClientResponse<MultipartInput> readByName(@PathParam("name") String name);
47
48     //(U)pdate
49     @PUT
50     @Path("/{csid}")
51     ClientResponse<MultipartInput> update(@PathParam("csid") String csid, MultipartOutput multipart);
52
53     //(D)elete
54     @DELETE
55     @Path("/{csid}")
56     ClientResponse<Response> delete(@PathParam("csid") String csid);
57
58     // List Items
59     @GET
60     @Produces({"application/xml"})
61     @Path("/{vcsid}/items/")
62     ClientResponse<LocationsCommonList> readItemList(@PathParam("vcsid") String vcsid);
63
64     /**
65      * @param csid
66      * @return
67      * @see org.collectionspace.services.client.IntakeProxy#getAuthorityRefs(java.lang.String)
68      */
69     @GET
70     @Path("{csid}/items/{itemcsid}/refObjs")
71     @Produces("application/xml")
72     ClientResponse<AuthorityRefDocList> getReferencingObjects(
73             @PathParam("csid") String parentcsid,
74             @PathParam("itemcsid") String itemcsid);
75
76     // List Items for a named authority
77     @GET
78     @Produces({"application/xml"})
79     @Path("/urn:cspace:name({specifier})/items/")
80     ClientResponse<LocationsCommonList> readItemListForNamedAuthority(@PathParam("specifier") String specifier);
81
82     //(C)reate Item
83     @POST
84     @Path("/{vcsid}/items/")
85     ClientResponse<Response> createItem(@PathParam("vcsid") String vcsid, MultipartOutput multipart);
86
87     //(R)ead Item
88     @GET
89     @Path("/{vcsid}/items/{csid}")
90     ClientResponse<MultipartInput> readItem(@PathParam("vcsid") String vcsid, @PathParam("csid") String csid);
91
92     //(U)pdate Item
93     @PUT
94     @Path("/{vcsid}/items/{csid}")
95     ClientResponse<MultipartInput> updateItem(@PathParam("vcsid") String vcsid, @PathParam("csid") String csid, MultipartOutput multipart);
96
97     //(D)elete Item
98     @DELETE
99     @Path("/{vcsid}/items/{csid}")
100     ClientResponse<Response> deleteItem(@PathParam("vcsid") String vcsid, @PathParam("csid") String csid);
101
102      // List Contacts
103     @GET
104     @Produces({"application/xml"})
105     @Path("/{parentcsid}/items/{itemcsid}/contacts/")
106     ClientResponse<ContactsCommonList> readContactList(
107             @PathParam("parentcsid") String parentcsid,
108             @PathParam("itemcsid") String itemcsid);
109
110     //(C)reate Contact
111     @POST
112     @Path("/{parentcsid}/items/{itemcsid}/contacts/")
113     ClientResponse<Response> createContact(
114             @PathParam("parentcsid") String parentcsid,
115             @PathParam("itemcsid") String itemcsid,
116             MultipartOutput multipart);
117
118      //(R)ead Contact
119     @GET
120     @Path("/{parentcsid}/items/{itemcsid}/contacts/{csid}")
121     ClientResponse<MultipartInput> readContact(
122             @PathParam("parentcsid") String parentcsid,
123             @PathParam("itemcsid") String itemcsid,
124             @PathParam("csid") String csid);
125
126     //(U)pdate Contact
127     @PUT
128     @Path("/{parentcsid}/items/{itemcsid}/contacts/{csid}")
129     ClientResponse<MultipartInput> updateContact(
130             @PathParam("parentcsid") String parentcsid,
131             @PathParam("itemcsid") String itemcsid,
132             @PathParam("csid") String csid,
133             MultipartOutput multipart);
134
135     //(D)elete Contact
136     @DELETE
137     @Path("/{parentcsid}/items/{itemcsid}/contacts/{csid}")
138     ClientResponse<Response> deleteContact(
139             @PathParam("parentcsid") String parentcsid,
140             @PathParam("itemcsid") String itemcsid,
141             @PathParam("csid") String csid);
142
143 }