public class ELSupport extends Object
| Modifier and Type | Field and Description |
|---|---|
protected static boolean |
COERCE_NULL_TO_NULL
EL 2.2 by spec.
|
protected static boolean |
COERCE_TO_ZERO |
| Constructor and Description |
|---|
ELSupport() |
| Modifier and Type | Method and Description |
|---|---|
static Boolean |
coerceToBoolean(Object obj,
boolean primitive)
Convert an object to Boolean.
|
static Date |
coerceToDateTime(Object obj,
Class type)
Coerce an object to an instance of java.util.Date
|
static Enum<?> |
coerceToEnum(Object obj,
Class type) |
protected static Number |
coerceToNumber(Number number,
Class<?> type) |
static Number |
coerceToNumber(Object obj,
Class<?> type) |
protected static Number |
coerceToNumber(String val,
Class<?> type) |
static String |
coerceToString(Object obj)
Coerce an object to a string.
|
static Object |
coerceToType(Object obj,
Class<?> type) |
protected static Object |
coerceToTypeForSetValue(Object obj,
Class<?> type) |
static int |
compare(Object obj0,
Object obj1)
Compare two objects, after coercing to the same type if appropriate.
|
static boolean |
equals(Object obj0,
Object obj1)
Compare two objects for equality, after coercing to the same type if appropriate.
|
static boolean |
isBigDecimalOp(Object obj0,
Object obj1) |
static boolean |
isBigIntegerOp(Object obj0,
Object obj1) |
static boolean |
isDateTimeType(Class<?> type) |
static boolean |
isDoubleOp(Object obj0,
Object obj1) |
static boolean |
isLongOp(Object obj0,
Object obj1) |
static boolean |
isStringFloat(String str) |
protected static final boolean COERCE_NULL_TO_NULL
protected static final boolean COERCE_TO_ZERO
public static final int compare(Object obj0, Object obj1) throws ELException
equals(Object, Object) then return 0.
If either object is a BigDecimal, then coerce both to BigDecimal first.
Similarly for Double(Float), BigInteger, and Long(Integer, Char, Short, Byte).
Otherwise, check that the first object is an instance of Comparable, and compare
against the second object. If that is null, return 1, otherwise
return the result of comparing against the second object.
Similarly, if the second object is Comparable, if the first is null, return -1,
else return the result of comparing against the first object.
A null object is considered as:
obj0 - first objectobj1 - second objectELException - if neither object is ComparableClassCastException - if the objects are not mutually comparablepublic static final boolean equals(Object obj0, Object obj1) throws ELException
obj0 - the first objectobj1 - the second objectELException - if one of the coercion failspublic static final Boolean coerceToBoolean(Object obj, boolean primitive) throws ELException
obj - the object to convertprimitive - is the target a primitive in which case coercion to null
is not permittedELException - if object is not Boolean or Stringprotected static final Number coerceToNumber(Number number, Class<?> type) throws ELException
ELExceptionpublic static final Number coerceToNumber(Object obj, Class<?> type) throws ELException
ELExceptionprotected static final Number coerceToNumber(String val, Class<?> type) throws ELException
ELExceptionpublic static final String coerceToString(Object obj)
obj - the object to convertprotected static final Object coerceToTypeForSetValue(Object obj, Class<?> type) throws ELException
ELExceptionpublic static final Object coerceToType(Object obj, Class<?> type) throws ELException
ELExceptionpublic static final boolean isStringFloat(String str)
public static final boolean isDateTimeType(Class<?> type)
public static final Date coerceToDateTime(Object obj, Class type) throws ELException
obj - the object to be converted; must be an instance of java.util.Date or
a number which represents the millisecond since "the epoch" base time, namely January 1, 1970, 00:00:00 GMT.type - the class type which shall be a kind of java.util.Date; e.g. java.sql.Date, java.sql.Time, java.sql.TimestampELExceptionCopyright © 2022. All rights reserved.