001
014
015 package com.liferay.portal.kernel.workflow.comparator;
016
017 import com.liferay.portal.kernel.util.OrderByComparator;
018 import com.liferay.portal.kernel.workflow.WorkflowTask;
019
020 import java.util.Date;
021
022
025 public abstract class BaseWorkflowTaskCreateDateComparator
026 extends OrderByComparator {
027
028 public BaseWorkflowTaskCreateDateComparator() {
029 this(false);
030 }
031
032 public BaseWorkflowTaskCreateDateComparator(boolean ascending) {
033 _ascending = ascending;
034 }
035
036 public int compare(Object obj1, Object obj2) {
037 WorkflowTask workflowTask1 = (WorkflowTask)obj1;
038 WorkflowTask workflowTask2 = (WorkflowTask)obj2;
039
040 Date createDate1 = workflowTask1.getCreateDate();
041 Date createDate2 = workflowTask2.getCreateDate();
042
043 int value = createDate1.compareTo(createDate2);
044
045 if (value == 0) {
046 Long workflowTaskId1 = workflowTask1.getWorkflowTaskId();
047 Long workflowTaskId2 = workflowTask2.getWorkflowTaskId();
048
049 value = workflowTaskId1.compareTo(workflowTaskId2);
050 }
051
052 if (_ascending) {
053 return value;
054 }
055 else {
056 return -value;
057 }
058 }
059
060 public boolean isAscending() {
061 return _ascending;
062 }
063
064 private boolean _ascending;
065
066 }