public class Utilities
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static LikePatternSymbol |
A |
static LikePatternSymbol |
E |
static int |
EQ |
static LikePatternSymbol |
F |
static int |
GT |
static int |
GTE |
static int |
LT |
static int |
LTE |
static LikePatternSymbol |
N |
Constructor and Description |
---|
Utilities() |
Modifier and Type | Method and Description |
---|---|
static int |
compare(java.lang.Object o1,
java.lang.Object o2) |
static java.lang.Object[] |
convertArgs(java.lang.Object[] args,
java.lang.Class[] argTypes) |
static java.lang.String |
formatSignature(java.lang.String name,
java.lang.Class[] ps) |
static double |
getDouble(java.lang.Object o) |
static java.lang.Double |
getDoubleObject(java.lang.Object o) |
static int |
getLastMatch(java.lang.String value,
java.lang.String search,
int start) |
static java.util.List |
getLikePattern(java.lang.String value,
java.lang.String wildcard) |
static void |
getMethods(java.lang.Class c,
java.lang.String name,
int mods,
java.util.List ms) |
static java.lang.Class |
getObjectClass(java.lang.Class c) |
static java.lang.Class |
getPrimitiveClass(java.lang.Class c) |
static boolean |
getResult(boolean v,
boolean n) |
static boolean |
isEquals(java.lang.Object o1,
java.lang.Object o2) |
static boolean |
isGTEquals(java.lang.Object o1,
java.lang.Object o2) |
static boolean |
isLTEquals(java.lang.Object o1,
java.lang.Object o2) |
static boolean |
isNumber(java.lang.Class c) |
static boolean |
isNumber(java.lang.Object o) |
static boolean |
isPrimitiveClass(java.lang.Class c) |
static boolean |
matches(java.lang.Object l,
java.lang.Object r,
boolean ignoreCase,
int type,
boolean not)
This method encapsulates our "matching" mechanism.
|
static boolean |
matchLikePattern(java.util.List p,
java.util.Collection lhs,
boolean not,
boolean ignoreCase) |
static boolean |
matchLikePattern(java.util.List p,
java.lang.Object o,
boolean ignoreCase) |
static boolean |
matchLikePattern(java.util.List p,
java.lang.Object lhs,
boolean not,
boolean ignoreCase) |
static boolean |
matchLikePattern(java.util.List p,
java.lang.String value) |
static boolean |
matchLikePattern(java.util.List p,
java.lang.String value,
boolean not) |
static int |
matchMethodArgs(java.lang.Class[] args,
java.lang.Class[] compArgs) |
static void |
setObjectComparator(java.util.Comparator c) |
static java.lang.String |
stripQuotes(java.lang.String s) |
static java.lang.String |
unescapeString(java.lang.String v) |
public static LikePatternSymbol F
public static LikePatternSymbol A
public static LikePatternSymbol E
public static LikePatternSymbol N
public static final int GT
public static final int GTE
public static final int LT
public static final int LTE
public static final int EQ
public static void setObjectComparator(java.util.Comparator c)
public static java.lang.Class getObjectClass(java.lang.Class c)
public static java.lang.Class getPrimitiveClass(java.lang.Class c)
public static boolean isPrimitiveClass(java.lang.Class c)
public static boolean getResult(boolean v, boolean n)
public static boolean matches(java.lang.Object l, java.lang.Object r, boolean ignoreCase, int type, boolean not)
String.toString()
method of each object. In general this is not a problem
but beware of potential gotchas such as:
SELECT *
FROM MyObject
WHERE 20 >= (SELECT value
FROM myList)
It's tempting to think here that the query will return the correct result, however this is
NOT true because the sub-query will return a List of Lists (with "value" as the single
item in each list of the sub-query results). To make the query above work as expected you
should use:
SELECT *
FROM MyObject
// The value will be returned instead of an enclosing list.
WHERE 20 >= (SELECT [*] value
FROM myList)
l
- The LHS object.r
- The RHS object.ignoreCase
- Whether to ignore the case or not, note: setting this to true
will force a string comparison (the object to compare against will be
converted to a string via: String.toString()
and then "lowered".type
- The type of comparison to make, should be one of:
GT
, GTE
, LT
LTE
, EQ
.not
- Whether the result should be reversed.true
if l matches r given the rules defined by the
other parms, false
otherwise.public static int compare(java.lang.Object o1, java.lang.Object o2)
public static boolean isGTEquals(java.lang.Object o1, java.lang.Object o2)
public static boolean isLTEquals(java.lang.Object o1, java.lang.Object o2)
public static boolean isEquals(java.lang.Object o1, java.lang.Object o2)
public static java.lang.Double getDoubleObject(java.lang.Object o)
public static double getDouble(java.lang.Object o)
public static boolean isNumber(java.lang.Object o)
public static boolean isNumber(java.lang.Class c)
public static java.lang.String formatSignature(java.lang.String name, java.lang.Class[] ps)
public static boolean matchLikePattern(java.util.List p, java.lang.Object lhs, boolean not, boolean ignoreCase)
public static boolean matchLikePattern(java.util.List p, java.util.Collection lhs, boolean not, boolean ignoreCase)
public static boolean matchLikePattern(java.util.List p, java.lang.Object o, boolean ignoreCase)
public static int getLastMatch(java.lang.String value, java.lang.String search, int start)
public static boolean matchLikePattern(java.util.List p, java.lang.String value)
public static boolean matchLikePattern(java.util.List p, java.lang.String value, boolean not)
public static java.util.List getLikePattern(java.lang.String value, java.lang.String wildcard)
public static java.lang.String stripQuotes(java.lang.String s)
public static void getMethods(java.lang.Class c, java.lang.String name, int mods, java.util.List ms)
public static int matchMethodArgs(java.lang.Class[] args, java.lang.Class[] compArgs)
public static java.lang.Object[] convertArgs(java.lang.Object[] args, java.lang.Class[] argTypes)
public static java.lang.String unescapeString(java.lang.String v)