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