- 
- 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 byServiceLoader.When using a loader's
stream()method then the elements are of typeProvider. This allows processing to select or filter on the provider class without instantiating the provider.- Since:
 - 9
 
 
- 
- 
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Sget()Returns an instance of the provider.Class<? extends S>type()Returns the provider type. 
 - 
 
- 
- 
Method Detail
- 
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. Theget()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
 
 
- 
get
S get()
Returns an instance of the provider.- Specified by:
 getin interfaceSupplier<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 returnsnullor throws an error or exception. TheServiceConfigurationErrorwill carry an appropriate cause where possible.
 
 - 
 
 -