ServiceLoader.Provider

public static interface ServiceLoader.Provider
implements Supplier<S>

java.util.ServiceLoader.Provider<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.

Summary

Public methods

abstract S get()

Returns an instance of the provider.

abstract Class<? extends S> type()

Returns the provider type.

Inherited methods

Public methods

get

public abstract S get ()

Returns an instance of the provider.

Returns
S 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.

type

public abstract 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
Class<? extends S> The provider type