Class TypedArgumentConverter<S,​T>

  • Type Parameters:
    S - the type of the source argument to convert
    T - the type of the target object to create from the source
    All Implemented Interfaces:
    ArgumentConverter

    @API(status=STABLE,
         since="5.10")
    public abstract class TypedArgumentConverter<S,​T>
    extends java.lang.Object
    implements ArgumentConverter
    TypedArgumentConverter is an abstract base class for ArgumentConverter implementations that always convert objects of a given source type into a given target type.
    Since:
    5.7
    See Also:
    ArgumentConverter, SimpleArgumentConverter
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.Class<S> sourceType  
      private java.lang.Class<T> targetType  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected TypedArgumentConverter​(java.lang.Class<S> sourceType, java.lang.Class<T> targetType)
      Create a new TypedArgumentConverter.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object convert​(java.lang.Object source, org.junit.jupiter.api.extension.ParameterContext context)
      Convert the supplied source object according to the supplied context.
      protected abstract T convert​(S source)
      Convert the supplied source object of type S into an object of type T.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • sourceType

        private final java.lang.Class<S> sourceType
      • targetType

        private final java.lang.Class<T> targetType
    • Constructor Detail

      • TypedArgumentConverter

        protected TypedArgumentConverter​(java.lang.Class<S> sourceType,
                                         java.lang.Class<T> targetType)
        Create a new TypedArgumentConverter.
        Parameters:
        sourceType - the type of the argument to convert; never null
        targetType - the type of the target object to create from the source; never null
    • Method Detail

      • convert

        public final java.lang.Object convert​(java.lang.Object source,
                                              org.junit.jupiter.api.extension.ParameterContext context)
                                       throws ArgumentConversionException
        Description copied from interface: ArgumentConverter
        Convert the supplied source object according to the supplied context.
        Specified by:
        convert in interface ArgumentConverter
        Parameters:
        source - the source object to convert; may be null
        context - the parameter context where the converted object will be used; never null
        Returns:
        the converted object; may be null but only if the target type is a reference type
        Throws:
        ArgumentConversionException - if an error occurs during the conversion
      • convert

        protected abstract T convert​(S source)
                              throws ArgumentConversionException
        Convert the supplied source object of type S into an object of type T.
        Parameters:
        source - the source object to convert; may be null
        Returns:
        the converted object; may be null but only if the target type is a reference type
        Throws:
        ArgumentConversionException - if an error occurs during the conversion