Package Summary  Overview Summary

class:ServiceLoader.Provider [NONE]

  • Type Parameters:
    S - The service type
    All Superinterfaces:
    Supplier<S>
    Enclosing class:
    ServiceLoader<S>

    public static interface ServiceLoader.Provider<S>
    extends Supplier<S>
    Represents a service provider located by ServiceLoader.

    When using a loader's stream() method then the elements are of type Provider. This allows processing to select or filter on the provider class without instantiating the provider.

    Since:
    9

method:type() [NONE]

  • type

    Class<? extends S> type()
    Returns the provider type. There is no guarantee that this type is accessible or that it has a public no-args constructor. The get() method should be used to obtain the provider instance.

    When a module declares that the provider class is created by a provider factory then this method returns the return type of its public static "provider()" method.

    Returns:
    The provider type

method:get() [NONE]

  • get

    S get()
    Returns an instance of the provider.
    Specified by:
    get in interface Supplier<S>
    Returns:
    An instance of the provider.
    Throws:
    ServiceConfigurationError - If the service provider cannot be instantiated, or in the case of a provider factory, the public static "provider()" method returns null or throws an error or exception. The ServiceConfigurationError will carry an appropriate cause where possible.

© 2018 Oracle Corporation and/or its affiliates