001
014
015 package com.liferay.portal.kernel.search;
016
017 import com.liferay.portal.kernel.util.ArrayUtil;
018
019 import java.io.Serializable;
020
021 import java.util.Locale;
022 import java.util.Map;
023
024
030 public class Field implements Serializable {
031
032 public static final String ASSET_CATEGORY_IDS = "assetCategoryIds";
033
034
037 public static final String ASSET_CATEGORY_NAMES = "assetCategoryNames";
038
039 public static final String ASSET_CATEGORY_TITLES = "assetCategoryTitles";
040
041 public static final String ASSET_TAG_IDS = "assetTagIds";
042
043 public static final String ASSET_TAG_NAMES = "assetTagNames";
044
045 public static final String CATEGORY_ID = "categoryId";
046
047 public static final String CLASS_NAME_ID = "classNameId";
048
049 public static final String CLASS_PK = "classPK";
050
051 public static final String CLASS_TYPE_ID = "classTypeId";
052
053 public static final String COMMENTS = "comments";
054
055 public static final String COMPANY_ID = "companyId";
056
057 public static final String CONTENT = "content";
058
059 public static final String CREATE_DATE = "createDate";
060
061 public static final String DESCRIPTION = "description";
062
063 public static final String ENTRY_CLASS_NAME = "entryClassName";
064
065 public static final String ENTRY_CLASS_PK = "entryClassPK";
066
067 public static final String EXPIRATION_DATE = "expirationDate";
068
069 public static final String FOLDER_ID = "folderId";
070
071 public static final String GROUP_ID = "groupId";
072
073 public static final String GROUP_ROLE_ID = "groupRoleId";
074
075 public static final String HIDDEN = "hidden";
076
077 public static final String KEYWORD_SEARCH = "keywordSearch";
078
079 public static final String[] KEYWORDS = {
080 Field.ASSET_CATEGORY_TITLES, Field.ASSET_TAG_NAMES, Field.COMMENTS,
081 Field.CONTENT, Field.DESCRIPTION, Field.PROPERTIES, Field.TITLE,
082 Field.URL, Field.USER_NAME
083 };
084
085 public static final String LANGUAGE_ID = "languageId";
086
087 public static final String LAYOUT_UUID = "layoutUuid";
088
089
092 public static final String MODIFIED = "modified";
093
094 public static final String MODIFIED_DATE = "modified";
095
096 public static final String NAME = "name";
097
098 public static final String NODE_ID = "nodeId";
099
100 public static final String ORGANIZATION_ID = "organizationId";
101
102 public static final String PORTLET_ID = "portletId";
103
104 public static final String PRIORITY = "priority";
105
106 public static final String PROPERTIES = "properties";
107
108 public static final String PUBLISH_DATE = "publishDate";
109
110 public static final String RATINGS = "ratings";
111
112 public static final String RELATED_ENTRY = "relatedEntry";
113
114 public static final String REMOVED_BY_USER_NAME = "removedByUserName";
115
116 public static final String REMOVED_DATE = "removedDate";
117
118 public static final String ROLE_ID = "roleId";
119
120 public static final String ROOT_ENTRY_CLASS_NAME = "rootEntryClassName";
121
122 public static final String ROOT_ENTRY_CLASS_PK = "rootEntryClassPK";
123
124 public static final String SCOPE_GROUP_ID = "scopeGroupId";
125
126 public static final String SNIPPET = "snippet";
127
128 public static final String SPELL_CHECK_WORD = "spellCheckWord";
129
130 public static final String STAGING_GROUP = "stagingGroup";
131
132 public static final String STATUS = "status";
133
134 public static final String TITLE = "title";
135
136 public static final String TREE_PATH = "treePath";
137
138 public static final String TYPE = "type";
139
140 public static final String UID = "uid";
141
142 public static final String[] UNSCORED_FIELD_NAMES = {
143 Field.ASSET_CATEGORY_IDS, Field.COMPANY_ID, Field.ENTRY_CLASS_NAME,
144 Field.ENTRY_CLASS_PK, Field.FOLDER_ID, Field.GROUP_ID,
145 Field.GROUP_ROLE_ID, Field.PORTLET_ID, Field.ROLE_ID,
146 Field.SCOPE_GROUP_ID, Field.USER_ID
147 };
148
149 public static final String URL = "url";
150
151 public static final String USER_GROUP_ID = "userGroupId";
152
153 public static final String USER_ID = "userId";
154
155 public static final String USER_NAME = "userName";
156
157 public static final String VERSION = "version";
158
159 public static final String VIEW_COUNT = "viewCount";
160
161 public Field(String name, Map<Locale, String> localizedValues) {
162 _name = name;
163 _localizedValues = localizedValues;
164 }
165
166 public Field(String name, String value) {
167 this(name, new String[] {value});
168 }
169
170
173 public Field(String name, String value, boolean tokenized) {
174 this(name, value);
175
176 setTokenized(tokenized);
177 }
178
179 public Field(String name, String[] values) {
180 _name = name;
181 _values = values;
182 }
183
184
187 public Field(String name, String[] values, boolean tokenized) {
188 this(name, values);
189
190 setTokenized(tokenized);
191 }
192
193
196 public Field(String name, String[] values, boolean tokenized, float boost) {
197 this(name, values);
198
199 setBoost(boost);
200 setTokenized(tokenized);
201 }
202
203 public float getBoost() {
204 return _boost;
205 }
206
207 public Map<Locale, String> getLocalizedValues() {
208 return _localizedValues;
209 }
210
211 public String getName() {
212 return _name;
213 }
214
215 public Class<? extends Number> getNumericClass() {
216 return _numericClass;
217 }
218
219 public String getValue() {
220 if (ArrayUtil.isNotEmpty(_values)) {
221 return _values[0];
222 }
223 else {
224 return null;
225 }
226 }
227
228 public String[] getValues() {
229 return _values;
230 }
231
232 public boolean isLocalized() {
233 if (_localizedValues != null) {
234 return true;
235 }
236 else {
237 return false;
238 }
239 }
240
241 public boolean isNumeric() {
242 return _numeric;
243 }
244
245 public boolean isSortable() {
246 return _sortable;
247 }
248
249 public boolean isTokenized() {
250 return _tokenized;
251 }
252
253 public void setBoost(float boost) {
254 _boost = boost;
255 }
256
257 public void setName(String name) {
258 _name = name;
259 }
260
261 public void setNumeric(boolean numeric) {
262 _numeric = numeric;
263 }
264
265 public void setNumericClass(Class<? extends Number> numericClass) {
266 _numericClass = numericClass;
267 }
268
269 public void setSortable(boolean sortable) {
270 _sortable = sortable;
271 }
272
273 public void setTokenized(boolean tokenized) {
274 _tokenized = tokenized;
275 }
276
277 public void setValue(String value) {
278 setValues(new String[] {value});
279 }
280
281 public void setValues(String[] values) {
282 _values = values;
283 }
284
285 private float _boost = 1;
286 private Map<Locale, String> _localizedValues;
287 private String _name;
288 private boolean _numeric;
289 private Class<? extends Number> _numericClass;
290 private boolean _sortable;
291 private boolean _tokenized;
292 private String[] _values;
293
294 }