001
014
015 package com.liferay.portal.kernel.dao.search;
016
017 import java.util.ArrayList;
018 import java.util.Date;
019 import java.util.HashMap;
020 import java.util.List;
021 import java.util.Map;
022
023 import javax.portlet.PortletURL;
024
025 import javax.servlet.ServletContext;
026 import javax.servlet.http.HttpServletRequest;
027 import javax.servlet.http.HttpServletResponse;
028
029
032 public class ResultRow {
033
034 public ResultRow(Object obj, long primaryKey, int pos) {
035 this(obj, String.valueOf(primaryKey), pos);
036 }
037
038 public ResultRow(Object obj, long primaryKey, int pos, boolean bold) {
039 this(obj, String.valueOf(primaryKey), pos, bold);
040 }
041
042 public ResultRow(Object obj, String primaryKey, int pos) {
043 this(obj, primaryKey, pos, false);
044 }
045
046 public ResultRow(Object obj, String primaryKey, int pos, boolean bold) {
047 this(String.valueOf(pos + 1), obj, primaryKey, pos, bold);
048 }
049
050 public ResultRow(
051 String rowId, Object obj, String primaryKey, int pos, boolean bold) {
052
053 _rowId = rowId;
054 _obj = obj;
055 _primaryKey = primaryKey;
056 _pos = pos;
057 _bold = bold;
058 _searchEntries = new ArrayList<SearchEntry>();
059 }
060
061 public void addButton(int index, String name, String href) {
062 addButton(
063 index, SearchEntry.DEFAULT_ALIGN, SearchEntry.DEFAULT_VALIGN,
064 SearchEntry.DEFAULT_COLSPAN, name, href);
065 }
066
067 public void addButton(
068 int index, String align, String valign, int colspan, String name,
069 String href) {
070
071 if (_restricted) {
072 href = null;
073 }
074
075 ButtonSearchEntry buttonSearchEntry = new ButtonSearchEntry();
076
077 buttonSearchEntry.setAlign(align);
078 buttonSearchEntry.setColspan(colspan);
079 buttonSearchEntry.setHref(href);
080 buttonSearchEntry.setName(name);
081 buttonSearchEntry.setValign(valign);
082
083 _searchEntries.add(index, buttonSearchEntry);
084 }
085
086 public void addButton(String name, String href) {
087 addButton(_searchEntries.size(), name, href);
088 }
089
090 public void addButton(
091 String align, String valign, int colspan, String name, String href) {
092
093 addButton(_searchEntries.size(), align, valign, colspan, name, href);
094 }
095
096 public void addButton(
097 String align, String valign, String name, String href) {
098
099 addButton(
100 _searchEntries.size(), align, valign, SearchEntry.DEFAULT_COLSPAN,
101 name, href);
102 }
103
104 public void addDate(Date date) {
105 addDate(_searchEntries.size(), date, null);
106 }
107
108 public void addDate(Date date, PortletURL portletURL) {
109 if (portletURL != null) {
110 addDate(_searchEntries.size(), date, portletURL.toString());
111 }
112 else {
113 addDate(_searchEntries.size(), date, null);
114 }
115 }
116
117 public void addDate(Date date, String href) {
118 addDate(_searchEntries.size(), date, null);
119 }
120
121 public void addDate(int index, Date date, String href) {
122
123 DateSearchEntry dateSearchEntry = new DateSearchEntry();
124
125 dateSearchEntry.setAlign(SearchEntry.DEFAULT_ALIGN);
126 dateSearchEntry.setColspan(SearchEntry.DEFAULT_COLSPAN);
127 dateSearchEntry.setDate(date);
128 dateSearchEntry.setHref(href);
129 dateSearchEntry.setValign(SearchEntry.DEFAULT_VALIGN);
130
131 _searchEntries.add(index, dateSearchEntry);
132 }
133
134 public void addJSP(int index, String path) {
135 addJSP(
136 index, SearchEntry.DEFAULT_ALIGN, SearchEntry.DEFAULT_VALIGN,
137 SearchEntry.DEFAULT_COLSPAN, path);
138 }
139
140 public void addJSP(
141 int index, String path, ServletContext servletContext,
142 HttpServletRequest request, HttpServletResponse response) {
143
144 addJSP(
145 index, SearchEntry.DEFAULT_ALIGN, SearchEntry.DEFAULT_VALIGN,
146 SearchEntry.DEFAULT_COLSPAN, path, servletContext, request,
147 response);
148 }
149
150 public void addJSP(
151 int index, String align, String valign, int colspan, String path) {
152
153 JSPSearchEntry jspSearchEntry = new JSPSearchEntry();
154
155 jspSearchEntry.setAlign(align);
156 jspSearchEntry.setColspan(colspan);
157 jspSearchEntry.setPath(path);
158 jspSearchEntry.setValign(valign);
159
160 _searchEntries.add(index, jspSearchEntry);
161 }
162
163 public void addJSP(
164 int index, String align, String valign, int colspan, String path,
165 ServletContext servletContext, HttpServletRequest request,
166 HttpServletResponse response) {
167
168 JSPSearchEntry jspSearchEntry = new JSPSearchEntry();
169
170 jspSearchEntry.setAlign(align);
171 jspSearchEntry.setColspan(colspan);
172 jspSearchEntry.setPath(path);
173 jspSearchEntry.setRequest(request);
174 jspSearchEntry.setResponse(response);
175 jspSearchEntry.setServletContext(servletContext);
176 jspSearchEntry.setValign(valign);
177
178 _searchEntries.add(index, jspSearchEntry);
179 }
180
181 public void addJSP(String path) {
182 addJSP(_searchEntries.size(), path);
183 }
184
185 public void addJSP(
186 String path, ServletContext servletContext, HttpServletRequest request,
187 HttpServletResponse response) {
188
189 addJSP(_searchEntries.size(), path, servletContext, request, response);
190 }
191
192 public void addJSP(String align, String valign, int colspan, String path) {
193 addJSP(_searchEntries.size(), align, valign, colspan, path);
194 }
195
196 public void addJSP(
197 String align, String valign, int colspan, String path,
198 ServletContext servletContext, HttpServletRequest request,
199 HttpServletResponse response) {
200
201 addJSP(
202 _searchEntries.size(), align, valign, colspan, path, servletContext,
203 request, response);
204 }
205
206 public void addJSP(String align, String valign, String path) {
207 addJSP(
208 _searchEntries.size(), align, valign, SearchEntry.DEFAULT_COLSPAN,
209 path);
210 }
211
212 public void addJSP(
213 String align, String valign, String path, ServletContext servletContext,
214 HttpServletRequest request, HttpServletResponse response) {
215
216 addJSP(
217 _searchEntries.size(), align, valign, SearchEntry.DEFAULT_COLSPAN,
218 path, servletContext, request, response);
219 }
220
221 public void addSearchEntry(int index, SearchEntry searchEntry) {
222 _searchEntries.add(index, searchEntry);
223 }
224
225 public void addSearchEntry(SearchEntry searchEntry) {
226 _searchEntries.add(searchEntry);
227 }
228
229 public void addStatus(int status) {
230 addStatus(_searchEntries.size(), status, 0, null, null);
231 }
232
233 public void addStatus(
234 int index, int status, long statusByUserId, Date statusDate,
235 String href) {
236
237 StatusSearchEntry statusSearchEntry = new StatusSearchEntry();
238
239 statusSearchEntry.setAlign(SearchEntry.DEFAULT_ALIGN);
240 statusSearchEntry.setColspan(SearchEntry.DEFAULT_COLSPAN);
241 statusSearchEntry.setHref(href);
242 statusSearchEntry.setStatus(status);
243 statusSearchEntry.setStatusDate(statusDate);
244 statusSearchEntry.setStatusByUserId(statusByUserId);
245 statusSearchEntry.setValign(SearchEntry.DEFAULT_VALIGN);
246
247 _searchEntries.add(index, statusSearchEntry);
248 }
249
250 public void addStatus(
251 int index, int status, String href, ServletContext servletContext,
252 HttpServletRequest request, HttpServletResponse response) {
253
254 StatusSearchEntry statusSearchEntry = new StatusSearchEntry();
255
256 statusSearchEntry.setAlign(SearchEntry.DEFAULT_ALIGN);
257 statusSearchEntry.setColspan(SearchEntry.DEFAULT_COLSPAN);
258 statusSearchEntry.setHref(href);
259 statusSearchEntry.setRequest(request);
260 statusSearchEntry.setResponse(response);
261 statusSearchEntry.setServletContext(servletContext);
262 statusSearchEntry.setStatus(status);
263 statusSearchEntry.setValign(SearchEntry.DEFAULT_VALIGN);
264
265 _searchEntries.add(index, statusSearchEntry);
266 }
267
268 public void addStatus(int status, long statusByUserId, Date statusDate) {
269 addStatus(
270 _searchEntries.size(), status, statusByUserId, statusDate, null);
271 }
272
273 public void addStatus(
274 int status, long statusByUserId, Date statusDate,
275 PortletURL portletURL) {
276
277 if (portletURL != null) {
278 addStatus(
279 _searchEntries.size(), status, statusByUserId, statusDate,
280 portletURL.toString());
281 }
282 else {
283 addStatus(
284 _searchEntries.size(), status, statusByUserId, statusDate,
285 null);
286 }
287 }
288
289 public void addStatus(
290 int status, long statusByUserId, Date statusDate, String href) {
291
292 addStatus(
293 _searchEntries.size(), status, statusByUserId, statusDate, href);
294 }
295
296 public void addStatus(int status, PortletURL portletURL) {
297 if (portletURL != null) {
298 addStatus(
299 _searchEntries.size(), status, 0, null, portletURL.toString());
300 }
301 else {
302 addStatus(_searchEntries.size(), status, 0, null, null);
303 }
304 }
305
306 public void addStatus(int status, String href) {
307 addStatus(_searchEntries.size(), status, 0, null, href);
308 }
309
310 public void addText(int index, String name) {
311 addText(
312 index, SearchEntry.DEFAULT_ALIGN, SearchEntry.DEFAULT_VALIGN,
313 SearchEntry.DEFAULT_COLSPAN, name);
314 }
315
316 public void addText(int index, String name, PortletURL portletURL) {
317 if (portletURL == null) {
318 addText(index, name);
319 }
320 else {
321 addText(index, name, portletURL.toString());
322 }
323 }
324
325 public void addText(int index, String name, String href) {
326 addText(
327 index, SearchEntry.DEFAULT_ALIGN, SearchEntry.DEFAULT_VALIGN,
328 SearchEntry.DEFAULT_COLSPAN, name, href);
329 }
330
331 public void addText(
332 int index, String align, String valign, int colspan, String name) {
333
334 TextSearchEntry textSearchEntry = new TextSearchEntry();
335
336 textSearchEntry.setAlign(align);
337 textSearchEntry.setColspan(colspan);
338 textSearchEntry.setName(name);
339 textSearchEntry.setValign(valign);
340
341 _searchEntries.add(index, textSearchEntry);
342 }
343
344 public void addText(
345 int index, String align, String valign, int colspan, String name,
346 PortletURL portletURL) {
347
348 if (portletURL == null) {
349 addText(index, align, valign, colspan, name);
350 }
351 else {
352 addText(index, align, valign, colspan, name, portletURL.toString());
353 }
354 }
355
356 public void addText(
357 int index, String align, String valign, int colspan, String name,
358 String href) {
359
360 if (_restricted) {
361 href = null;
362 }
363
364 TextSearchEntry textSearchEntry = new TextSearchEntry();
365
366 textSearchEntry.setAlign(align);
367 textSearchEntry.setColspan(colspan);
368 textSearchEntry.setHref(href);
369 textSearchEntry.setName(name);
370 textSearchEntry.setValign(valign);
371
372 _searchEntries.add(index, textSearchEntry);
373 }
374
375 public void addText(int index, TextSearchEntry searchEntry) {
376 if (_restricted) {
377 searchEntry.setHref(null);
378 }
379
380 _searchEntries.add(index, searchEntry);
381 }
382
383 public void addText(String name) {
384 addText(_searchEntries.size(), name);
385 }
386
387 public void addText(String name, PortletURL portletURL) {
388 if (portletURL == null) {
389 addText(name);
390 }
391 else {
392 addText(name, portletURL.toString());
393 }
394 }
395
396 public void addText(String name, String href) {
397 addText(_searchEntries.size(), name, href);
398 }
399
400 public void addText(String align, String valign, int colspan, String name) {
401 addText(_searchEntries.size(), align, valign, colspan, name);
402 }
403
404 public void addText(
405 String align, String valign, int colspan, String name,
406 PortletURL portletURL) {
407
408 if (portletURL == null) {
409 addText(align, valign, colspan, name);
410 }
411 else {
412 addText(align, valign, colspan, name, portletURL.toString());
413 }
414 }
415
416 public void addText(
417 String align, String valign, int colspan, String name, String href) {
418
419 addText(_searchEntries.size(), align, valign, colspan, name, href);
420 }
421
422 public void addText(String align, String valign, String name) {
423 addText(
424 _searchEntries.size(), align, valign, SearchEntry.DEFAULT_COLSPAN,
425 name);
426 }
427
428 public void addText(
429 String align, String valign, String name, PortletURL portletURL) {
430
431 addText(align, valign, SearchEntry.DEFAULT_COLSPAN, name, portletURL);
432 }
433
434 public void addText(String align, String valign, String name, String href) {
435 addText(
436 _searchEntries.size(), align, valign, SearchEntry.DEFAULT_COLSPAN,
437 name, href);
438 }
439
440 public void addText(TextSearchEntry searchEntry) {
441 if (_restricted) {
442 searchEntry.setHref(null);
443 }
444
445 _searchEntries.add(_searchEntries.size(), searchEntry);
446 }
447
448 public String getClassHoverName() {
449 return _classHoverName;
450 }
451
452 public String getClassName() {
453 return _className;
454 }
455
456 public Map<String, Object> getData() {
457 return _data;
458 }
459
460 public List<SearchEntry> getEntries() {
461 return _searchEntries;
462 }
463
464 public Object getObject() {
465 return _obj;
466 }
467
468 public Object getParameter(String param) {
469 if (_params == null) {
470 _params = new HashMap<String, Object>();
471 }
472
473 return _params.get(param);
474 }
475
476 public int getPos() {
477 return _pos;
478 }
479
480 public String getPrimaryKey() {
481 return _primaryKey;
482 }
483
484 public String getRowId() {
485 return _rowId;
486 }
487
488 public boolean isBold() {
489 return _bold;
490 }
491
492 public boolean isRestricted() {
493 return _restricted;
494 }
495
496 public boolean isSkip() {
497 return _skip;
498 }
499
500 public void removeSearchEntry(int pos) {
501 _searchEntries.remove(pos);
502 }
503
504 public void setBold(boolean bold) {
505 _bold = bold;
506 }
507
508 public void setClassHoverName(String classHoverName) {
509 _classHoverName = classHoverName;
510 }
511
512 public void setClassName(String className) {
513 _className = className;
514 }
515
516 public void setData(Map<String, Object> data) {
517 _data = data;
518 }
519
520 public void setObject(Object obj) {
521 _obj = obj;
522 }
523
524 public void setParameter(String param, Object value) {
525 if (_params == null) {
526 _params = new HashMap<String, Object>();
527 }
528
529 _params.put(param, value);
530 }
531
532 public void setPrimaryKey(String primaryKey) {
533 _primaryKey = primaryKey;
534 }
535
536 public void setRestricted(boolean restricted) {
537 _restricted = restricted;
538 }
539
540 public void setRowId(String rowId) {
541 _rowId = rowId;
542 }
543
544 public void setSkip(boolean skip) {
545 _skip = skip;
546 }
547
548 private boolean _bold;
549 private String _classHoverName;
550 private String _className;
551 private Map<String, Object> _data;
552 private Object _obj;
553 private Map<String, Object> _params;
554 private int _pos;
555 private String _primaryKey;
556 private boolean _restricted;
557 private String _rowId;
558 private List<SearchEntry> _searchEntries;
559 private boolean _skip;
560
561 }