1 /*
2 * Copyright 2005-2007 The Kuali Foundation
3 *
4 *
5 * Licensed under the Educational Community License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.opensource.org/licenses/ecl2.php
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17 package org.kuali.rice.kew.docsearch.web;
18
19 import org.apache.struts.action.ActionForm;
20 import org.kuali.rice.kns.web.struts.form.KualiForm;
21
22
23 /**
24 * Struts form for document search action
25 *
26 * @author Kuali Rice Team (rice.collab@kuali.org)
27 */
28 public class DocumentSearchForm extends KualiForm {
29 //FIXME: delete this class when doc search is fully moved over
30
31 // private static final long serialVersionUID = 8680419749805107805L;
32 // private static final org.apache.log4j.Logger LOG = org.apache.log4j.Logger.getLogger(DocumentSearchForm.class);
33 //// private DocSearchCriteriaDTO criteria = new DocSearchCriteriaDTO();
34 // private DocumentSearchCriteriaProcessor criteriaProcessor = new StandardDocumentSearchCriteriaProcessor();
35 //
36 // private String searchTarget;
37 // private String searchIdValue;
38 // private String searchLabelValue;
39 // private String backIdPropName;
40 // private String backLabelPropName;
41 // private String backURL;
42 // private String searchAction;
43 // private String action;
44 //
45 // private String returnAction;
46 // private String namedSearch = "";
47 // private String lookupableImplServiceName;
48 // private String conversionFields = "";
49 // private String methodToCall = "";
50 // private String quickFinderLookupable;
51 // private String lookupType;
52 // private List searchableAttributeRows;
53 // private List searchableAttributeColumns;
54 // private List propertyFields;
55 //
56 // private boolean headerBarEnabled = true;
57 // private boolean searchCriteriaEnabled = true;
58 // private boolean initiatorUser = false;
59 // private String searchableAttributes = "";
60 //
61 // public DocumentSearchForm() {
62 // super();
63 // searchableAttributeRows = new ArrayList<DocumentSearchRow>();
64 // searchableAttributeColumns = new ArrayList();
65 // propertyFields = new ArrayList();
66 // }
67 //
68 // public DocumentSearchCriteriaProcessor getCriteriaProcessor() {
69 // return this.criteriaProcessor;
70 // }
71 //
72 // public void setCriteriaProcessor(DocumentSearchCriteriaProcessor criteriaProcessor) {
73 // this.criteriaProcessor = criteriaProcessor;
74 // }
75 //
76 // public DocSearchCriteriaDTO getCriteria() {
77 // if (this.criteriaProcessor == null) {
78 // return null;
79 // }
80 // return this.criteriaProcessor.getDocSearchCriteriaDTO();
81 // }
82 //
83 //// public void setCriteria(DocSearchCriteriaDTO criteria) {
84 //// if (criteria == null) {
85 //// throw new RuntimeException("Criteria should never be null");
86 //// }
87 //// this.criteriaProcessor.setDocSearchCriteriaDTO(criteria);
88 //// }
89 ////
90 // public void setDocTypeFullName(String docTypeFullName) {
91 // getCriteria().setDocTypeFullName(docTypeFullName);
92 // }
93 //
94 // public String getDocTypeFullName() {
95 // return getCriteria().getDocTypeFullName();
96 // }
97 //
98 // public void clearSearchableAttributeProperties() {
99 // searchableAttributeRows = new ArrayList<DocumentSearchRow>();
100 // searchableAttributeColumns = new ArrayList();
101 // propertyFields = new ArrayList();
102 // }
103 //
104 // public void checkForAdditionalFields() {
105 // DocumentType documentType = getDocumentType();
106 // if (documentType != null) {
107 // List<SearchableAttribute> searchableAttributes = documentType.getSearchableAttributes();
108 // // we only want to initialize the searchable attribute fields, rows,
109 // // and columns if this is the first time that they are being
110 // // displayed
111 // // on the form, therefore we check that each of the lists is empty.
112 // // Originally, this code was clearing these lists out on every
113 // // entry to the DocumentSearch screen which would only work in the
114 // // case of a post of the entire form. In the case of lookups, this
115 // // would result in the searchable attribute field values being
116 // // cleared out, this fix resolves EN-122.
117 // if (searchableAttributeRows.isEmpty() && searchableAttributeColumns.isEmpty() && propertyFields.isEmpty()) {
118 // Set alreadyProcessedFieldKeys = new HashSet();
119 // for (SearchableAttribute searchableAttribute : searchableAttributes) {
120 // List<DocumentSearchRow> searchRows = searchableAttribute.getSearchingRows(
121 // DocSearchUtils.getDocumentSearchContext("", documentType.getName(), ""));
122 // if (searchRows == null) {
123 // continue;
124 // }
125 // for (DocumentSearchRow row : searchRows) {
126 // for (org.kuali.rice.kns.web.ui.Field field : row.getFields()) {
127 // DocumentSearchField dsField = (DocumentSearchField)field;
128 // if (!Utilities.isEmpty(dsField.getPropertyName())) {
129 // if (dsField.MULTI_VALUE_FIELD_TYPES.contains(dsField.getFieldType())) {
130 // SearchAttributeFormContainer newFormContainer = new SearchAttributeFormContainer();
131 // newFormContainer.setKey(dsField.getPropertyName());
132 // newFormContainer.setValues(dsField.getPropertyValues());
133 // propertyFields.add(newFormContainer);
134 // } else {
135 // propertyFields.add(new SearchAttributeFormContainer(dsField.getPropertyName(), dsField.getPropertyValue()));
136 // }
137 //
138 // }
139 // // TODO delyea - check this... do we need it still?
140 // if ( (dsField.getSavablePropertyName() == null) || (!alreadyProcessedFieldKeys.contains(dsField.getSavablePropertyName())) ) {
141 // if (dsField.isColumnVisible()) {
142 // for (Iterator iter = dsField.SEARCH_RESULT_DISPLAYABLE_FIELD_TYPES.iterator(); iter.hasNext();) {
143 // String displayableFieldType = (String) iter.next();
144 // if (dsField.getFieldType().equals(displayableFieldType)) {
145 // searchableAttributeColumns.add(new DocumentSearchColumn(field.getFieldLabel(), DocumentSearchColumn.COLUMN_IS_SORTABLE_VALUE, "searchableAttribute(" + dsField.getSavablePropertyName() + ").label"));
146 // if (dsField.getSavablePropertyName() != null) {
147 // alreadyProcessedFieldKeys.add(dsField.getSavablePropertyName());
148 // }
149 // break;
150 // }
151 // }
152 // }
153 // }
154 // }
155 // addSearchableAttributeRow(row);
156 // }
157 // }
158 // // update any potential propertyFields to hold data already in searchable attributes
159 // setupPropertyFieldsUsingCriteria();
160 // } else {
161 // updateSearchableAttributeData(documentType, searchableAttributes);
162 // }
163 // }
164 // }
165 //
166 // /**
167 // * Updates the field valid values since they aren't submitted with the form.
168 // *
169 // */
170 // private void updateSearchableAttributeData(DocumentType documentType, List<SearchableAttribute> searchableAttributes) {
171 // // searchableAttributeRows is a List containing rows from all attributes, so we need to keep a global row count
172 // int totalRowIndex = 0;
173 // for (SearchableAttribute searchableAttribute : searchableAttributes) {
174 // List<DocumentSearchRow> rows = searchableAttribute.getSearchingRows(DocSearchUtils.getDocumentSearchContext("", documentType.getName(), ""));
175 // for (DocumentSearchRow row : rows) {
176 // DocumentSearchRow existingRow = (DocumentSearchRow)getSearchableAttributeRows().get(totalRowIndex++);
177 // int fieldIndex = 0;
178 // for (org.kuali.rice.kns.web.ui.Field field : row.getFields()) {
179 // // get existing field
180 // org.kuali.rice.kns.web.ui.Field existingField = existingRow.getFields().get(fieldIndex++);
181 // // now update the valid values
182 // existingField.setFieldValidValues(field.getFieldValidValues());
183 // }
184 // }
185 // }
186 //
187 // }
188 //
189 // public void addSearchableAttributesToCriteria() {
190 // DocSearchUtils.addSearchableAttributesToCriteria(getCriteria(), propertyFields, getSearchableAttributes());
191 // setSearchableAttributes(null);
192 //// DocumentType docType = getDocumentType();
193 //// if (docType == null) {
194 //// return;
195 //// }
196 //// getCriteria().getSearchableAttributes().clear();
197 //// Map<String,SearchAttributeCriteriaComponent> urlParameterSearchAttributesByFormKey = new HashMap<String,SearchAttributeCriteriaComponent>();
198 //// if (!StringUtils.isBlank(getSearchableAttributes())) {
199 //// List<SearchAttributeCriteriaComponent> components = DocSearchUtils.buildSearchableAttributesFromString(getSearchableAttributes(), docType.getName());
200 //// for (SearchAttributeCriteriaComponent component : components) {
201 //// urlParameterSearchAttributesByFormKey.put(component.getFormKey(), component);
202 //// getCriteria().addSearchableAttribute(component);
203 //// }
204 //// setSearchableAttributes(null);
205 //// }
206 //// if (!propertyFields.isEmpty()) {
207 //// Map criteriaComponentsByFormKey = new HashMap();
208 //// for (SearchableAttribute searchableAttribute : docType.getSearchableAttributes()) {
209 //// for (Row row : searchableAttribute.getSearchingRows()) {
210 //// for (Field field : row.getFields()) {
211 //// SearchableAttributeValue searchableAttributeValue = DocSearchUtils.getSearchableAttributeValueByDataTypeString(field.getFieldDataType());
212 //// SearchAttributeCriteriaComponent sacc = new SearchAttributeCriteriaComponent(field.getPropertyName(),null,field.getSavablePropertyName(),searchableAttributeValue);
213 //// sacc.setRangeSearch(field.isMemberOfRange());
214 //// sacc.setAllowWildcards(field.isAllowingWildcards());
215 //// sacc.setAutoWildcardBeginning(field.isAutoWildcardAtBeginning());
216 //// sacc.setAutoWildcardEnd(field.isAutoWildcardAtEnding());
217 //// sacc.setCaseSensitive(field.isCaseSensitive());
218 //// sacc.setSearchInclusive(field.isInclusive());
219 //// sacc.setLookupableFieldType(field.getFieldType());
220 //// sacc.setSearchable(field.isSearchable());
221 //// sacc.setCanHoldMultipleValues(Field.MULTI_VALUE_FIELD_TYPES.contains(field.getFieldType()));
222 //// criteriaComponentsByFormKey.put(field.getPropertyName(), sacc);
223 //// }
224 //// }
225 //// }
226 //// for (Iterator iterator = propertyFields.iterator(); iterator.hasNext();) {
227 //// SearchAttributeFormContainer propertyField = (SearchAttributeFormContainer) iterator.next();
228 //// SearchAttributeCriteriaComponent sacc = (SearchAttributeCriteriaComponent) criteriaComponentsByFormKey.get(propertyField.getKey());
229 //// if (sacc != null) {
230 //// if (sacc.getSearchableAttributeValue() == null) {
231 //// String errorMsg = "Searchable attribute with form field key " + sacc.getFormKey() + " does not have a valid SearchableAttributeValue";
232 //// LOG.error("addSearchableAttributesToCriteria() " + errorMsg);
233 //// throw new RuntimeException(errorMsg);
234 //// }
235 //// // if the url parameter has already set up the search attribute change the propertyField
236 //// if (urlParameterSearchAttributesByFormKey.containsKey(sacc.getFormKey())) {
237 //// setupPropertyField(urlParameterSearchAttributesByFormKey.get(sacc.getFormKey()));
238 //// } else {
239 //// if ( (Field.CHECKBOX_YES_NO.equals(sacc.getLookupableFieldType())) && (!propertyField.isValueSet()) ) {
240 //// // value was not set on the form so we must use the alternate value which for checkbox is the 'unchecked' value
241 //// sacc.setValue(propertyField.getAlternateValue());
242 //// } else if (Field.MULTI_VALUE_FIELD_TYPES.contains(sacc.getLookupableFieldType())) {
243 //// // set the multivalue lookup indicator
244 //// sacc.setCanHoldMultipleValues(true);
245 //// if (propertyField.getValues() == null) {
246 //// sacc.setValues(new ArrayList<String>());
247 //// } else {
248 //// sacc.setValues(Arrays.asList(propertyField.getValues()));
249 //// }
250 //// } else {
251 //// sacc.setValue(propertyField.getValue());
252 //// }
253 //// getCriteria().addSearchableAttribute(sacc);
254 //// }
255 //// }
256 //// }
257 //// }
258 // }
259 //
260 // public void setupPropertyFieldsUsingCriteria() {
261 // for (Iterator iter = getCriteria().getSearchableAttributes().iterator(); iter.hasNext();) {
262 // SearchAttributeCriteriaComponent searchableAttribute = (SearchAttributeCriteriaComponent) iter.next();
263 // DocSearchUtils.setupPropertyField(searchableAttribute, propertyFields);
264 //// setupPropertyField(searchableAttribute);
265 // }
266 // }
267 //
268 //// public void setupPropertyField(SearchAttributeCriteriaComponent searchableAttribute) {
269 //// SearchAttributeFormContainer propertyField = getPropertyField(searchableAttribute.getFormKey());
270 //// if (propertyField != null) {
271 //// propertyField.setValue(searchableAttribute.getValue());
272 //// if (searchableAttribute.getValues() != null) {
273 //// propertyField.setValues(searchableAttribute.getValues().toArray(new String[searchableAttribute.getValues().size()]));
274 //// }
275 //// }
276 //// }
277 ////
278 // public String getDocTypeDisplayName() {
279 // DocumentType docType = getDocumentType();
280 // if (docType != null) {
281 // return docType.getLabel();
282 // }
283 // return null;
284 // }
285 //
286 // private DocumentType getDocumentType() {
287 // if ( (getCriteria() != null) && (getCriteria().getDocTypeFullName() != null && !"".equals(getCriteria().getDocTypeFullName())) ) {
288 // return ((DocumentTypeService) KEWServiceLocator.getService(KEWServiceLocator.DOCUMENT_TYPE_SERVICE)).findByName(getCriteria().getDocTypeFullName());
289 // }
290 // return null;
291 // }
292 //
293 // public String getRouteLogPopup() {
294 // return new Boolean(Utilities.getKNSParameterBooleanValue(KEWConstants.KEW_NAMESPACE, KNSConstants.DetailTypes.DOCUMENT_SEARCH_DETAIL_TYPE, KEWConstants.DOCUMENT_SEARCH_ROUTE_LOG_POPUP_IND)).toString();
295 // }
296 //
297 // public String getDocumentPopup() {
298 // return new Boolean(Utilities.getKNSParameterBooleanValue(KEWConstants.KEW_NAMESPACE, KNSConstants.DetailTypes.DOCUMENT_SEARCH_DETAIL_TYPE, KEWConstants.DOCUMENT_SEARCH_DOCUMENT_POPUP_IND)).toString();
299 // }
300 //
301 // public void setInitiator(String initiator) {
302 // getCriteria().setInitiator(initiator);
303 // }
304 //
305 // public void setApprover(String approver) {
306 // getCriteria().setApprover(approver);
307 // }
308 //
309 // public void setViewer(String viewer) {
310 // getCriteria().setViewer(viewer);
311 // }
312 //
313 // /*
314 // * the super user search methods used to live here but were moved to the criteria so search
315 // * context could be saved along with search data. I kept these methods here to minimize impact on jsp.
316 // * Feel free to remove this call through methods and modify the jsp.
317 // */
318 // public String getSuperUserSearch() {
319 // return getCriteria().getSuperUserSearch();
320 // }
321 //
322 // public void setSuperUserSearch(String superUserSearch) {
323 // getCriteria().setSuperUserSearch(superUserSearch);
324 // }
325 //
326 // public void setSearchTarget(String searchTarget) {
327 // this.searchTarget = searchTarget;
328 // }
329 //
330 // public String getSearchTarget() {
331 // return searchTarget;
332 // }
333 //
334 // public void setSearchIdValue(String searchIdValue) {
335 // this.searchIdValue = searchIdValue;
336 // }
337 //
338 // public String getSearchIdValue() {
339 // return searchIdValue;
340 // }
341 //
342 // public void setSearchLabelValue(String searchLabelValue) {
343 // this.searchLabelValue = searchLabelValue;
344 // }
345 //
346 // public String getSearchLabelValue() {
347 // return searchLabelValue;
348 // }
349 //
350 // public void setBackIdPropName(String backIdPropName) {
351 // this.backIdPropName = backIdPropName;
352 // }
353 //
354 // public String getBackIdPropName() {
355 // return backIdPropName;
356 // }
357 //
358 // public void setBackLabelPropName(String backLabelPropName) {
359 // this.backLabelPropName = backLabelPropName;
360 // }
361 //
362 // public String getBackLabelPropName() {
363 // return backLabelPropName;
364 // }
365 //
366 // public void setBackURL(String backURL) {
367 // this.backURL = backURL;
368 // }
369 //
370 // public String getBackURL() {
371 // return backURL;
372 // }
373 //
374 // public void setSearchAction(String searchAction) {
375 // this.searchAction = searchAction;
376 // }
377 //
378 // public String getSearchAction() {
379 // return searchAction;
380 // }
381 //
382 // public void setAction(String action) {
383 // this.action = action;
384 // }
385 //
386 // public String getAction() {
387 // return action;
388 // }
389 //
390 // /*
391 // * the IsAdvancedSearch methods used to live here but were moved to the crieteria so search
392 // * context could be saved along with search data. I kept these methods here to minimize impact on jsp.
393 // * Feel free to remove this call through methods and modify the jsp.
394 // */
395 // public String getIsAdvancedSearch() {
396 // return getCriteria().getIsAdvancedSearch();
397 // }
398 //
399 // public void setIsAdvancedSearch(String string) {
400 // getCriteria().setIsAdvancedSearch(string);
401 // }
402 //
403 // public String getReturnAction() {
404 // return returnAction;
405 // }
406 //
407 // public void setReturnAction(String returnAction) {
408 // this.returnAction = returnAction;
409 // }
410 //
411 // public void setFromDateCreated(String fromDateCreated) {
412 // getCriteria().setFromDateCreated(fromDateCreated);
413 // }
414 //
415 // public void setToDateCreated(String toDateCreated) {
416 // getCriteria().setToDateCreated(toDateCreated);
417 // }
418 //
419 // public String getFromDateCreated() {
420 // return getCriteria().getFromDateCreated();
421 // }
422 //
423 // public String getToDateCreated() {
424 // return getCriteria().getToDateCreated();
425 // }
426 //
427 // public void setFromDateLastModified(String fromDateLastModified) {
428 // getCriteria().setFromDateLastModified(fromDateLastModified);
429 // }
430 //
431 // public void setToDateLastModified(String toDateLastModified) {
432 // getCriteria().setToDateLastModified(toDateLastModified);
433 // }
434 //
435 // public String getFromDateLastModified() {
436 // return getCriteria().getFromDateLastModified();
437 // }
438 //
439 // public String getToDateLastModified() {
440 // return getCriteria().getToDateLastModified();
441 // }
442 //
443 // public void setFromDateApproved(String fromDateApproved) {
444 // getCriteria().setFromDateApproved(fromDateApproved);
445 // }
446 //
447 // public void setToDateApproved(String toDateApproved) {
448 // getCriteria().setToDateApproved(toDateApproved);
449 // }
450 //
451 // public String getFromDateApproved() {
452 // return getCriteria().getFromDateApproved();
453 // }
454 //
455 // public String getToDateApproved() {
456 // return getCriteria().getToDateApproved();
457 // }
458 //
459 // public void setFromDateFinalized(String fromDateFinalized) {
460 // getCriteria().setFromDateFinalized(fromDateFinalized);
461 // }
462 //
463 // public void setToDateFinalized(String toDateFinalized) {
464 // getCriteria().setToDateFinalized(toDateFinalized);
465 // }
466 //
467 // public String getFromDateFinalized() {
468 // return getCriteria().getFromDateFinalized();
469 // }
470 //
471 // public String getToDateFinalized() {
472 // return getCriteria().getToDateFinalized();
473 // }
474 //
475 //
476 //
477 // public String getNamedSearch() {
478 // return namedSearch;
479 // }
480 //
481 // public void setNamedSearch(String namedSearch) {
482 // this.namedSearch = namedSearch;
483 // }
484 //
485 // public String getLookupableImplServiceName() {
486 // return lookupableImplServiceName;
487 // }
488 //
489 // public void setLookupableImplServiceName(String lookupableImplServiceName) {
490 // this.lookupableImplServiceName = lookupableImplServiceName;
491 // }
492 //
493 // /**
494 // * @param conversionFields
495 // * The conversionFields to set.
496 // */
497 // public void setConversionFields(String conversionFields) {
498 // this.conversionFields = conversionFields;
499 // }
500 //
501 // /**
502 // * @return Returns the conversionFields.
503 // */
504 // public String getConversionFields() {
505 // return conversionFields;
506 // }
507 //
508 // public String getMethodToCall() {
509 // return methodToCall;
510 // }
511 //
512 // public void setMethodToCall(String methodToCall) {
513 // this.methodToCall = methodToCall;
514 // }
515 //
516 // public String getQuickFinderLookupable() {
517 // return quickFinderLookupable;
518 // }
519 //
520 // public void setQuickFinderLookupable(String quickFinderLookupable) {
521 // this.quickFinderLookupable = quickFinderLookupable;
522 // }
523 //
524 // public String getLookupType() {
525 // return lookupType;
526 // }
527 //
528 // public void setLookupType(String lookupType) {
529 // this.lookupType = lookupType;
530 // }
531 //
532 // public List<DocumentSearchRow> getProcessedSearchableAttributeRows() {
533 // if (isAdvancedSearch()) {
534 // return this.criteriaProcessor.processSearchableAttributeRowsForAdvancedSearch(getSearchableAttributeRows());
535 // } else {
536 // return this.criteriaProcessor.processSearchableAttributeRowsForBasicSearch(getSearchableAttributeRows());
537 // }
538 // }
539 //
540 // public void setSearchableAttributeRows(List searchableAttributeRows) {
541 // this.searchableAttributeRows = searchableAttributeRows;
542 // }
543 //
544 // public List getSearchableAttributeRows() {
545 // return this.searchableAttributeRows;
546 // }
547 //
548 // public void addSearchableAttributeRow(DocumentSearchRow row) {
549 // getSearchableAttributeRows().add(row);
550 // }
551 //
552 // public DocumentSearchRow getSearchableAttributeRow(int index) {
553 // while (getSearchableAttributeRows().size() <= index) {
554 // DocumentSearchRow row = new DocumentSearchRow(new ArrayList<org.kuali.rice.kns.web.ui.Field>());
555 // getSearchableAttributeRows().add(row);
556 // }
557 // return (DocumentSearchRow) getSearchableAttributeRows().get(index);
558 // }
559 //
560 // public void setSearchableAttributeRow(int index, DocumentSearchRow row) {
561 // getSearchableAttributeRows().set(index, row);
562 // }
563 //
564 // /**
565 // * @param searchableAttributeColumns
566 // * The searchableAttributeColumns to set.
567 // */
568 // public void setSearchableAttributeColumns(List searchableAttributeColumns) {
569 // this.searchableAttributeColumns = searchableAttributeColumns;
570 // }
571 //
572 // /**
573 // * @return Returns the searchableAttributeColumns.
574 // */
575 // public List getSearchableAttributeColumns() {
576 // return searchableAttributeColumns;
577 // }
578 //
579 // public void addSearchableAttributeColumn(DocumentSearchColumn column) {
580 // searchableAttributeColumns.add(column);
581 // }
582 //
583 // public DocumentSearchColumn getSearchableAttributeColumn(int index) {
584 // while (getSearchableAttributeColumns().size() <= index) {
585 // DocumentSearchColumn column = new DocumentSearchColumn("", "", "");
586 // getSearchableAttributeColumns().add(column);
587 // }
588 // return (DocumentSearchColumn) getSearchableAttributeColumns().get(index);
589 // }
590 //
591 // public void setSearchableAttributeColumn(int index, DocumentSearchColumn column) {
592 // searchableAttributeColumns.set(index, column);
593 // }
594 //
595 // /**
596 // * @param propertyFields
597 // * The propertyFields to set.
598 // */
599 // public void setPropertyFields(List propertyFields) {
600 // this.propertyFields = propertyFields;
601 // }
602 //
603 // /**
604 // * @return Returns the propertyFields.
605 // */
606 // public List getPropertyFields() {
607 // return propertyFields;
608 // }
609 //
610 // public void addPropertyField(SearchAttributeFormContainer attributeContainer) {
611 // propertyFields.add(attributeContainer);
612 // }
613 //
614 // public SearchAttributeFormContainer getPropertyField(int index) {
615 // while (getPropertyFields().size() <= index) {
616 // SearchAttributeFormContainer attributeContainer = new SearchAttributeFormContainer();
617 // addPropertyField(attributeContainer);
618 // }
619 // return (SearchAttributeFormContainer) getPropertyFields().get(index);
620 // }
621 //
622 // public SearchAttributeFormContainer getPropertyField(String key) {
623 // if (StringUtils.isBlank(key)) {
624 // return null;
625 // }
626 // for (Iterator iter = propertyFields.iterator(); iter.hasNext();) {
627 // SearchAttributeFormContainer container = (SearchAttributeFormContainer) iter.next();
628 // if (key.equals(container.getKey())) {
629 // return container;
630 // }
631 // }
632 // return null;
633 // }
634 //
635 // public void setPropertyField(int index, SearchAttributeFormContainer attributeContainer) {
636 // propertyFields.set(index, attributeContainer);
637 // }
638 //
639 // public boolean isAdvancedSearch() {
640 // return (StringUtils.equals(DocSearchCriteriaDTO.ADVANCED_SEARCH_INDICATOR_STRING,getCriteria().getIsAdvancedSearch()));
641 // }
642 //
643 // public StandardDocSearchCriteriaManager getDocumentSearchCriteriaManager() {
644 // if (isAdvancedSearch()) {
645 // return this.criteriaProcessor.getAdvancedSearchManager();
646 // } else {
647 // return this.criteriaProcessor.getBasicSearchManager();
648 // }
649 // }
650 //
651 // public boolean isHeaderBarEnabled() {
652 // return headerBarEnabled;
653 // }
654 //
655 // public void setHeaderBarEnabled(boolean headerBarEnabled) {
656 // this.headerBarEnabled = headerBarEnabled;
657 // }
658 //
659 // public boolean isSearchCriteriaEnabled() {
660 // return searchCriteriaEnabled;
661 // }
662 //
663 // public void setSearchCriteriaEnabled(boolean searchCriteriaEnabled) {
664 // this.searchCriteriaEnabled = searchCriteriaEnabled;
665 // }
666 //
667 // public boolean isShowSearchCriteria() {
668 // if (!isSearchCriteriaEnabled()) {
669 // return false;
670 // }
671 // if (isAdvancedSearch()) {
672 // return this.criteriaProcessor.isAdvancedSearchCriteriaDisplayed();
673 // } else {
674 // return this.criteriaProcessor.isBasicSearchCriteriaDisplayed();
675 // }
676 // }
677 //
678 // public boolean isShowHeaderBar() {
679 // if (!isHeaderBarEnabled()) {
680 // return false;
681 // }
682 // return this.criteriaProcessor.isHeaderBarDisplayed();
683 // }
684 //
685 // public String getSearchableAttributes() {
686 // return searchableAttributes;
687 // }
688 //
689 // public void setSearchableAttributes(String secureAttributes) {
690 // this.searchableAttributes = secureAttributes;
691 // }
692 //
693 // public boolean isInitiatorUser() {
694 // return initiatorUser;
695 // }
696 //
697 // public void setInitiatorUser(boolean secureInitiatorSearch) {
698 // this.initiatorUser = secureInitiatorSearch;
699 // }
700
701 }