1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.kns.service.impl;
17
18 import java.util.Collection;
19
20 import org.kuali.rice.kew.api.KewApiServiceLocator;
21 import org.kuali.rice.kew.api.doctype.DocumentType;
22 import org.kuali.rice.kns.service.TransactionalDocumentDictionaryService;
23 import org.kuali.rice.krad.datadictionary.DataDictionary;
24 import org.kuali.rice.krad.datadictionary.TransactionalDocumentEntry;
25 import org.kuali.rice.krad.document.TransactionalDocument;
26 import org.kuali.rice.krad.rule.BusinessRule;
27 import org.kuali.rice.krad.service.DataDictionaryService;
28
29
30
31
32
33 @Deprecated
34 public class TransactionalDocumentDictionaryServiceImpl implements TransactionalDocumentDictionaryService {
35 private DataDictionaryService dataDictionaryService;
36
37
38
39
40 public Boolean getAllowsCopy(TransactionalDocument document) {
41 Boolean allowsCopy = null;
42
43 TransactionalDocumentEntry entry = getTransactionalDocumentEntry(document);
44 if (entry != null) {
45 allowsCopy = Boolean.valueOf(entry.getAllowsCopy());
46 }
47
48 return allowsCopy;
49 }
50
51
52
53
54 public Class getDocumentClassByName(String documentTypeName) {
55 Class documentClass = null;
56
57 TransactionalDocumentEntry entry = getTransactionalDocumentEntryBydocumentTypeName(documentTypeName);
58 if (entry != null) {
59 documentClass = entry.getDocumentClass();
60 }
61
62 return documentClass;
63 }
64
65
66
67
68 public String getDescription(String transactionalDocumentTypeName) {
69 String description = null;
70
71 DocumentType docType = getDocumentType(transactionalDocumentTypeName);
72 if (docType != null) {
73 description = docType.getDescription();
74 }
75
76 return description;
77 }
78
79
80
81
82 public String getLabel(String transactionalDocumentTypeName) {
83 String label = null;
84
85 DocumentType docType = getDocumentType(transactionalDocumentTypeName);
86 if (docType != null) {
87 label = docType.getLabel();
88 }
89
90 return label;
91 }
92
93
94
95
96 public Class<? extends BusinessRule> getBusinessRulesClass(TransactionalDocument document) {
97 Class<? extends BusinessRule> businessRulesClass = null;
98
99
100 String docTypeName = document.getDocumentHeader().getWorkflowDocument().getDocumentTypeName();
101 TransactionalDocumentEntry entry = getTransactionalDocumentEntryBydocumentTypeName(docTypeName);
102 if (entry != null) {
103 businessRulesClass = entry.getBusinessRulesClass();
104 }
105
106 return businessRulesClass;
107 }
108
109
110
111
112
113
114 public void setDataDictionaryService(DataDictionaryService dataDictionaryService) {
115 this.dataDictionaryService = dataDictionaryService;
116 }
117
118
119
120
121
122
123 public DataDictionary getDataDictionary() {
124 return this.dataDictionaryService.getDataDictionary();
125 }
126
127
128
129
130
131
132
133 protected DocumentType getDocumentType(String documentTypeName) {
134 return KewApiServiceLocator.getDocumentTypeService().getDocumentTypeByName(documentTypeName);
135 }
136
137
138
139
140
141
142
143 private TransactionalDocumentEntry getTransactionalDocumentEntry(TransactionalDocument document) {
144 if (document == null) {
145 throw new IllegalArgumentException("invalid (null) document");
146 }
147
148 TransactionalDocumentEntry entry = (TransactionalDocumentEntry)getDataDictionary().getDocumentEntry(document.getClass().getName());
149
150 return entry;
151 }
152
153
154
155
156
157
158
159 private TransactionalDocumentEntry getTransactionalDocumentEntryBydocumentTypeName(String documentTypeName) {
160 if (documentTypeName == null) {
161 throw new IllegalArgumentException("invalid (null) document type name");
162 }
163
164 TransactionalDocumentEntry entry = (TransactionalDocumentEntry) getDataDictionary().getDocumentEntry(documentTypeName);
165
166 return entry;
167 }
168
169
170
171
172
173
174 public Collection getDefaultExistenceChecks(String docTypeName) {
175 Collection defaultExistenceChecks = null;
176
177 TransactionalDocumentEntry entry = getTransactionalDocumentEntryBydocumentTypeName(docTypeName);
178 if (entry != null) {
179 defaultExistenceChecks = entry.getDefaultExistenceChecks();
180 }
181
182 return defaultExistenceChecks;
183 }
184
185
186
187
188
189
190 public Collection getDefaultExistenceChecks(TransactionalDocument document) {
191 return getDefaultExistenceChecks(getTransactionalDocumentEntry(document).getDocumentTypeName());
192 }
193 }