1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.kim.api.responsibility;
17
18 import org.kuali.rice.core.api.criteria.QueryByCriteria;
19 import org.kuali.rice.core.api.exception.RiceIllegalArgumentException;
20 import org.kuali.rice.core.api.exception.RiceIllegalStateException;
21 import org.kuali.rice.core.api.util.jaxb.MapStringStringAdapter;
22 import org.kuali.rice.kim.api.KimConstants;
23 import org.kuali.rice.kim.api.common.template.Template;
24 import org.kuali.rice.kim.api.common.template.TemplateQueryResults;
25 import org.springframework.cache.annotation.CacheEvict;
26 import org.springframework.cache.annotation.Cacheable;
27
28 import javax.jws.WebMethod;
29 import javax.jws.WebParam;
30 import javax.jws.WebResult;
31 import javax.jws.WebService;
32 import javax.jws.soap.SOAPBinding;
33 import javax.xml.bind.annotation.XmlElement;
34 import javax.xml.bind.annotation.XmlElementWrapper;
35 import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
36 import java.util.List;
37 import java.util.Map;
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 @WebService(name = "responsibilityService", targetNamespace = KimConstants.Namespaces.KIM_NAMESPACE_2_0)
63 @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
64 public interface ResponsibilityService {
65
66
67
68
69
70
71
72
73
74 @WebMethod(operationName="createResponsibility")
75 @WebResult(name = "responsibility")
76 @CacheEvict(value={Responsibility.Cache.NAME, Template.Cache.NAME + "{Responsibility}"}, allEntries = true)
77 Responsibility createResponsibility(@WebParam(name = "responsibility") Responsibility responsibility)
78 throws RiceIllegalArgumentException, RiceIllegalStateException;
79
80
81
82
83
84
85
86
87 @WebMethod(operationName="updateResponsibility")
88 @WebResult(name = "responsibility")
89 @CacheEvict(value={Responsibility.Cache.NAME, Template.Cache.NAME + "{Responsibility}"}, allEntries = true)
90 Responsibility updateResponsibility(@WebParam(name = "responsibility") Responsibility responsibility)
91 throws RiceIllegalArgumentException, RiceIllegalStateException;
92
93
94
95
96
97
98
99
100
101
102
103
104 @WebMethod(operationName = "getResponsibility")
105 @WebResult(name = "responsibility")
106 @Cacheable(value=Responsibility.Cache.NAME, key="'id=' + #p0")
107 Responsibility getResponsibility(@WebParam(name = "id") String id) throws RiceIllegalArgumentException;
108
109
110
111
112
113
114
115
116
117 @WebMethod(operationName = "findRespByNamespaceCodeAndName")
118 @WebResult(name = "responsibility")
119 @Cacheable(value=Responsibility.Cache.NAME, key="'namespaceCode=' + #p0 + '|' + 'name=' + #p1")
120 Responsibility findRespByNamespaceCodeAndName(@WebParam(name = "namespaceCode") String namespaceCode,
121 @WebParam(name = "name") String name) throws RiceIllegalArgumentException;
122
123
124
125
126
127
128
129
130
131
132
133 @WebMethod(operationName = "getResponsibilityTemplate")
134 @WebResult(name = "template")
135 @Cacheable(value=Template.Cache.NAME + "{Responsibility}", key="'id=' + #p0")
136 Template getResponsibilityTemplate(@WebParam(name = "id") String id) throws RiceIllegalArgumentException;
137
138
139
140
141
142
143
144
145
146 @WebMethod(operationName = "findRespTemplateByNamespaceCodeAndName")
147 @WebResult(name = "template")
148 @Cacheable(value=Template.Cache.NAME + "{Responsibility}", key="'namespaceCode=' + #p0 + '|' + 'name=' + #p1")
149 Template findRespTemplateByNamespaceCodeAndName(@WebParam(name = "namespaceCode") String namespaceCode,
150 @WebParam(name = "name") String name) throws RiceIllegalArgumentException;
151
152
153
154
155
156
157
158
159
160
161
162 @WebMethod(operationName = "hasResponsibility")
163 @WebResult(name = "result")
164 boolean hasResponsibility(@WebParam(name = "principalId") String principalId,
165 @WebParam(name = "namespaceCode") String namespaceCode,
166 @WebParam(name = "respName") String respName,
167 @XmlJavaTypeAdapter(value = MapStringStringAdapter.class)
168 @WebParam(name = "qualification") Map<String, String> qualification) throws RiceIllegalArgumentException;
169
170
171
172
173
174
175
176
177
178
179
180
181
182 @WebMethod(operationName = "hasResponsibilityByTemplate")
183 @WebResult(name = "result")
184 boolean hasResponsibilityByTemplate(@WebParam(name = "principalId") String principalId,
185 @WebParam(name = "namespaceCode") String namespaceCode,
186 @WebParam(name = "respTemplateName") String respTemplateName,
187 @XmlJavaTypeAdapter(value = MapStringStringAdapter.class) @WebParam(
188 name = "qualification") Map<String, String> qualification,
189 @XmlJavaTypeAdapter(value = MapStringStringAdapter.class) @WebParam(
190 name = "respDetails") Map<String, String> respDetails) throws RiceIllegalArgumentException;
191
192
193
194
195
196
197
198
199
200
201
202 @WebMethod(operationName = "getResponsibilityActions")
203 @XmlElementWrapper(name = "responsibilityActions", required = true)
204 @XmlElement(name = "responsibilityAction", required = false)
205 @WebResult(name = "responsibilityActions")
206 List<ResponsibilityAction> getResponsibilityActions(@WebParam(name = "namespaceCode") String namespaceCode,
207 @WebParam(name = "respName") String respName,
208 @XmlJavaTypeAdapter(value = MapStringStringAdapter.class)
209 @WebParam(name = "qualification") Map<String, String> qualification) throws RiceIllegalArgumentException;
210
211
212
213
214
215
216
217
218
219
220
221
222 @WebMethod(operationName = "getResponsibilityActionsByTemplate")
223 @XmlElementWrapper(name = "responsibilityActions", required = true)
224 @XmlElement(name = "responsibilityAction", required = false)
225 @WebResult(name = "responsibilityActions")
226 List<ResponsibilityAction> getResponsibilityActionsByTemplate(
227 @WebParam(name = "namespaceCode") String namespaceCode,
228 @WebParam(name = "responsibilityTemplateName") String respTemplateName,
229 @XmlJavaTypeAdapter(value = MapStringStringAdapter.class) @WebParam(
230 name = "qualification") Map<String, String> qualification,
231 @XmlJavaTypeAdapter(value = MapStringStringAdapter.class) @WebParam(
232 name = "respDetails") Map<String, String> respDetails) throws RiceIllegalArgumentException;
233
234
235
236
237
238
239
240
241 @WebMethod(operationName = "getRoleIdsForResponsibility")
242 @XmlElementWrapper(name = "roleIds", required = true)
243 @XmlElement(name = "roleId", required = false)
244 @WebResult(name = "roleIds")
245 List<String> getRoleIdsForResponsibility(@WebParam(name = "id") String id) throws RiceIllegalArgumentException;
246
247
248
249
250
251
252
253
254 @WebMethod(operationName = "findResponsibilities")
255 @WebResult(name = "results")
256 ResponsibilityQueryResults findResponsibilities(@WebParam(name = "query") QueryByCriteria queryByCriteria) throws RiceIllegalArgumentException;
257
258
259
260
261
262
263
264
265
266 @WebMethod(operationName = "findResponsibilityTemplates")
267 @WebResult(name = "results")
268 TemplateQueryResults findResponsibilityTemplates(@WebParam(name = "query") QueryByCriteria queryByCriteria) throws RiceIllegalArgumentException;
269 }