01: /*
02: * Copyright 2005-2006 The Kuali Foundation.
03: *
04: *
05: * Licensed under the Educational Community License, Version 1.0 (the "License");
06: * you may not use this file except in compliance with the License.
07: * You may obtain a copy of the License at
08: *
09: * http://www.opensource.org/licenses/ecl1.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 edu.iu.uis.eden.docsearch;
18:
19: import java.sql.ResultSet;
20: import java.sql.SQLException;
21: import java.util.Map;
22:
23: import edu.iu.uis.eden.routeheader.DocumentRouteHeaderValue;
24:
25: /**
26: * Model bean mapped to ojb that holds a single piece of searchable data for a document.
27: *
28: * @author bh79
29: * @author delyea
30: *
31: */
32: public interface SearchableAttributeValue {
33:
34: public static final String DISPLAY_FORMAT_PATTERN_MAP_KEY = "displayFormatPattern";
35:
36: public String getAttributeDataType();
37:
38: public String getAttributeTableName();
39:
40: public boolean allowsWildcards();
41:
42: public boolean allowsCaseInsensitivity();
43:
44: public boolean allowsRangeSearches();
45:
46: public boolean isPassesDefaultValidation(String valueEntered);
47:
48: public Boolean isRangeValid(String lowerValue, String upperValue);
49:
50: public void setupAttributeValue(String value);
51:
52: public void setupAttributeValue(ResultSet resultSet,
53: String columnName) throws SQLException;
54:
55: public String getSearchableAttributeDisplayValue();
56:
57: public String getSearchableAttributeDisplayValue(
58: Map<String, String> displayParameters);
59:
60: public String getOjbConcreteClass();
61:
62: public void setOjbConcreteClass(String ojbConcreteClass);
63:
64: public DocumentRouteHeaderValue getRouteHeader();
65:
66: public void setRouteHeader(DocumentRouteHeaderValue routeHeader);
67:
68: public Long getRouteHeaderId();
69:
70: public void setRouteHeaderId(Long routeHeaderId);
71:
72: public String getSearchableAttributeKey();
73:
74: public void setSearchableAttributeKey(String searchableAttributeKey);
75:
76: public Long getSearchableAttributeValueId();
77:
78: public void setSearchableAttributeValueId(
79: Long searchableAttributeValueId);
80:
81: public Object getSearchableAttributeValue();
82: }
|