Class DefaultTypeRegistry
- java.lang.Object
-
- org.pentaho.reporting.libraries.formula.typing.DefaultTypeRegistry
-
- All Implemented Interfaces:
TypeRegistry
public class DefaultTypeRegistry extends Object implements TypeRegistry
Creation-Date: 02.11.2006, 12:46:08- Author:
- Thomas Morgner
-
-
Constructor Summary
Constructors Constructor Description DefaultTypeRegistry()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description TypeValuePair
convertTo(Type targetType, TypeValuePair valuePair)
Checks whether the target type would accept the specified value object and value type.
This method is called for auto conversion of function parameters using the conversion type declared by the function metadata.ArrayCallback
convertToArray(Type type, Object value)
Date
convertToDate(Type type1, Object value)
Converts the object of the given type into a date.Boolean
convertToLogical(Type type1, Object value)
Converts the object of the given type into a boolean.Number
convertToNumber(Type sourceType, Object value)
converts the object of the given type into a number.Number
convertToNumber(Type sourceType, Object value, boolean strictTypeChecks)
Converts the object of the given type into a number.NumberSequence
convertToNumberSequence(Type type, Object value, boolean strict)
Converts the given (type,value) pair into a numeric sequence.Sequence
convertToSequence(Type type, Object value)
String
convertToText(Type type1, Object value)
(This conversion is used by the operator implementations.)ExtendedComparator
getComparator(Type type1, Type type2)
Returns an comparator for the given types.Type
guessTypeOfObject(Object o)
void
initialize(org.pentaho.reporting.libraries.base.config.Configuration configuration, FormulaContext formulaContext)
Deprecated.Use the single-argument function instead.void
initialize(FormulaContext formulaContext)
-
-
-
Method Detail
-
getComparator
public ExtendedComparator getComparator(Type type1, Type type2)
Returns an comparator for the given types.- Specified by:
getComparator
in interfaceTypeRegistry
- Parameters:
type1
-type2
-- Returns:
-
convertToNumber
public Number convertToNumber(Type sourceType, Object value) throws EvaluationException
converts the object of the given type into a number. If the object is not convertible, a NumberFormatException is thrown. If the given value is null or not parsable as number, return null.- Specified by:
convertToNumber
in interfaceTypeRegistry
- Parameters:
sourceType
-value
-- Returns:
- Throws:
NumberFormatException
- if the type cannot be represented as number.TypeConversionException
- if the type cannot be represented as number.EvaluationException
-
convertToNumber
public Number convertToNumber(Type sourceType, Object value, boolean strictTypeChecks) throws EvaluationException
Description copied from interface:TypeRegistry
Converts the object of the given type into a number. If the object is not convertible, a NumberFormatException is thrown. (This conversion is used by the operator implementations.)- Specified by:
convertToNumber
in interfaceTypeRegistry
- Returns:
- the value as number or ZERO if the value is unconvertible.
- Throws:
TypeConversionException
- if the type cannot be represented as number.EvaluationException
-
initialize
public void initialize(org.pentaho.reporting.libraries.base.config.Configuration configuration, FormulaContext formulaContext)
Deprecated.Use the single-argument function instead.- Parameters:
configuration
-formulaContext
-
-
initialize
public void initialize(FormulaContext formulaContext)
-
convertToText
public String convertToText(Type type1, Object value) throws EvaluationException
Description copied from interface:TypeRegistry
(This conversion is used by the operator implementations.)- Specified by:
convertToText
in interfaceTypeRegistry
- Returns:
- the value as string or an empty string, if the value given is null.
- Throws:
TypeConversionException
EvaluationException
-
convertToLogical
public Boolean convertToLogical(Type type1, Object value) throws TypeConversionException
Description copied from interface:TypeRegistry
Converts the object of the given type into a boolean.- Specified by:
convertToLogical
in interfaceTypeRegistry
- Returns:
- The value as Boolean or null.
- Throws:
TypeConversionException
-
convertToDate
public Date convertToDate(Type type1, Object value) throws EvaluationException
Description copied from interface:TypeRegistry
Converts the object of the given type into a date.- Specified by:
convertToDate
in interfaceTypeRegistry
- Returns:
- The value as Date or null.
- Throws:
EvaluationException
-
convertToArray
public ArrayCallback convertToArray(Type type, Object value) throws EvaluationException
- Specified by:
convertToArray
in interfaceTypeRegistry
- Throws:
EvaluationException
-
convertToSequence
public Sequence convertToSequence(Type type, Object value) throws EvaluationException
- Specified by:
convertToSequence
in interfaceTypeRegistry
- Throws:
EvaluationException
-
convertToNumberSequence
public NumberSequence convertToNumberSequence(Type type, Object value, boolean strict) throws EvaluationException
Description copied from interface:TypeRegistry
Converts the given (type,value) pair into a numeric sequence. If the flag "strictTypeChecks" is set to true, the value sequence will only evaluate numeric values. A non-strict sequence will treat text as zero and logical values as 0 or 1.- Specified by:
convertToNumberSequence
in interfaceTypeRegistry
- Returns:
- Throws:
TypeConversionException
EvaluationException
-
convertTo
public TypeValuePair convertTo(Type targetType, TypeValuePair valuePair) throws EvaluationException
Checks whether the target type would accept the specified value object and value type.
This method is called for auto conversion of function parameters using the conversion type declared by the function metadata.- Specified by:
convertTo
in interfaceTypeRegistry
- Parameters:
targetType
-valuePair
-- Throws:
EvaluationException
-
guessTypeOfObject
public Type guessTypeOfObject(Object o)
- Specified by:
guessTypeOfObject
in interfaceTypeRegistry
-
-