1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.kew.api.document;
17
18 import org.joda.time.DateTime;
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.DateTimeAdapter;
22 import org.kuali.rice.core.api.util.jaxb.MapStringStringAdapter;
23 import org.kuali.rice.kew.api.KewApiConstants;
24 import org.kuali.rice.kew.api.action.ActionRequest;
25 import org.kuali.rice.kew.api.action.ActionTaken;
26 import org.kuali.rice.kew.api.document.search.DocumentSearchCriteria;
27 import org.kuali.rice.kew.api.document.search.DocumentSearchResults;
28 import org.kuali.rice.kew.api.document.node.RouteNodeInstance;
29
30 import javax.jws.WebMethod;
31 import javax.jws.WebParam;
32 import javax.jws.WebResult;
33 import javax.jws.WebService;
34 import javax.jws.soap.SOAPBinding;
35 import javax.xml.bind.annotation.XmlElement;
36 import javax.xml.bind.annotation.XmlElementWrapper;
37 import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
38 import java.math.BigDecimal;
39 import java.util.List;
40 import java.util.Map;
41
42
43
44
45
46
47 @WebService(name = "workflowDocumentService", targetNamespace = KewApiConstants.Namespaces.KEW_NAMESPACE_2_0)
48 @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
49 public interface WorkflowDocumentService {
50
51
52
53
54
55
56
57
58
59
60
61
62 @WebMethod(operationName = "getDocument")
63 @WebResult(name = "document")
64 Document getDocument(@WebParam(name = "documentId") String documentId) throws RiceIllegalArgumentException;
65
66
67
68
69
70
71
72
73
74
75
76
77 @WebMethod(operationName = "doesDocumentExist")
78 @WebResult(name = "document")
79 boolean doesDocumentExist(@WebParam(name = "documentId") String documentId)
80 throws RiceIllegalArgumentException;
81
82
83
84
85
86
87
88
89
90
91
92
93 @WebMethod(operationName = "getDocumentContent")
94 @WebResult(name = "documentContent")
95 DocumentContent getDocumentContent(@WebParam(name = "documentId") String documentId)
96 throws RiceIllegalArgumentException;
97
98
99
100
101
102
103
104
105
106
107 @WebMethod(operationName = "getRootActionRequests")
108 @XmlElementWrapper(name = "rootActionRequests", required = true)
109 @XmlElement(name = "rootActionRequest", required = false)
110 @WebResult(name = "rootActionRequests")
111 List<ActionRequest> getRootActionRequests(@WebParam(name = "documentId") String documentId)
112 throws RiceIllegalArgumentException;
113
114
115
116
117
118
119
120
121
122 @WebMethod(operationName = "getPendingActionRequests")
123 @XmlElementWrapper(name = "pendingActionRequests", required = true)
124 @XmlElement(name = "pendingActionRequest", required = false)
125 @WebResult(name = "pendingActionRequests")
126 List<ActionRequest> getPendingActionRequests(String documentId);
127
128
129
130
131
132
133
134
135
136
137
138
139 @WebMethod(operationName = "getActionRequestsForPrincipalAtNode")
140 @XmlElementWrapper(name = "actionRequests", required = true)
141 @XmlElement(name = "actionRequests", required = false)
142 @WebResult(name = "actionRequests")
143 List<ActionRequest> getActionRequestsForPrincipalAtNode(@WebParam(name = "documentId") String documentId,
144 @WebParam(name = "nodeName") String nodeName, @WebParam(name = "principalId") String principalId)
145 throws RiceIllegalArgumentException;
146
147
148
149
150
151
152
153
154
155
156 @WebMethod(operationName = "getActionsTaken")
157 @XmlElementWrapper(name = "actionsTaken", required = true)
158 @XmlElement(name = "actionTaken", required = false)
159 @WebResult(name = "actionsTaken")
160 List<ActionTaken> getActionsTaken(@WebParam(name = "documentId") String documentId)
161 throws RiceIllegalArgumentException;
162
163
164
165
166
167
168
169
170
171
172 @WebMethod(operationName = "getActionRequests")
173 @XmlElementWrapper(name = "actionsTaken", required = true)
174 @XmlElement(name = "actionTaken", required = false)
175 @WebResult(name = "actionsTaken")
176 @Deprecated
177 List<ActionTaken> _getActionsTaken(@WebParam(name = "documentId") String documentId)
178 throws RiceIllegalArgumentException;
179
180
181
182
183
184
185
186
187
188
189
190
191
192 @WebMethod(operationName = "getAllActionRequests")
193 @XmlElementWrapper(name = "actionsTaken", required = true)
194 @XmlElement(name = "actionTaken", required = false)
195 @WebResult(name = "actionsTaken")
196 List<ActionTaken> getAllActionsTaken(@WebParam(name = "documentId") String documentId)
197 throws RiceIllegalArgumentException;
198
199
200
201
202
203
204
205
206
207
208
209
210
211 @WebMethod(operationName = "getDocumentDetailByAppId")
212 @WebResult(name = "documentDetail")
213 DocumentDetail getDocumentDetailByAppId(@WebParam(name = "documentTypeName") String documentTypeName,
214 @WebParam(name = "appId") String appId)
215 throws RiceIllegalArgumentException;
216
217
218
219
220
221
222
223
224
225
226 @WebMethod(operationName = "getDocumentDetail")
227 @WebResult(name = "documentDetail")
228 DocumentDetail getDocumentDetail(@WebParam(name = "documentId") String documentId);
229
230
231
232
233
234
235
236
237
238
239
240 @WebMethod(operationName = "getRouteNodeInstance")
241 @WebResult(name = "routeNodeInstance")
242 RouteNodeInstance getRouteNodeInstance(@WebParam(name = "routeNodeInstanceId") String routeNodeInstanceId)
243 throws RiceIllegalArgumentException;
244
245
246
247
248
249
250
251
252
253
254 @WebMethod(operationName = "getApplicationDocumentId")
255 @WebResult(name = "applicationDocumentId")
256 String getApplicationDocumentId(@WebParam(name = "documentId") String documentId)
257 throws RiceIllegalArgumentException;
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272 @WebMethod(operationName = "documentSearch")
273 @WebResult(name = "documentSearchResults")
274 DocumentSearchResults documentSearch(
275 @WebParam(name = "principalId") String principalId,
276 @WebParam(name = "criteria") DocumentSearchCriteria criteria)
277 throws RiceIllegalArgumentException;
278
279
280
281
282
283
284
285
286
287
288 @WebMethod(operationName = "getRouteNodeInstances")
289 @XmlElementWrapper(name = "routeNodeInstances", required = true)
290 @XmlElement(name = "routeNodeInstance", required = false)
291 @WebResult(name = "routeNodeInstances")
292 List<RouteNodeInstance> getRouteNodeInstances(@WebParam(name = "documentId") String documentId)
293 throws RiceIllegalArgumentException;
294
295
296
297
298
299
300
301
302
303
304 @WebMethod(operationName = "getActiveRouteNodeInstances")
305 @XmlElementWrapper(name = "routeNodeInstances", required = true)
306 @XmlElement(name = "routeNodeInstance", required = false)
307 @WebResult(name = "routeNodeInstances")
308 List<RouteNodeInstance> getActiveRouteNodeInstances(@WebParam(name = "documentId") String documentId)
309 throws RiceIllegalArgumentException;
310
311
312
313
314
315
316
317
318
319
320 @WebMethod(operationName = "getTerminalRouteNodeInstances")
321 @XmlElementWrapper(name = "routeNodeInstances", required = true)
322 @XmlElement(name = "routeNodeInstance", required = false)
323 @WebResult(name = "routeNodeInstances")
324 List<RouteNodeInstance> getTerminalRouteNodeInstances(@WebParam(name = "documentId") String documentId)
325 throws RiceIllegalArgumentException;
326
327
328
329
330
331
332
333
334
335
336 @WebMethod(operationName = "getCurrentRouteNodeInstances")
337 @XmlElementWrapper(name = "routeNodeInstances", required = true)
338 @XmlElement(name = "routeNodeInstance", required = false)
339 @WebResult(name = "routeNodeInstances")
340 List<RouteNodeInstance> getCurrentRouteNodeInstances(@WebParam(name = "documentId") String documentId)
341 throws RiceIllegalArgumentException;
342
343
344
345
346
347
348
349
350
351
352
353 @WebMethod(operationName = "getPreviousRouteNodeNames")
354 @XmlElementWrapper(name = "previousRouteNodeNames", required = true)
355 @XmlElement(name = "previousRouteNodeName", required = false)
356 @WebResult(name = "previousRouteNodeNames")
357 List<String> getPreviousRouteNodeNames(@WebParam(name = "documentId") String documentId)
358 throws RiceIllegalArgumentException;
359
360
361
362
363
364
365
366
367
368
369
370 @WebMethod(operationName = "getDocumentStatus")
371 @WebResult(name = "documentStatus")
372 DocumentStatus getDocumentStatus(@WebParam(name = "documentId") String documentId)
373 throws RiceIllegalArgumentException;
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389 @WebMethod(operationName = "getPrincipalIdsWithPendingActionRequestByActionRequestedAndDocId")
390 @XmlElementWrapper(name = "principalIds", required = true)
391 @XmlElement(name = "principalId", required = false)
392 @WebResult(name = "principalIds")
393 List<String> getPrincipalIdsWithPendingActionRequestByActionRequestedAndDocId(
394 @WebParam(name = "actionRequestedCd") String actionRequestedCd,
395 @WebParam(name = "documentId") String documentId)
396 throws RiceIllegalArgumentException;
397
398
399
400
401
402
403
404
405
406
407
408 @WebMethod(operationName = "getDocumentInitiatorPrincipalId")
409 @WebResult(name = "principalId")
410 String getDocumentInitiatorPrincipalId(@WebParam(name = "documentId") String documentId)
411 throws RiceIllegalArgumentException;
412
413
414
415
416
417
418
419
420
421
422
423 @WebMethod(operationName = "getRoutedByPrincipalIdByDocumentId")
424 @WebResult(name = "principalId")
425 String getRoutedByPrincipalIdByDocumentId(@WebParam(name = "documentId") String documentId)
426 throws RiceIllegalArgumentException;
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441 @WebMethod(operationName = "getSearchableAttributeStringValuesByKey")
442 @XmlElementWrapper(name = "searchableAttributeStringValues", required = true)
443 @XmlElement(name = "searchableAttributeStringValue", required = false)
444 @WebResult(name = "searchableAttributeStringValues")
445 List<String> getSearchableAttributeStringValuesByKey(@WebParam(name = "documentId") String documentId,
446 @WebParam(name = "key") String key)
447 throws RiceIllegalArgumentException;
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462 @WebMethod(operationName = "getSearchableAttributeDateTimeValuesByKey")
463 @XmlElementWrapper(name = "searchableAttributeDateTimeValues", required = true)
464 @XmlElement(name = "searchableAttributeDateTimeValue", required = false)
465 @WebResult(name = "searchableAttributeDateTimeValues")
466 @XmlJavaTypeAdapter(value = DateTimeAdapter.class)
467 List<DateTime> getSearchableAttributeDateTimeValuesByKey(@WebParam(name = "documentId") String documentId,
468 @WebParam(name = "key") String key)
469 throws RiceIllegalArgumentException;
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484 @WebMethod(operationName = "getSearchableAttributeFloatValuesByKey")
485 @XmlElementWrapper(name = "searchableAttributeBigDecimalValues", required = true)
486 @XmlElement(name = "searchableAttributeBigDecimalValue", required = false)
487 @WebResult(name = "searchableAttributeBigDecimalValues")
488 List<BigDecimal> getSearchableAttributeFloatValuesByKey(@WebParam(name = "documentId") String documentId,
489 @WebParam(name = "key") String key)
490 throws RiceIllegalArgumentException;
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505 @WebMethod(operationName = "getSearchableAttributeLongValuesByKey")
506 @XmlElementWrapper(name = "searchableAttributeLongValues", required = true)
507 @XmlElement(name = "searchableAttributeLongValue", required = false)
508 @WebResult(name = "searchableAttributeLongValues")
509 List<Long> getSearchableAttributeLongValuesByKey(@WebParam(name = "documentId") String documentId,
510 @WebParam(name = "key") String key)
511 throws RiceIllegalArgumentException;
512
513
514
515
516
517
518
519
520
521
522
523 @WebMethod(operationName = "getDocumentStatusTransitionHistory")
524 @XmlElementWrapper(name = "documentStatusTransitions", required = true)
525 @XmlElement(name = "documentStatusTransition", required = false)
526 @WebResult(name = "documentStatusTransitions")
527 List<DocumentStatusTransition> getDocumentStatusTransitionHistory(@WebParam(name = "documentId") String documentId)
528 throws RiceIllegalArgumentException;
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543 @WebMethod(operationName = "addDocumentLink")
544 @WebResult(name = "documentLink")
545 DocumentLink addDocumentLink(@WebParam(name = "documentLink") DocumentLink documentLink) throws RiceIllegalArgumentException;
546
547
548
549
550
551
552
553
554
555
556
557 @WebMethod(operationName = "deleteDocumentLink")
558 @WebResult(name = "documentLink")
559 DocumentLink deleteDocumentLink(@WebParam(name = "documentLinkId") String documentLinkId) throws RiceIllegalArgumentException;
560
561
562
563
564
565
566
567
568
569
570
571 @WebMethod(operationName = "deleteDocumentLinksByDocumentId")
572 @XmlElementWrapper(name = "documentLinks", required = true)
573 @XmlElement(name = "documentLink", required = false)
574 @WebResult(name = "documentLinks")
575 List<DocumentLink> deleteDocumentLinksByDocumentId(@WebParam(name = "originatingDocumentId") String originatingDocumentId) throws RiceIllegalArgumentException;
576
577
578
579
580
581
582
583
584
585
586 @WebMethod(operationName = "getOutgoingDocumentLinks")
587 @XmlElementWrapper(name = "documentLinks", required = true)
588 @XmlElement(name = "documentLink", required = false)
589 @WebResult(name = "documentLinks")
590 List<DocumentLink> getOutgoingDocumentLinks(@WebParam(name = "originatingDocumentId") String originatingDocumentId) throws RiceIllegalArgumentException;
591
592
593
594
595
596
597
598
599
600
601 @WebMethod(operationName = "getIncomingDocumentLinks")
602 @XmlElementWrapper(name = "documentLinks", required = true)
603 @XmlElement(name = "documentLink", required = false)
604 @WebResult(name = "documentLinks")
605 List<DocumentLink> getIncomingDocumentLinks(@WebParam(name = "originatingDocumentId") String originatingDocumentId) throws RiceIllegalArgumentException;
606
607
608
609
610
611
612
613
614
615
616 @WebMethod(operationName = "getDocumentLink")
617 @WebResult(name = "documentLinks")
618 DocumentLink getDocumentLink(@WebParam(name = "documentLinkId") String documentLinkId) throws RiceIllegalArgumentException;
619
620
621
622
623
624
625
626
627
628
629
630
631 @WebMethod(operationName = "getActiveRouteNodeNames")
632 @XmlElementWrapper(name = "nodes", required = true)
633 @XmlElement(name = "node", required = false)
634 @WebResult(name = "nodes")
635 List<String> getActiveRouteNodeNames(@WebParam(name = "documentId") String documentId) throws RiceIllegalArgumentException;
636
637
638
639
640
641
642
643
644
645
646
647
648 @WebMethod(operationName = "getTerminalRouteNodeNames")
649 @XmlElementWrapper(name = "nodes", required = true)
650 @XmlElement(name = "node", required = false)
651 @WebResult(name = "nodes")
652 List<String> getTerminalRouteNodeNames(@WebParam(name = "documentId") String documentId) throws RiceIllegalArgumentException;
653
654
655
656
657
658
659
660
661
662
663
664
665 @WebMethod(operationName = "getCurrentRouteNodeNames")
666 @XmlElementWrapper(name = "nodes", required = true)
667 @XmlElement(name = "node", required = false)
668 @WebResult(name = "nodes")
669 List<String> getCurrentRouteNodeNames(@WebParam(name = "documentId") String documentId) throws RiceIllegalArgumentException;
670 }