| java.lang.Object ognl.OgnlOps
OgnlOps | abstract public class OgnlOps implements NumericTypes(Code) | | This is an abstract class with static methods that define the operations of OGNL.
author: Luke Blanshard (blanshlu@netscape.net) author: Drew Davidson (drew@ognl.org) |
Method Summary | |
public static Object | add(Object v1, Object v2) | public static BigDecimal | bigDecValue(Object value) Evaluates the given object as a BigDecimal. | public static BigInteger | bigIntValue(Object value) Evaluates the given object as a BigInteger. | public static Object | binaryAnd(Object v1, Object v2) | public static Object | binaryOr(Object v1, Object v2) | public static Object | binaryXor(Object v1, Object v2) | public static Object | bitNegate(Object value) | public static boolean | booleanValue(Object value) Evaluates the given object as a boolean: if it is a Boolean object, it's easy; if
it's a Number or a Character, returns true for non-zero objects; and otherwise
returns true for non-null objects. | public static int | compareWithConversion(Object v1, Object v2) Compares two objects for equality, even if it has to convert
one of them to the other type. | public static int | compareWithConversion(Object v1, Object v2, boolean equals) Compares two objects for equality, even if it has to convert
one of them to the other type. | public static Object | convertValue(Object value, Class toType) Returns the value converted numerically to the given class type
This method also detects when arrays are being converted and
converts the components of one array to the type of the other. | public static Object | divide(Object v1, Object v2) | public static double | doubleValue(Object value) Evaluates the given object as a double-precision floating-point number. | public static boolean | equal(Object v1, Object v2) | public static int | getNumericType(Object value) Returns a constant from the NumericTypes interface that represents the numeric
type of the given object. | public static int | getNumericType(Object v1, Object v2) Returns the constant from the NumericTypes interface that best expresses the type
of a numeric operation on the two given objects. | public static int | getNumericType(int t1, int t2, boolean canBeNonNumeric) Returns the constant from the NumericTypes interface that best expresses the type
of an operation, which can be either numeric or not, on the two given types. | public static int | getNumericType(Object v1, Object v2, boolean canBeNonNumeric) Returns the constant from the NumericTypes interface that best expresses the type
of an operation, which can be either numeric or not, on the two given objects. | public static boolean | greater(Object v1, Object v2) | public static boolean | in(Object v1, Object v2) | public static boolean | isEqual(Object object1, Object object2) Returns true if object1 is equal to object2 in either the
sense that they are the same object or, if both are non-null
if they are equal in the equals() sense. | public static boolean | less(Object v1, Object v2) | public static long | longValue(Object value) Evaluates the given object as a long integer. | public static Object | multiply(Object v1, Object v2) | public static Object | negate(Object value) | public static Number | newInteger(int type, long value) Returns a new Number object of an appropriate type to hold the given integer
value. | public static Number | newReal(int type, double value) Returns a new Number object of an appropriate type to hold the given real value. | public static Object | remainder(Object v1, Object v2) | public static Object | shiftLeft(Object v1, Object v2) | public static Object | shiftRight(Object v1, Object v2) | public static String | stringValue(Object value, boolean trim) Evaluates the given object as a String and trims it if the trim flag is true. | public static String | stringValue(Object value) Evaluates the given object as a String. | public static Object | subtract(Object v1, Object v2) | public static Object | unsignedShiftRight(Object v1, Object v2) |
bigDecValue | public static BigDecimal bigDecValue(Object value) throws NumberFormatException(Code) | | Evaluates the given object as a BigDecimal.
Parameters: value - an object to interpret as a BigDecimal the BigDecimal value implied by the given object throws: NumberFormatException - if the given object can't be understood as a BigDecimal |
bigIntValue | public static BigInteger bigIntValue(Object value) throws NumberFormatException(Code) | | Evaluates the given object as a BigInteger.
Parameters: value - an object to interpret as a BigInteger the BigInteger value implied by the given object throws: NumberFormatException - if the given object can't be understood as a BigInteger |
booleanValue | public static boolean booleanValue(Object value)(Code) | | Evaluates the given object as a boolean: if it is a Boolean object, it's easy; if
it's a Number or a Character, returns true for non-zero objects; and otherwise
returns true for non-null objects.
Parameters: value - an object to interpret as a boolean the boolean value implied by the given object |
compareWithConversion | public static int compareWithConversion(Object v1, Object v2)(Code) | | Compares two objects for equality, even if it has to convert
one of them to the other type. If both objects are numeric
they are converted to the widest type and compared. If
one is non-numeric and one is numeric the non-numeric is
converted to double and compared to the double numeric
value. If both are non-numeric and Comparable and the
types are compatible (i.e. v1 is of the same or superclass
of v2's type) they are compared with Comparable.compareTo().
If both values are non-numeric and not Comparable or of
incompatible classes this will throw and IllegalArgumentException.
Parameters: v1 - First value to compare Parameters: v2 - second value to compare integer describing the comparison between the two objects.A negative number indicates that v1 < v2. Positive indicatesthat v1 > v2. Zero indicates v1 == v2. throws: IllegalArgumentException - if the objects are both non-numericyet of incompatible types or do not implement Comparable. |
compareWithConversion | public static int compareWithConversion(Object v1, Object v2, boolean equals)(Code) | | Compares two objects for equality, even if it has to convert
one of them to the other type. If both objects are numeric
they are converted to the widest type and compared. If
one is non-numeric and one is numeric the non-numeric is
converted to double and compared to the double numeric
value. If both are non-numeric and Comparable and the
types are compatible (i.e. v1 is of the same or superclass
of v2's type) they are compared with Comparable.compareTo().
If both values are non-numeric and not Comparable or of
incompatible classes this will throw and IllegalArgumentException.
Parameters: v1 - First value to compare Parameters: v2 - second value to compare integer describing the comparison between the two objects.A negative number indicates that v1 < v2. Positive indicatesthat v1 > v2. Zero indicates v1 == v2. throws: IllegalArgumentException - if the objects are both non-numericyet of incompatible types or do not implement Comparable. |
convertValue | public static Object convertValue(Object value, Class toType)(Code) | | Returns the value converted numerically to the given class type
This method also detects when arrays are being converted and
converts the components of one array to the type of the other.
Parameters: value - an object to be converted to the given type Parameters: toType - class type to be converted to converted value of the type given, or value if the valuecannot be converted to the given type. |
doubleValue | public static double doubleValue(Object value) throws NumberFormatException(Code) | | Evaluates the given object as a double-precision floating-point number.
Parameters: value - an object to interpret as a double the double value implied by the given object throws: NumberFormatException - if the given object can't be understood as a double |
getNumericType | public static int getNumericType(Object value)(Code) | | Returns a constant from the NumericTypes interface that represents the numeric
type of the given object.
Parameters: value - an object that needs to be interpreted as a number the appropriate constant from the NumericTypes interface |
getNumericType | public static int getNumericType(Object v1, Object v2)(Code) | | Returns the constant from the NumericTypes interface that best expresses the type
of a numeric operation on the two given objects.
Parameters: v1 - one argument to a numeric operator Parameters: v2 - the other argument the appropriate constant from the NumericTypes interface |
getNumericType | public static int getNumericType(int t1, int t2, boolean canBeNonNumeric)(Code) | | Returns the constant from the NumericTypes interface that best expresses the type
of an operation, which can be either numeric or not, on the two given types.
Parameters: t1 - type of one argument to an operator Parameters: t2 - type of the other argument Parameters: canBeNonNumeric - whether the operator can be interpreted as non-numeric the appropriate constant from the NumericTypes interface |
getNumericType | public static int getNumericType(Object v1, Object v2, boolean canBeNonNumeric)(Code) | | Returns the constant from the NumericTypes interface that best expresses the type
of an operation, which can be either numeric or not, on the two given objects.
Parameters: v1 - one argument to an operator Parameters: v2 - the other argument Parameters: canBeNonNumeric - whether the operator can be interpreted as non-numeric the appropriate constant from the NumericTypes interface |
isEqual | public static boolean isEqual(Object object1, Object object2)(Code) | | Returns true if object1 is equal to object2 in either the
sense that they are the same object or, if both are non-null
if they are equal in the equals() sense.
Parameters: v1 - First object to compare Parameters: v2 - Second object to compare true if v1 == v2 |
longValue | public static long longValue(Object value) throws NumberFormatException(Code) | | Evaluates the given object as a long integer.
Parameters: value - an object to interpret as a long integer the long integer value implied by the given object throws: NumberFormatException - if the given object can't be understood as a long integer |
newInteger | public static Number newInteger(int type, long value)(Code) | | Returns a new Number object of an appropriate type to hold the given integer
value. The type of the returned object is consistent with the given type
argument, which is a constant from the NumericTypes interface.
Parameters: type - the nominal numeric type of the result, a constant from the NumericTypes interface Parameters: value - the integer value to convert to a Number object a Number object with the given value, of type implied by the type argument |
newReal | public static Number newReal(int type, double value)(Code) | | Returns a new Number object of an appropriate type to hold the given real value.
The type of the returned object is always either Float or Double, and is only
Float if the given type tag (a constant from the NumericTypes interface) is
FLOAT.
Parameters: type - the nominal numeric type of the result, a constant from the NumericTypes interface Parameters: value - the real value to convert to a Number object a Number object with the given value, of type implied by the type argument |
stringValue | public static String stringValue(Object value, boolean trim)(Code) | | Evaluates the given object as a String and trims it if the trim flag is true.
Parameters: value - an object to interpret as a String the String value implied by the given object as returned by the toString() method,or "null" if the object is null. |
stringValue | public static String stringValue(Object value)(Code) | | Evaluates the given object as a String.
Parameters: value - an object to interpret as a String the String value implied by the given object as returned by the toString() method,or "null" if the object is null. |
|
|