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
023 public abstract class BaseWorkflowTaskUserIdComparator
024 extends OrderByComparator {
025
026 public BaseWorkflowTaskUserIdComparator() {
027 this(false);
028 }
029
030 public BaseWorkflowTaskUserIdComparator(boolean ascending) {
031 _ascending = ascending;
032 }
033
034 @Override
035 public int compare(Object obj1, Object obj2) {
036 WorkflowTask workflowTask1 = (WorkflowTask)obj1;
037 WorkflowTask workflowTask2 = (WorkflowTask)obj2;
038
039 Long assigneeUserId1 = workflowTask1.getAssigneeUserId();
040 Long assigneeUserId2 = workflowTask2.getAssigneeUserId();
041
042 int value = assigneeUserId1.compareTo(assigneeUserId2);
043
044 if (value == 0) {
045 Long workflowTaskId1 = workflowTask1.getWorkflowTaskId();
046 Long workflowTaskId2 = workflowTask2.getWorkflowTaskId();
047
048 value = workflowTaskId1.compareTo(workflowTaskId2);
049 }
050
051 if (_ascending) {
052 return value;
053 }
054 else {
055 return -value;
056 }
057 }
058
059 @Override
060 public boolean isAscending() {
061 return _ascending;
062 }
063
064 private boolean _ascending;
065
066 }