Class ConstructorBasedConverter<T>

  • All Implemented Interfaces:
    Converter<T>

    public final class ConstructorBasedConverter<T>
    extends Object
    implements Converter<T>
    This 'default' converter tries to create objects using a constructor taking a single String argument. Be aware that implementation must also handle the case where the input is null.
    Author:
    Clement Escoffier
    • Method Detail

      • getIfEligible

        public static <T> ConstructorBasedConverter<T> getIfEligible​(Class<T> clazz)
        Checks whether the given class can be used by the ConstructorBasedConverter (i.e. has a constructor taking a single String as argument). If so, creates a new instance of converter for this type.
        Parameters:
        clazz - the class
        Returns:
        a ConstructorBasedConverter if the given class is eligible, null otherwise.
      • fromString

        public T fromString​(String input)
                     throws IllegalArgumentException
        Converts the given input to an object by using the constructor approach. Notice that the constructor must expect receiving a null value.
        Specified by:
        fromString in interface Converter<T>
        Parameters:
        input - the input, can be null
        Returns:
        the instance of T
        Throws:
        IllegalArgumentException - if the instance of T cannot be created from the input.