1
19
20 package com.liferay.portal.util.comparator;
21
22 import com.liferay.portal.kernel.util.OrderByComparator;
23 import com.liferay.portal.model.User;
24
25
31 public class UserLastNameComparator extends OrderByComparator {
32
33 public static String ORDER_BY_ASC =
34 "User_.lastName ASC, User_.firstName ASC, User_.middleName ASC";
35
36 public static String ORDER_BY_DESC =
37 "User_.lastName DESC, User_.firstName DESC, User_.middleName DESC";
38
39 public static String[] ORDER_BY_FIELDS = {
40 "lastName", "firstName", "middleName"
41 };
42
43 public UserLastNameComparator() {
44 this(false);
45 }
46
47 public UserLastNameComparator(boolean asc) {
48 _asc = asc;
49 }
50
51 public int compare(Object obj1, Object obj2) {
52 User user1 = (User)obj1;
53 User user2 = (User)obj2;
54
55 int value = user1.getLastName().compareTo(user2.getLastName());
56
57 if (value == 0) {
58 value = user1.getFirstName().compareTo(user2.getFirstName());
59 }
60
61 if (value == 0) {
62 value = user1.getMiddleName().compareTo(user2.getMiddleName());
63 }
64
65 if (_asc) {
66 return value;
67 }
68 else {
69 return -value;
70 }
71 }
72
73 public String getOrderBy() {
74 if (_asc) {
75 return ORDER_BY_ASC;
76 }
77 else {
78 return ORDER_BY_DESC;
79 }
80 }
81
82 public String[] getOrderByFields() {
83 return ORDER_BY_FIELDS;
84 }
85
86 public boolean isAscending() {
87 return _asc;
88 }
89
90 private boolean _asc;
91
92 }