Interface TypeConversionHandler
- All Known Implementing Classes:
TypeConversionHandlerImpl
public interface TypeConversionHandler
A conversion handler adds admissible conversions between Java types whenever Velocity introspection has to map
VTL methods and property accessors to Java methods.
Both methods must be consistent:
getNeededConverter must not return null whenever
isExplicitlyConvertible returned true with the same arguments.- Since:
- 2.1
- Version:
- $Id: ConversionHandler.java $
- Author:
- Claude Brisson
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddConverter(Type formal, Class<?> actual, Converter<?> converter) Add the given converter to the handler.Converter<?> getNeededConverter(Type formal, Class<?> actual) Returns the appropriate Converter object needed for an explicit conversion Returns null if no conversion is needed.booleanisExplicitlyConvertible(Type formal, Class<?> actual, boolean possibleVarArg) Check to see if the conversion can be done using an explicit conversion
-
Method Details
-
isExplicitlyConvertible
Check to see if the conversion can be done using an explicit conversion- Parameters:
formal- expected formal typeactual- provided argument typepossibleVarArg- whether var arg is possible- Returns:
- null if no conversion is needed, or the appropriate Converter object
- Since:
- 2.1
-
getNeededConverter
Returns the appropriate Converter object needed for an explicit conversion Returns null if no conversion is needed.- Parameters:
formal- expected formal typeactual- provided argument type- Returns:
- null if no conversion is needed, or the appropriate Converter object
- Since:
- 2.1
-
addConverter
Add the given converter to the handler. Implementation should be thread-safe.- Parameters:
formal- expected formal typeactual- provided argument typeconverter- converter- Since:
- 2.1
-