summaryrefslogtreecommitdiff
path: root/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java
diff options
context:
space:
mode:
Diffstat (limited to 'projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java')
-rw-r--r--projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java35
1 files changed, 20 insertions, 15 deletions
diff --git a/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java b/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java
index 6c88d19..2ce3646 100644
--- a/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java
+++ b/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java
@@ -32,10 +32,11 @@ import java.util.Comparator;
* @version $Revision: 913 $
*/
-public abstract class NSComparator implements Comparator {
- protected static class _NSSelectorComparator extends NSComparator {
+public abstract class NSComparator<T> implements Comparator<T> {
+ protected static class _NSSelectorComparator extends NSComparator<NSSelector> {
- public int compare(Object obj, Object obj1) throws ComparisonException {
+ @Override
+ public int compare(NSSelector obj, NSSelector obj1) throws ComparisonException {
throw new UnsupportedOperationException("Not Yet Implemented");
}
@@ -44,33 +45,36 @@ public abstract class NSComparator implements Comparator {
}
}
- private static class StandInComparator extends NSComparator {
+ private static class StandInComparator<T> extends NSComparator<T> {
public StandInComparator() {
throw new UnsupportedOperationException("Not Yet Implemented");
}
- public int compare(Object obj, Object obj1) throws ComparisonException {
+ @Override
+ public int compare(T obj, T obj1) throws ComparisonException {
throw new UnsupportedOperationException("Not Yet Implemented");
}
}
public static class ComparisonException extends ClassCastException {
+ private static final long serialVersionUID = 8417668044508338674L;
public ComparisonException(String s) {
super(s);
}
}
- public static final NSComparator AscendingStringComparator = new StandInComparator();
- public static final NSComparator DescendingStringComparator = new StandInComparator();
- public static final NSComparator AscendingCaseInsensitiveStringComparator = new StandInComparator();
- public static final NSComparator DescendingCaseInsensitiveStringComparator = new StandInComparator();
- public static final NSComparator AscendingNumberComparator = new StandInComparator();
- public static final NSComparator DescendingNumberComparator = new StandInComparator();
- public static final NSComparator AscendingTimestampComparator = new StandInComparator();
- public static final NSComparator DescendingTimestampComparator = new StandInComparator();
+ public static final NSComparator<String> AscendingStringComparator = new StandInComparator<>();
+ public static final NSComparator<String> DescendingStringComparator = new StandInComparator<>();
+ public static final NSComparator<String> AscendingCaseInsensitiveStringComparator = new StandInComparator<>();
+ public static final NSComparator<String> DescendingCaseInsensitiveStringComparator = new StandInComparator<>();
+ public static final NSComparator<String> AscendingNumberComparator = new StandInComparator<>();
+ public static final NSComparator<String> DescendingNumberComparator = new StandInComparator<>();
+ public static final NSComparator<String> AscendingTimestampComparator = new StandInComparator<>();
+ public static final NSComparator<String> DescendingTimestampComparator = new StandInComparator<>();
+
public static final int OrderedAscending = -1;
public static final int OrderedSame = 0;
public static final int OrderedDescending = 1;
@@ -78,9 +82,10 @@ public abstract class NSComparator implements Comparator {
public NSComparator() {
}
- public abstract int compare(Object obj, Object obj1) throws ClassCastException;
+ @Override
+ public abstract int compare(T obj, T obj1) throws ClassCastException;
- public static int _compareObjects(Comparable comparable, Comparable comparable1) {
+ public static <T> int _compareObjects(Comparable<T> comparable, Comparable<T> comparable1) {
throw new UnsupportedOperationException("Not Yet Implemented");
}