001
014
015 package com.liferay.portlet.backgroundtask.util.comparator;
016
017 import com.liferay.portal.kernel.util.DateUtil;
018 import com.liferay.portal.kernel.util.OrderByComparator;
019 import com.liferay.portal.model.BackgroundTask;
020
021
024 public class BackgroundTaskCompletionDateComparator extends OrderByComparator {
025
026 public static final String ORDER_BY_ASC =
027 "BackgroundTask.completionDate ASC";
028
029 public static final String ORDER_BY_DESC =
030 "BackgroundTask.completionDate DESC";
031
032 public static final String[] ORDER_BY_FIELDS = {"completionDate"};
033
034 public BackgroundTaskCompletionDateComparator() {
035 this(false);
036 }
037
038 public BackgroundTaskCompletionDateComparator(boolean ascending) {
039 _ascending = ascending;
040 }
041
042 @Override
043 public int compare(Object obj1, Object obj2) {
044 BackgroundTask backgroundTask1 = (BackgroundTask)obj1;
045 BackgroundTask backgroundTask2 = (BackgroundTask)obj2;
046
047 int value = DateUtil.compareTo(
048 backgroundTask1.getCompletionDate(),
049 backgroundTask2.getCompletionDate());
050
051 if (_ascending) {
052 return value;
053 }
054 else {
055 return -value;
056 }
057 }
058
059 @Override
060 public String getOrderBy() {
061 if (_ascending) {
062 return ORDER_BY_ASC;
063 }
064 else {
065 return ORDER_BY_DESC;
066 }
067 }
068
069 @Override
070 public String[] getOrderByFields() {
071 return ORDER_BY_FIELDS;
072 }
073
074 @Override
075 public boolean isAscending() {
076 return _ascending;
077 }
078
079 private boolean _ascending;
080
081 }