Package org.glassfish.tyrus.core
Class ServiceFinder.ServiceIteratorProvider
- java.lang.Object
-
- org.glassfish.tyrus.core.ServiceFinder.ServiceIteratorProvider
-
- Direct Known Subclasses:
ServiceFinder.DefaultServiceIteratorProvider
- Enclosing class:
- ServiceFinder<T>
public abstract static class ServiceFinder.ServiceIteratorProvider extends java.lang.Object
Supports iteration of provider instances or classes.The default implementation looks up provider classes from META-INF/services files, see
ServiceFinder.DefaultServiceIteratorProvider
. This implementation may be overridden by invokingServiceFinder.setIteratorProvider(ServiceIteratorProvider)
-
-
Constructor Summary
Constructors Constructor Description ServiceIteratorProvider()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract <T> java.util.Iterator<java.lang.Class<T>>
createClassIterator(java.lang.Class<T> service, java.lang.String serviceName, java.lang.ClassLoader loader, boolean ignoreOnClassNotFound)
Iterate over provider classes of a service.abstract <T> java.util.Iterator<T>
createIterator(java.lang.Class<T> service, java.lang.String serviceName, java.lang.ClassLoader loader, boolean ignoreOnClassNotFound)
Iterate over provider instances of a service.
-
-
-
Method Detail
-
createIterator
public abstract <T> java.util.Iterator<T> createIterator(java.lang.Class<T> service, java.lang.String serviceName, java.lang.ClassLoader loader, boolean ignoreOnClassNotFound)
Iterate over provider instances of a service.- Type Parameters:
T
- the type of the service.- Parameters:
service
- the service class.serviceName
- the service name.loader
- the class loader to utilize when loading provider classes.ignoreOnClassNotFound
- if true ignore an instance if the corresponding provider class if cannot be found, otherwise throw aClassNotFoundException
.- Returns:
- the provider instance iterator.
-
createClassIterator
public abstract <T> java.util.Iterator<java.lang.Class<T>> createClassIterator(java.lang.Class<T> service, java.lang.String serviceName, java.lang.ClassLoader loader, boolean ignoreOnClassNotFound)
Iterate over provider classes of a service.- Type Parameters:
T
- the type of the service.- Parameters:
service
- the service class.serviceName
- the service name.loader
- the class loader to utilize when loading provider classes.ignoreOnClassNotFound
- if true ignore the provider class if cannot be found, otherwise throw aClassNotFoundException
.- Returns:
- the provider class iterator.
-
-