]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
e78a7ebbbc852343b9e8239bb3833a2556640f29
[tmp/jakarta-migration.git] /
1 package org.collectionspace.services.client;
2
3 import javax.ws.rs.core.Response;
4
5 import org.collectionspace.services.jaxb.AbstractCommonList;
6 import org.collectionspace.services.common.authorityref.AuthorityRefList;
7 import org.jboss.resteasy.client.ProxyFactory;
8 import org.jboss.resteasy.plugins.providers.RegisterBuiltin;
9 import org.jboss.resteasy.client.ClientResponse;
10 import org.jboss.resteasy.client.core.executors.ApacheHttpClientExecutor;
11 import org.jboss.resteasy.spi.ResteasyProviderFactory;
12
13 /**
14  * An AcquisitionClient.
15
16  * @version $Revision:$
17  */
18 public class AcquisitionClient extends AbstractServiceClientImpl {
19         public static final String SERVICE_NAME = "acquisitions";
20         public static final String SERVICE_PATH_COMPONENT = SERVICE_NAME;       
21         public static final String SERVICE_PATH = "/" + SERVICE_PATH_COMPONENT;
22         public static final String SERVICE_PATH_PROXY = SERVICE_PATH + "/";     
23         public static final String SERVICE_PAYLOAD_NAME = SERVICE_NAME;
24
25         @Override
26         public String getServiceName() {
27                 return SERVICE_NAME;
28         }
29         
30         @Override
31     public String getServicePathComponent() {
32         return SERVICE_PATH_COMPONENT;
33     }
34         
35     /**
36      *
37      */
38     private AcquisitionProxy acquisitionProxy;
39
40     /**
41      *
42      * Default constructor for IntakeClient class.
43      *
44      */
45     public AcquisitionClient() {
46         ResteasyProviderFactory factory = ResteasyProviderFactory.getInstance();
47         RegisterBuiltin.register(factory);
48         setProxy();
49     }
50
51     @Override
52     public CollectionSpaceProxy getProxy() {
53         return this.acquisitionProxy;
54     }
55
56     /**
57      * allow to reset proxy as per security needs
58      */
59     public void setProxy() {
60         if (useAuth()) {
61             acquisitionProxy = ProxyFactory.create(AcquisitionProxy.class,
62                     getBaseURL(), new ApacheHttpClientExecutor(getHttpClient()));
63         } else {
64             acquisitionProxy = ProxyFactory.create(AcquisitionProxy.class,
65                     getBaseURL());
66         }
67     }
68
69     /**
70      * FIXME Is this method still needed/used?
71      *
72      * @return
73      */
74 //    public static AcquisitionClient getInstance() {
75 //        return instance;
76 //    }
77
78     /**
79      * @return
80      * @see org.collectionspace.hello.client.IntakeProxy#getIntake()
81      */
82     public ClientResponse<AbstractCommonList> readList() {
83         return acquisitionProxy.readList();
84     }
85
86     /**
87      * @param csid
88      * @return
89      * @see org.collectionspace.hello.client.IntakeProxy#getIntake(java.lang.String)
90      */
91     public ClientResponse<String> read(String csid) {
92         return acquisitionProxy.read(csid);
93     }
94
95     /**
96      * @param csid
97      * @return
98      * @see org.collectionspace.services.client.CollectionObjectProxy#getAuthorityRefs(java.lang.String)
99      */
100     public ClientResponse<AuthorityRefList> getAuthorityRefs(String csid) {
101         return acquisitionProxy.getAuthorityRefs(csid);
102     }
103
104     /**
105      * @param intake
106      * @return
107      * @see org.collectionspace.hello.client.IntakeProxy#createIntake(org.collectionspace.hello.Intake)
108      */
109     public ClientResponse<Response> create(PoxPayloadOut xmlPayload) {
110         return acquisitionProxy.create(xmlPayload.getBytes());
111     }
112
113     /**
114      * @param csid
115      * @param intake
116      * @return
117      * @see org.collectionspace.hello.client.IntakeProxy#updateIntake(java.lang.Long, org.collectionspace.hello.Intake)
118      */
119     public ClientResponse<String> update(String csid, PoxPayloadOut xmlPayload) {
120         return acquisitionProxy.update(csid, xmlPayload.getBytes());
121     }
122
123     /**
124      * @param csid
125      * @return
126      * @see org.collectionspace.hello.client.IntakeProxy#deleteIntake(java.lang.Long)
127      */
128     public ClientResponse<Response> delete(String csid) {
129         return acquisitionProxy.delete(csid);
130     }
131 }