Interface NamedFactory<T>

    • Method Summary

      Static Methods 
      Modifier and Type Method Description
      static <T> T create​(java.util.Collection<? extends NamedFactory<? extends T>> factories, java.lang.String name)
      Create an instance of the specified name by looking up the needed factory in the list.
      static <E extends NamedResource & OptionalFeature>
      java.util.List<E>
      setUpBuiltinFactories​(boolean ignoreUnsupported, java.util.Collection<? extends E> preferred)
      Filters out unsupported factories from a given list if ignoreUnsupported == true.
      static <S extends OptionalFeature,​E extends NamedResource>
      java.util.List<E>
      setUpTransformedFactories​(boolean ignoreUnsupported, java.util.Collection<? extends S> preferred, java.util.function.Function<? super S,​? extends E> xform)
      Converts a list of factories to a list of transformed factories, optionally excluding unsupported factories.
    • Method Detail

      • create

        static <T> T create​(java.util.Collection<? extends NamedFactory<? extends T>> factories,
                            java.lang.String name)
        Create an instance of the specified name by looking up the needed factory in the list.
        Type Parameters:
        T - type of object to create
        Parameters:
        factories - list of available factories
        name - the factory name to use
        Returns:
        a newly created object or null if the factory is not in the list
      • setUpTransformedFactories

        static <S extends OptionalFeature,​E extends NamedResource> java.util.List<E> setUpTransformedFactories​(boolean ignoreUnsupported,
                                                                                                                     java.util.Collection<? extends S> preferred,
                                                                                                                     java.util.function.Function<? super S,​? extends E> xform)
        Converts a list of factories to a list of transformed factories, optionally excluding unsupported factories.
        Type Parameters:
        S - initial factory type
        E - transformed factory type
        Parameters:
        ignoreUnsupported - whether to filter out unsupported factories from preferred
        preferred - initial list to filter
        xform - the transformation to apply
        Returns:
        the filtered list of transformed factories
      • setUpBuiltinFactories

        static <E extends NamedResource & OptionalFeature> java.util.List<E> setUpBuiltinFactories​(boolean ignoreUnsupported,
                                                                                                   java.util.Collection<? extends E> preferred)
        Filters out unsupported factories from a given list if ignoreUnsupported == true.
        Type Parameters:
        E - factory type
        Parameters:
        ignoreUnsupported - whether to filter out unsupported factories from preferred
        preferred - initial list to filter
        Returns:
        the filtered list of factories