Package javax.persistence.spi
Class PersistenceProviderResolverHolder.PersistenceProviderResolverPerClassLoader.CachingPersistenceProviderResolver
java.lang.Object
javax.persistence.spi.PersistenceProviderResolverHolder.PersistenceProviderResolverPerClassLoader.CachingPersistenceProviderResolver
- All Implemented Interfaces:
PersistenceProviderResolver
private static class PersistenceProviderResolverHolder.PersistenceProviderResolverPerClassLoader.CachingPersistenceProviderResolver
extends Object
implements PersistenceProviderResolver
Resolve the list of Persistence providers for a given classloader and cache the results.
Avoids to keep any reference from this class to the classloader being
passed to the constructor.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Pattern
private final List
<WeakReference<Class<? extends PersistenceProvider>>> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Clear cache of providers.Returns a list of thePersistenceProvider
implementations available in the runtime environment.private void
-
Field Details
-
resolverClasses
-
nonCommentPattern
-
-
Constructor Details
-
CachingPersistenceProviderResolver
-
-
Method Details
-
loadResolverClasses
-
getPersistenceProviders
Returns a list of thePersistenceProvider
implementations available in the runtime environment.- Specified by:
getPersistenceProviders
in interfacePersistenceProviderResolver
- Returns:
- list of the persistence providers available in the environment
-
clearCachedProviders
public void clearCachedProviders()Clear cache of providers.- Specified by:
clearCachedProviders
in interfacePersistenceProviderResolver
-
providerNamesFromReader
- Throws:
IOException
-