Interface ConversionComparator

public interface ConversionComparator

Optional interface to be implemented by GuardingTypeConverterFactory implementers. Language-specific conversions can cause increased overloaded method resolution ambiguity, as many methods can become applicable because of additional conversions. The static way of selecting the "most specific" method will fail more often, because there will be multiple maximally specific method with unrelated signatures. In these cases, language runtimes can be asked to resolve the ambiguity by expressing preferences for one conversion over the other.

Nested Classes

Modifier and Type Interface Description
static class  ConversionComparator.Comparison

Enumeration of possible outcomes of comparing one conversion to another.

Methods

Modifier and Type Method Description
ConversionComparator.Comparison compareConversion​(Class<?> sourceType, Class<?> targetType1, Class<?> targetType2)

Determines which of the two target types is the preferred conversion target from a source type.

Methods

compareConversion

ConversionComparator.Comparison compareConversion(Class<?> sourceType,
                                                  Class<?> targetType1,
                                                  Class<?> targetType2)

Determines which of the two target types is the preferred conversion target from a source type.

Parameters:
sourceType - the source type.
targetType1 - one potential target type
targetType2 - another potential target type.
Returns:
one of Comparison constants that establish which - if any - of the target types is preferred for the conversion.