--- /dev/null
+/**\r
+ * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.\r
+ *\r
+ * Permission is hereby granted, free of charge, to any person obtaining a copy\r
+ * of this software and associated documentation files (the "Software"), to deal\r
+ * in the Software without restriction, including without limitation the rights\r
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r
+ * copies of the Software, and to permit persons to whom the Software is\r
+ * furnished to do so, subject to the following conditions:\r
+ *\r
+ * The above copyright notice and this permission notice shall be included in\r
+ * all copies or substantial portions of the Software.\r
+ *\r
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r
+ * SOFTWARE.\r
+ */\r
+\r
+package com.pentila.entSavoie.utils;\r
+\r
+import com.liferay.portal.kernel.util.OrderByComparator;\r
+import com.liferay.portal.model.User;\r
+import com.liferay.portal.service.UserLocalServiceUtil;\r
+import com.pentila.entSavoie.amis.model.Relationship;\r
+\r
+@SuppressWarnings("serial")\r
+public class AmiLastNameComparator extends OrderByComparator {\r
+\r
+ public static String ORDER_BY_ASC = "User_.lastName ASC, User_.firstName ASC, User_.middleName ASC";\r
+\r
+ public static String ORDER_BY_DESC = "User_.lastName DESC, User_.firstName DESC, User_.middleName DESC";\r
+\r
+ public AmiLastNameComparator() {\r
+ this(false);\r
+ }\r
+\r
+ public AmiLastNameComparator(boolean asc) {\r
+ _asc = asc;\r
+ }\r
+\r
+ public int compare(Object obj1, Object obj2) {\r
+ Relationship rel1 = (Relationship)obj1;\r
+ Relationship rel2 = (Relationship)obj2;\r
+\r
+ User f1;\r
+ User f2;\r
+ int value = 0;\r
+ \r
+ try {\r
+ f1 = UserLocalServiceUtil.getUser(rel1.getFriendId());\r
+ f2 = UserLocalServiceUtil.getUser(rel2.getFriendId());\r
+ \r
+ value = f1.getLastName().compareTo(f2.getLastName());\r
+\r
+ if (value == 0) {\r
+ value = f1.getFirstName().compareTo(f2.getFirstName());\r
+ }\r
+\r
+ if (value == 0) {\r
+ value = f1.getMiddleName().compareTo(f2.getMiddleName());\r
+ }\r
+\r
+ } catch (Exception e) {} \r
+\r
+ if (_asc) {\r
+ return value;\r
+ }\r
+ else {\r
+ return -value;\r
+ }\r
+ }\r
+\r
+ /*public String getOrderBy() {\r
+ if (_asc) {\r
+ return ORDER_BY_ASC;\r
+ }\r
+ else {\r
+ return ORDER_BY_DESC;\r
+ }\r
+ }*/\r
+\r
+ private boolean _asc;\r
+\r
+}
\ No newline at end of file