1 40 package com.ivata.groupware.navigation.menu.item; 41 42 import java.util.Comparator ; 43 44 52 53 public class MenuItemComparator implements Comparator { 54 63 public int compare(Object item0Object, Object item1Object) { 64 MenuItemDO menuItem0 = (MenuItemDO)item0Object; 65 MenuItemDO menuItem1 = (MenuItemDO)item1Object; 66 67 Integer compareNull = compareNull(menuItem0, menuItem1); 69 if (compareNull != null) { 70 return compareNull.intValue(); 71 } 72 73 compareNull = compareNull(menuItem0.getPriority(), 75 menuItem1.getPriority()); 76 if (compareNull != null) { 77 return compareNull.intValue(); 78 } 79 int returnValue = menuItem0.getPriority().compareTo( 80 menuItem1.getPriority()); 81 if (returnValue == 0) { 82 compareNull = compareNull(menuItem0.getId(), 83 menuItem1.getId()); 84 if (compareNull != null) { 85 return compareNull.intValue(); 86 } 87 return menuItem0.getId().compareTo(menuItem1.getId()); 88 } 89 return returnValue; 90 } 91 101 private Integer compareNull(final Object object0, final Object object1) { 102 if (object0 == null) { 103 if ((object1 == null)) { 104 return new Integer (0); 105 } 106 return new Integer (1); 107 } else if (object1 == null) { 108 if ((object0 == null)) { 109 return new Integer (0); 110 } 111 return new Integer (-1); 112 } 113 return null; 114 } 115 } 116 | Popular Tags |