summaryrefslogtreecommitdiff
path: root/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java
diff options
context:
space:
mode:
authorBenjamin Culkin <scorpress@gmail.com>2024-07-01 17:27:48 -0400
committerBenjamin Culkin <scorpress@gmail.com>2024-07-01 17:27:48 -0400
commit02bc52037e9ccccca672d6156d9c325c74fe28b3 (patch)
treedb022b83c90562f461f4a27412caa9936a8dfd04 /projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/NSComparator.java
parentc75d7dbd613a47b217499f7a856c469a8bc59e2a (diff)
Update a whole bunch of things
Yeah... not a great commit message. t.b.h, I could maybe've split the commit into more parts; but that would be quite a lot off effort and would have a pretty decent chance of at least one of the commits leaving the repository in a non-working state. For the future, will want to try and commit more often so there aren't these mega-commits where it's just "a whole bunch of stuff changed"
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");
}