Added in API level 35

Provider

interface Provider<S : Any!> : Supplier<S>
java.util.ServiceLoader.Provider

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<out S>!

Returns the provider type.

Public methods

get

Added in API level 35
abstract fun get(): S

Returns an instance of the provider.

Return
S An instance of the provider.
Exceptions
java.util.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

Added in API level 35
abstract fun type(): Class<out S>!

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.

Return
Class<out S>! The provider type