public abstract static class ServiceFinder.ServiceIteratorProvider
extends java.lang.Object
The default implementation looks up provider classes from META-INF/services
files, see ServiceFinder.DefaultServiceIteratorProvider
.
This implementation may be overridden by invoking
ServiceFinder.setIteratorProvider(ServiceIteratorProvider)
Constructor and Description |
---|
ServiceIteratorProvider() |
Modifier and Type | Method and 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.
|
public abstract <T> java.util.Iterator<T> createIterator(java.lang.Class<T> service, java.lang.String serviceName, java.lang.ClassLoader loader, boolean ignoreOnClassNotFound)
T
- the type of the service.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 a ClassNotFoundException
.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)
T
- the type of the service.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 a ClassNotFoundException
.Copyright © 2012–2020 Oracle Corporation. All rights reserved.