001
014
015 package com.liferay.portal.util.comparator;
016
017 import com.liferay.portal.kernel.util.OrderByComparator;
018 import com.liferay.portal.model.User;
019
020
023 public class UserScreenNameComparator extends OrderByComparator {
024
025 public static final String ORDER_BY_ASC = "screenName ASC";
026
027 public static final String ORDER_BY_DESC = "screenName DESC";
028
029 public static final String[] ORDER_BY_FIELDS = {"screenName"};
030
031 public UserScreenNameComparator() {
032 this(false);
033 }
034
035 public UserScreenNameComparator(boolean ascending) {
036 _ascending = ascending;
037 }
038
039 @Override
040 public int compare(Object obj1, Object obj2) {
041 User user1 = (User)obj1;
042 User user2 = (User)obj2;
043
044 int value = user1.getScreenName().compareTo(user2.getScreenName());
045
046 if (_ascending) {
047 return value;
048 }
049 else {
050 return -value;
051 }
052 }
053
054 @Override
055 public String getOrderBy() {
056 if (_ascending) {
057 return ORDER_BY_ASC;
058 }
059 else {
060 return ORDER_BY_DESC;
061 }
062 }
063
064 @Override
065 public String[] getOrderByFields() {
066 return ORDER_BY_FIELDS;
067 }
068
069 @Override
070 public boolean isAscending() {
071 return _ascending;
072 }
073
074 private boolean _ascending;
075
076 }