| Modifier and Type | Method and Description |
|---|---|
static <S> boolean |
isServiceAvailable(Class<S> service)
Check if a specific service is defined and implementation can be loaded.
|
static <S> S |
loadService(Class<S> service,
boolean ensureSingle)
Load and instantiate an implementation for a given service interface.
|
public static <S> S loadService(Class<S> service, boolean ensureSingle) throws ServiceConfigurationError
S - Interface type to instantiateservice - Service interface classensureSingle - Ensure that only one implementation exists. If set and multiple implementations found then a
ServiceConfigurationError is thrown.ServiceConfigurationError - When something goes wrong (in the underlying ServiceLoader, incase no
implementation found, or ensureSingle is true and multiple implementations foundpublic static <S> boolean isServiceAvailable(Class<S> service) throws ServiceConfigurationError
Note that there is no guarantee regarding the successfull instantiation of the service.
S - Interface typeservice - Service interface classServiceConfigurationError - can be thrown by the underlying ServiceLoader.