1 21 22 package org.opensubsystems.core.util; 23 24 import java.util.Comparator ; 25 26 import org.opensubsystems.core.data.BasicDataObject; 27 28 37 public class CreationTimestampIdComparator implements Comparator 38 { 39 41 45 private static Comparator s_instance = new CreationTimestampIdComparator(); 46 47 49 54 public static Comparator getInstance( 55 ) 56 { 57 return s_instance; 58 } 59 60 69 public int compare( 70 Object o1, 71 Object o2 72 ) 73 { 74 long lTimestamp1 = ((BasicDataObject)o1).getCreationTimestamp().getTime(); 75 long lTimestamp2 = ((BasicDataObject)o2).getCreationTimestamp().getTime(); 76 77 if (lTimestamp1 < lTimestamp2) 78 { 79 return -1; 80 } 81 else 82 { 83 if (lTimestamp1 == lTimestamp2) 84 { 85 int iId1 = ((BasicDataObject)o1).getId(); 86 int iId2 = ((BasicDataObject)o2).getId(); 87 88 if (iId1 < iId2) 89 { 90 return -1; 91 } 92 else if (iId1 == iId2) 93 { 94 return 0; 95 } 96 else 97 { 98 return 1; 99 } 100 } 101 else 102 { 103 return 1; 104 } 105 } 106 } 107 } 108 | Popular Tags |