Class ParametersExtractors

java.lang.Object
dev.orne.test.rnd.params.ParametersExtractors

@API(status=EXPERIMENTAL, since="0.1") public final class ParametersExtractors extends Object
Registry of generation parameters source extractors.

Registers extractors declared in /META-INF/services/dev.orne.test.rnd.params.ParametersSourceExtractor SPI files in the class path.

Since:
0.1
Version:
1.0, 2022-11
Author:
(w) Iker Hernaez
  • Field Details

  • Method Details

    • getRegisteredSourceExtractors

      @NotNull public static @NotNull List<ParametersSourceExtractor<?,?>> getRegisteredSourceExtractors()
      Returns an unmodifiable list with the registered parameter source extractors.
      Returns:
      The registered parameter source extractors
    • register

      public static void register(@NotNull @NotNull ParametersSourceExtractor<?,?>... extractors)
      Adds the specified parameter source extractors to the registered extractors.
      Parameters:
      extractors - The parameter source extractors to register
    • register

      public static void register(@NotNull @NotNull Collection<ParametersSourceExtractor<?,?>> extractors)
      Adds the specified parameter source extractors to the registered extractors.
      Parameters:
      extractors - The parameter source extractors to register
    • remove

      public static void remove(@NotNull @NotNull ParametersSourceExtractor<?,?>... extractors)
      Removes the specified parameter source extractors from the registered extractors.
      Parameters:
      extractors - The parameter source extractors to remove
    • remove

      public static void remove(@NotNull @NotNull Collection<ParametersSourceExtractor<?,?>> extractors)
      Removes the specified parameter source extractors from the registered extractors.
      Parameters:
      extractors - The parameter source extractors to remove
    • reset

      public static void reset()
      Resets the loaded and cached extractors. Next call will regenerate the parameter source extractors list (including SPI extractor) and restart parameter extractors caching.
    • getExtractor

      public static <P> ParametersExtractor<P> getExtractor(@NotNull @NotNull Class<P> parametersType)
      Returns a generation parameters extractor for the specified parameters type.

      The extractor will contain all parameter source extractors suitable for the given parameters type.

      Type Parameters:
      P - The target parameters type
      Parameters:
      parametersType - The target parameters type
      Returns:
      The parameters extractor for the target parameters type
    • getFilter

      @NotNull public static @NotNull ParametersExtractors.SourceExtractorFilter getFilter()
      Returns the generation parameters source extractors filter.
      Returns:
      The generation parameters source extractors filter
    • setFilter

      public static void setFilter(@NotNull @NotNull ParametersExtractors.SourceExtractorFilter filter)
      Sets the generation parameters source extractors filter.
      Parameters:
      filter - The generation parameters source extractors filter
    • getBuilder

      @NotNull public static @NotNull ParametersExtractors.ExtractorBuilder getBuilder()
      Returns the parameters extractor builder.
      Returns:
      The parameters extractor builder
    • setBuilder

      public static void setBuilder(@NotNull @NotNull ParametersExtractors.ExtractorBuilder builder)
      Sets the parameters extractor builder.
      Parameters:
      builder - The parameters extractor builder