Interface KotlinCodeGenerationSpi

    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      Integer compareTo(KotlinCodeGenerationSpi<?, ?> other) Compare by order to sort list of SPI instances.
      Boolean test(CONTEXT context, Object input) If true, the spi instance is executed, else ignored.
      abstract String getName() The name that is used when the implementing class is listed in a META-INF/services/ file.
      abstract KClass<out INPUT> getInputType() The type of the generic INPUT, used to filter relevant instances.
      abstract KClass<out CONTEXT> getContextType() The type of the generic CONTEXT, used to filter relevant instances.
      abstract Integer getOrder() Order is used to sort spi instances.
      • Methods inherited from class java.util.function.BiPredicate

        and, negate, or
      • Methods inherited from class java.lang.Object

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

    • Method Detail

      • test

         Boolean test(CONTEXT context, Object input)

        If true, the spi instance is executed, else ignored.

        Parameters:
        context - the context we are operating in
        input - the concrete work item, for the check this is unbound and nullable, so we can check against calling with unsupported types.
        Returns:

        true when the spi shoud be applied.

      • getName

         abstract String getName()

        The name that is used when the implementing class is listed in a META-INF/services/ file. Attention: SPI uses java naming, so inner classes have to be separated by $.

      • getInputType

         abstract KClass<out INPUT> getInputType()

        The type of the generic INPUT, used to filter relevant instances.

      • getOrder

         abstract Integer getOrder()

        Order is used to sort spi instances.