Interface ITypeConverterRegistry

All Known Implementing Classes:
TypeConverterRegistry

public interface ITypeConverterRegistry
Callback interface for registering new type converters.
Author:
Philip Helger
  • Method Details

    • registerTypeConverter

      <SRC, DST> void registerTypeConverter(@Nonnull Class<SRC> aSrcClass, @Nonnull Class<DST> aDstClass, @Nonnull ITypeConverter<SRC,DST> aConverter)
      Register a type converter.
      Type Parameters:
      SRC - Source type
      DST - Destination type
      Parameters:
      aSrcClass - A non-null source class to convert from. Must be an instancable class.
      aDstClass - A non-null destination class to convert to. Must be an instancable class. May not equal the source class.
      aConverter - The convert to use. May not be null.
    • registerTypeConverter

      <DST> void registerTypeConverter(@Nonnull Class<?>[] aSrcClasses, @Nonnull Class<DST> aDstClass, @Nonnull ITypeConverter<?,DST> aConverter)
      Register a type converter.
      Type Parameters:
      DST - Destination type
      Parameters:
      aSrcClasses - A non-null collection of source classes to convert from. Must be an instancable class.
      aDstClass - A non-null destination class to convert to. Must be an instancable class. May not equal the source class.
      aConverter - The convert to use. May not be null.
    • registerTypeConverterRule

      void registerTypeConverterRule(@Nonnull ITypeConverterRule<?,?> aTypeConverterRule)
      Register a flexible type converter rule.
      Parameters:
      aTypeConverterRule - The type converter rule to be registered. May not be null.
    • registerTypeConverterRuleAnySourceFixedDestination

      default <DST> void registerTypeConverterRuleAnySourceFixedDestination(@Nonnull Class<DST> aDstClass, @Nonnull Function<? super Object,? extends DST> aConverter)
    • registerTypeConverterRuleAssignableSourceFixedDestination

      default <SRC, DST> void registerTypeConverterRuleAssignableSourceFixedDestination(@Nonnull Class<SRC> aSrcClass, @Nonnull Class<DST> aDstClass, @Nonnull Function<? super SRC,? extends DST> aConverter)
    • registerTypeConverterRuleFixedSourceAnyDestination

      default <SRC> void registerTypeConverterRuleFixedSourceAnyDestination(@Nonnull Class<SRC> aSrcClass, @Nonnull Function<? super SRC,? extends Object> aInBetweenConverter)
    • registerTypeConverterRuleFixedSourceAssignableDestination

      default <SRC, DST> void registerTypeConverterRuleFixedSourceAssignableDestination(@Nonnull Class<SRC> aSrcClass, @Nonnull Class<DST> aDstClass, @Nonnull Function<? super SRC,? extends DST> aConverter)