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 @WebMethod(operationName = "getApplicationDocumentStatus")
269 @WebResult(name = "applicationDocumentStatus")
270 String getApplicationDocumentStatus(@WebParam(name = "documentId") String documentId)
271 throws RiceIllegalArgumentException;
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286 @WebMethod(operationName = "documentSearch")
287 @WebResult(name = "documentSearchResults")
288 DocumentSearchResults documentSearch(
289 @WebParam(name = "principalId") String principalId,
290 @WebParam(name = "criteria") DocumentSearchCriteria criteria)
291 throws RiceIllegalArgumentException;
292
293
294
295
296
297
298
299
300
301
302 @WebMethod(operationName = "getRouteNodeInstances")
303 @XmlElementWrapper(name = "routeNodeInstances", required = true)
304 @XmlElement(name = "routeNodeInstance", required = false)
305 @WebResult(name = "routeNodeInstances")
306 List<RouteNodeInstance> getRouteNodeInstances(@WebParam(name = "documentId") String documentId)
307 throws RiceIllegalArgumentException;
308
309
310
311
312
313
314
315
316
317
318 @WebMethod(operationName = "getActiveRouteNodeInstances")
319 @XmlElementWrapper(name = "routeNodeInstances", required = true)
320 @XmlElement(name = "routeNodeInstance", required = false)
321 @WebResult(name = "routeNodeInstances")
322 List<RouteNodeInstance> getActiveRouteNodeInstances(@WebParam(name = "documentId") String documentId)
323 throws RiceIllegalArgumentException;
324
325
326
327
328
329
330
331
332
333
334 @WebMethod(operationName = "getTerminalRouteNodeInstances")
335 @XmlElementWrapper(name = "routeNodeInstances", required = true)
336 @XmlElement(name = "routeNodeInstance", required = false)
337 @WebResult(name = "routeNodeInstances")
338 List<RouteNodeInstance> getTerminalRouteNodeInstances(@WebParam(name = "documentId") String documentId)
339 throws RiceIllegalArgumentException;
340
341
342
343
344
345
346
347
348
349
350 @WebMethod(operationName = "getCurrentRouteNodeInstances")
351 @XmlElementWrapper(name = "routeNodeInstances", required = true)
352 @XmlElement(name = "routeNodeInstance", required = false)
353 @WebResult(name = "routeNodeInstances")
354 List<RouteNodeInstance> getCurrentRouteNodeInstances(@WebParam(name = "documentId") String documentId)
355 throws RiceIllegalArgumentException;
356
357
358
359
360
361
362
363
364
365
366
367 @WebMethod(operationName = "getPreviousRouteNodeNames")
368 @XmlElementWrapper(name = "previousRouteNodeNames", required = true)
369 @XmlElement(name = "previousRouteNodeName", required = false)
370 @WebResult(name = "previousRouteNodeNames")
371 List<String> getPreviousRouteNodeNames(@WebParam(name = "documentId") String documentId)
372 throws RiceIllegalArgumentException;
373
374
375
376
377
378
379
380
381
382
383
384 @WebMethod(operationName = "getDocumentStatus")
385 @WebResult(name = "documentStatus")
386 DocumentStatus getDocumentStatus(@WebParam(name = "documentId") String documentId)
387 throws RiceIllegalArgumentException;
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403 @WebMethod(operationName = "getPrincipalIdsWithPendingActionRequestByActionRequestedAndDocId")
404 @XmlElementWrapper(name = "principalIds", required = true)
405 @XmlElement(name = "principalId", required = false)
406 @WebResult(name = "principalIds")
407 List<String> getPrincipalIdsWithPendingActionRequestByActionRequestedAndDocId(
408 @WebParam(name = "actionRequestedCd") String actionRequestedCd,
409 @WebParam(name = "documentId") String documentId)
410 throws RiceIllegalArgumentException;
411
412
413
414
415
416
417
418
419
420
421
422 @WebMethod(operationName = "getDocumentInitiatorPrincipalId")
423 @WebResult(name = "principalId")
424 String getDocumentInitiatorPrincipalId(@WebParam(name = "documentId") String documentId)
425 throws RiceIllegalArgumentException;
426
427
428
429
430
431
432
433
434
435
436
437 @WebMethod(operationName = "getRoutedByPrincipalIdByDocumentId")
438 @WebResult(name = "principalId")
439 String getRoutedByPrincipalIdByDocumentId(@WebParam(name = "documentId") String documentId)
440 throws RiceIllegalArgumentException;
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455 @WebMethod(operationName = "getSearchableAttributeStringValuesByKey")
456 @XmlElementWrapper(name = "searchableAttributeStringValues", required = true)
457 @XmlElement(name = "searchableAttributeStringValue", required = false)
458 @WebResult(name = "searchableAttributeStringValues")
459 List<String> getSearchableAttributeStringValuesByKey(@WebParam(name = "documentId") String documentId,
460 @WebParam(name = "key") String key)
461 throws RiceIllegalArgumentException;
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476 @WebMethod(operationName = "getSearchableAttributeDateTimeValuesByKey")
477 @XmlElementWrapper(name = "searchableAttributeDateTimeValues", required = true)
478 @XmlElement(name = "searchableAttributeDateTimeValue", required = false)
479 @WebResult(name = "searchableAttributeDateTimeValues")
480 @XmlJavaTypeAdapter(value = DateTimeAdapter.class)
481 List<DateTime> getSearchableAttributeDateTimeValuesByKey(@WebParam(name = "documentId") String documentId,
482 @WebParam(name = "key") String key)
483 throws RiceIllegalArgumentException;
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498 @WebMethod(operationName = "getSearchableAttributeFloatValuesByKey")
499 @XmlElementWrapper(name = "searchableAttributeBigDecimalValues", required = true)
500 @XmlElement(name = "searchableAttributeBigDecimalValue", required = false)
501 @WebResult(name = "searchableAttributeBigDecimalValues")
502 List<BigDecimal> getSearchableAttributeFloatValuesByKey(@WebParam(name = "documentId") String documentId,
503 @WebParam(name = "key") String key)
504 throws RiceIllegalArgumentException;
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519 @WebMethod(operationName = "getSearchableAttributeLongValuesByKey")
520 @XmlElementWrapper(name = "searchableAttributeLongValues", required = true)
521 @XmlElement(name = "searchableAttributeLongValue", required = false)
522 @WebResult(name = "searchableAttributeLongValues")
523 List<Long> getSearchableAttributeLongValuesByKey(@WebParam(name = "documentId") String documentId,
524 @WebParam(name = "key") String key)
525 throws RiceIllegalArgumentException;
526
527
528
529
530
531
532
533
534
535
536
537 @WebMethod(operationName = "getDocumentStatusTransitionHistory")
538 @XmlElementWrapper(name = "documentStatusTransitions", required = true)
539 @XmlElement(name = "documentStatusTransition", required = false)
540 @WebResult(name = "documentStatusTransitions")
541 List<DocumentStatusTransition> getDocumentStatusTransitionHistory(@WebParam(name = "documentId") String documentId)
542 throws RiceIllegalArgumentException;
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557 @WebMethod(operationName = "addDocumentLink")
558 @WebResult(name = "documentLink")
559 DocumentLink addDocumentLink(@WebParam(name = "documentLink") DocumentLink documentLink) throws RiceIllegalArgumentException;
560
561
562
563
564
565
566
567
568
569
570
571 @WebMethod(operationName = "deleteDocumentLink")
572 @WebResult(name = "documentLink")
573 DocumentLink deleteDocumentLink(@WebParam(name = "documentLinkId") String documentLinkId) throws RiceIllegalArgumentException;
574
575
576
577
578
579
580
581
582
583
584
585 @WebMethod(operationName = "deleteDocumentLinksByDocumentId")
586 @XmlElementWrapper(name = "documentLinks", required = true)
587 @XmlElement(name = "documentLink", required = false)
588 @WebResult(name = "documentLinks")
589 List<DocumentLink> deleteDocumentLinksByDocumentId(@WebParam(name = "originatingDocumentId") String originatingDocumentId) throws RiceIllegalArgumentException;
590
591
592
593
594
595
596
597
598
599
600 @WebMethod(operationName = "getOutgoingDocumentLinks")
601 @XmlElementWrapper(name = "documentLinks", required = true)
602 @XmlElement(name = "documentLink", required = false)
603 @WebResult(name = "documentLinks")
604 List<DocumentLink> getOutgoingDocumentLinks(@WebParam(name = "originatingDocumentId") String originatingDocumentId) throws RiceIllegalArgumentException;
605
606
607
608
609
610
611
612
613
614
615 @WebMethod(operationName = "getIncomingDocumentLinks")
616 @XmlElementWrapper(name = "documentLinks", required = true)
617 @XmlElement(name = "documentLink", required = false)
618 @WebResult(name = "documentLinks")
619 List<DocumentLink> getIncomingDocumentLinks(@WebParam(name = "originatingDocumentId") String originatingDocumentId) throws RiceIllegalArgumentException;
620
621
622
623
624
625
626
627
628
629
630 @WebMethod(operationName = "getDocumentLink")
631 @WebResult(name = "documentLinks")
632 DocumentLink getDocumentLink(@WebParam(name = "documentLinkId") String documentLinkId) throws RiceIllegalArgumentException;
633
634
635
636
637
638
639
640
641
642
643
644
645 @WebMethod(operationName = "getActiveRouteNodeNames")
646 @XmlElementWrapper(name = "nodes", required = true)
647 @XmlElement(name = "node", required = false)
648 @WebResult(name = "nodes")
649 List<String> getActiveRouteNodeNames(@WebParam(name = "documentId") String documentId) throws RiceIllegalArgumentException;
650
651
652
653
654
655
656
657
658
659
660
661
662 @WebMethod(operationName = "getTerminalRouteNodeNames")
663 @XmlElementWrapper(name = "nodes", required = true)
664 @XmlElement(name = "node", required = false)
665 @WebResult(name = "nodes")
666 List<String> getTerminalRouteNodeNames(@WebParam(name = "documentId") String documentId) throws RiceIllegalArgumentException;
667
668
669
670
671
672
673
674
675
676
677
678
679 @WebMethod(operationName = "getCurrentRouteNodeNames")
680 @XmlElementWrapper(name = "nodes", required = true)
681 @XmlElement(name = "node", required = false)
682 @WebResult(name = "nodes")
683 List<String> getCurrentRouteNodeNames(@WebParam(name = "documentId") String documentId) throws RiceIllegalArgumentException;
684 }