public final class BackendProviderManager extends Object
ServiceLoader to load a BackendProvider.
By default, it configures ServiceLoader to use the current thread's
context class loader. The BackendProvider is loaded lazily
upon calls to getBackendProvider() or the backend spec loader
getter methods. Use setBackendProviderClassLoader(java.lang.ClassLoader) to specify a
different class loader.
A program can also explicitly set a backend provider using the
setBackendProvider(org.protempa.backend.BackendProvider) method. This will override the
use of ServiceLoader.| Modifier and Type | Method and Description |
|---|---|
static BackendSpecLoader<AlgorithmSourceBackend> |
getAlgorithmSourceBackendSpecLoader() |
static BackendProvider |
getBackendProvider() |
static ClassLoader |
getBackendProviderClassLoader() |
static BackendSpecLoader<DataSourceBackend> |
getDataSourceBackendSpecLoader() |
static BackendSpecLoader<KnowledgeSourceBackend> |
getKnowledgeSourceBackendSpecLoader() |
static boolean |
isBackendProviderClassLoaderSpecified()
Indicates whether
setBackendProviderClassLoader(java.lang.ClassLoader) has been
called. |
static void |
setBackendProvider(BackendProvider backendProvider) |
static void |
setBackendProviderClassLoader(ClassLoader loader)
Sets the class loader to use for loading a
BackendProvider. |
public static void setBackendProviderClassLoader(ClassLoader loader)
BackendProvider. If
never called, the current thread's context class loader will be used.
If set to null, the system class loader (or, failing that,
the bootstrap class loader) will be used.loader - public static ClassLoader getBackendProviderClassLoader()
public static boolean isBackendProviderClassLoaderSpecified()
setBackendProviderClassLoader(java.lang.ClassLoader) has been
called.setBackendProviderClassLoader(java.lang.ClassLoader) has been called.public static void setBackendProvider(BackendProvider backendProvider)
public static BackendProvider getBackendProvider()
public static BackendSpecLoader<DataSourceBackend> getDataSourceBackendSpecLoader() throws BackendProviderSpecLoaderException
public static BackendSpecLoader<KnowledgeSourceBackend> getKnowledgeSourceBackendSpecLoader() throws BackendProviderSpecLoaderException
public static BackendSpecLoader<AlgorithmSourceBackend> getAlgorithmSourceBackendSpecLoader() throws BackendProviderSpecLoaderException
Copyright © 2012–2018 Emory University. All rights reserved.