1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.kuali.rice.kew.routeheader.service;
18
19 import java.math.BigDecimal;
20 import java.sql.Timestamp;
21 import java.util.Collection;
22 import java.util.List;
23 import java.util.Set;
24
25 import org.kuali.rice.kew.docsearch.SearchableAttributeValue;
26 import org.kuali.rice.kew.doctype.bo.DocumentType;
27 import org.kuali.rice.kew.routeheader.DocumentRouteHeaderValue;
28 import org.kuali.rice.kew.routeheader.DocumentRouteHeaderValueContent;
29
30
31
32
33
34
35
36
37
38 public interface RouteHeaderService {
39
40 public DocumentRouteHeaderValue getRouteHeader(Long routeHeaderId);
41 public DocumentRouteHeaderValue getRouteHeader(Long routeHeaderId, boolean clearCache);
42 public void lockRouteHeader(Long routeHeaderId, boolean wait);
43 public void saveRouteHeader(DocumentRouteHeaderValue routeHeader);
44 public void deleteRouteHeader(DocumentRouteHeaderValue routeHeader);
45 public Long getNextRouteHeaderId();
46 public void validateRouteHeader(DocumentRouteHeaderValue routeHeader);
47 public Collection findPendingByResponsibilityIds(Set responsibilityIds);
48 public Collection findByDocTypeAndAppId(String documentTypeName, String appId);
49
50
51
52
53
54 public void clearRouteHeaderSearchValues(Long routeHeaderId);
55
56
57
58
59
60 public void updateRouteHeaderSearchValues(Long routeHeaderId, List<SearchableAttributeValue> searchAttributes);
61
62
63
64
65 public String getServiceNamespaceByDocumentId(Long documentId);
66
67 public DocumentRouteHeaderValueContent getContent(Long routeHeaderId);
68
69 public boolean hasSearchableAttributeValue(Long documentId, String searchableAttributeKey, String searchableAttributeValue);
70
71 public String getDocumentStatus(Long documentId);
72
73 public String getAppDocId(Long documentId);
74
75
76
77
78
79
80
81
82
83 public List<String> getSearchableAttributeStringValuesByKey(Long documentId, String key);
84
85
86
87
88
89
90
91
92 public List<Timestamp> getSearchableAttributeDateTimeValuesByKey(Long documentId, String key);
93
94
95
96
97
98
99
100
101 public List<BigDecimal> getSearchableAttributeFloatValuesByKey(Long documentId, String key);
102
103
104
105
106
107
108
109
110 public List<Long> getSearchableAttributeLongValuesByKey(Long documentId, String key);
111
112 }