1
19
20 package com.liferay.portal.util.comparator;
21
22 import com.liferay.portal.kernel.util.OrderByComparator;
23 import com.liferay.portal.model.Organization;
24
25
31 public class OrganizationTypeComparator extends OrderByComparator {
32
33 public static String ORDER_BY_ASC = "orgLocation ASC, orgName ASC";
34
35 public static String ORDER_BY_DESC = "orgLocation DESC, orgName DESC";
36
37 public OrganizationTypeComparator() {
38 this(false);
39 }
40
41 public OrganizationTypeComparator(boolean asc) {
42 _asc = asc;
43 }
44
45 public int compare(Object obj1, Object obj2) {
46 Organization organization1 = (Organization)obj1;
47 Organization organization2 = (Organization)obj2;
48
49 int value = 0;
50
51 if (organization1.isLocation() && !organization2.isLocation()) {
52 value = 1;
53 }
54 else if (!organization1.isLocation() && organization2.isLocation()) {
55 value = -1;
56 }
57
58 if (value == 0) {
59 value = organization1.getName().compareTo(organization2.getName());
60 }
61
62 if (_asc) {
63 return value;
64 }
65 else {
66 return -value;
67 }
68 }
69
70 public String getOrderBy() {
71 if (_asc) {
72 return ORDER_BY_ASC;
73 }
74 else {
75 return ORDER_BY_DESC;
76 }
77 }
78
79 private boolean _asc;
80
81 }