1
14
15 package com.liferay.portal.kernel.workflow.comparator;
16
17 import com.liferay.portal.kernel.util.OrderByComparator;
18 import com.liferay.portal.kernel.workflow.WorkflowTask;
19
20
25 public class WorkflowTaskNameComparator extends OrderByComparator {
26
27 public static String ORDER_BY_ASC = "name ASC, workflowTaskId ASC";
28
29 public static String ORDER_BY_DESC = "name DESC, workflowTaskId DESC";
30
31 public static String[] ORDER_BY_FIELDS = {"name", "workflowTaskId"};
32
33 public WorkflowTaskNameComparator() {
34 this(false);
35 }
36
37 public WorkflowTaskNameComparator(boolean asc) {
38 _asc = asc;
39 }
40
41 public int compare(Object obj1, Object obj2) {
42 WorkflowTask workflowTask1 = (WorkflowTask)obj1;
43 WorkflowTask workflowTask2 = (WorkflowTask)obj2;
44
45 String name1 = workflowTask1.getName();
46 String name2 = workflowTask2.getName();
47
48 int value = name1.compareTo(name2);
49
50 if (value == 0) {
51 Long workflowTaskId1 = workflowTask1.getWorkflowTaskId();
52 Long workflowTaskId2 = workflowTask2.getWorkflowTaskId();
53
54 value = workflowTaskId1.compareTo(workflowTaskId2);
55 }
56
57 if (_asc) {
58 return value;
59 }
60 else {
61 return -value;
62 }
63 }
64
65 public String getOrderBy() {
66 if (_asc) {
67 return ORDER_BY_ASC;
68 }
69 else {
70 return ORDER_BY_DESC;
71 }
72 }
73
74 public String[] getOrderByFields() {
75 return ORDER_BY_FIELDS;
76 }
77
78 public boolean isAscending() {
79 return _asc;
80 }
81
82 private boolean _asc;
83
84 }