public class GroovyRunnerRegistry extends Object implements Map<String,GroovyRunner>, Iterable<GroovyRunner>
GroovyRunner
interface.
This registry makes use of the ServiceLoader
facility. The
preferred method for registering new GroovyRunner
providers
is to place them in a provider-configuration file in the resource
directory META-INF/services
. The preferred method for accessing
the registered runners is by making use of the Iterable
interface using an enhanced for-loop.
For compatibility with previous versions, this registry implements the
Map
interface. All null
keys and values will be ignored
and no exception thrown, except where noted.
By default the registry contains runners that are capable of running
JUnit 3
and JUnit 4
test classes if those libraries
are available to the class loader.
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clears all registered runners from the registry and resets
the registry so that it contains only the default set of
runners.
|
boolean |
containsKey(Object key)
Returns
true if a runner was registered with the
specified key. |
boolean |
containsValue(Object runner)
Returns
true if registry contains the given
runner instance. |
Set<Map.Entry<String,GroovyRunner>> |
entrySet()
Returns a set of entries for registered runners.
|
GroovyRunner |
get(Object key)
Returns the registered runner for the specified key.
|
static GroovyRunnerRegistry |
getInstance()
Returns a reference to the one and only registry instance.
|
boolean |
isEmpty()
Returns
true if the registry contains no runners, else
false . |
Iterator<GroovyRunner> |
iterator()
Returns an iterator for all runners that are registered.
|
Set<String> |
keySet()
Set of all keys associated with registered runners.
|
void |
load(ClassLoader classLoader)
Loads
GroovyRunner instances using the ServiceLoader facility. |
GroovyRunner |
put(String key,
GroovyRunner runner)
Registers a runner with the specified key.
|
void |
putAll(Map<? extends String,? extends GroovyRunner> m)
Adds all entries from the given Map to the registry.
|
GroovyRunner |
remove(Object key)
Removes a registered runner from the registry.
|
int |
size()
Returns the number of registered runners.
|
String |
toString() |
Collection<GroovyRunner> |
values()
Returns a collection of all registered runners.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAll
forEach, spliterator
public static GroovyRunnerRegistry getInstance()
public void load(ClassLoader classLoader)
GroovyRunner
instances using the ServiceLoader
facility.classLoader
- used to locate provider-configuration files and classespublic Iterator<GroovyRunner> iterator()
iterator
in interface Iterable<GroovyRunner>
public int size()
size
in interface Map<String,GroovyRunner>
public boolean isEmpty()
true
if the registry contains no runners, else
false
.isEmpty
in interface Map<String,GroovyRunner>
true
if no runners are registeredpublic boolean containsKey(Object key)
true
if a runner was registered with the
specified key.containsKey
in interface Map<String,GroovyRunner>
key
- for the registered runnertrue
if a runner was registered with given keypublic boolean containsValue(Object runner)
true
if registry contains the given
runner instance.containsValue
in interface Map<String,GroovyRunner>
runner
- instance of a GroovyRunnertrue
if the given runner is registeredpublic GroovyRunner get(Object key)
get
in interface Map<String,GroovyRunner>
key
- used to lookup the runnerpublic GroovyRunner put(String key, GroovyRunner runner)
put
in interface Map<String,GroovyRunner>
key
- to associate with the runnerrunner
- the runner to registernull
public GroovyRunner remove(Object key)
remove
in interface Map<String,GroovyRunner>
key
- of the runner to removenull
public void putAll(Map<? extends String,? extends GroovyRunner> m)
null
key or value will be ignored.putAll
in interface Map<String,GroovyRunner>
m
- entries to add to the registryNullPointerException
- if the given Map is null
public void clear()
clear
in interface Map<String,GroovyRunner>
public Set<String> keySet()
keySet
in interface Map<String,GroovyRunner>
public Collection<GroovyRunner> values()
values
in interface Map<String,GroovyRunner>
public Set<Map.Entry<String,GroovyRunner>> entrySet()
entrySet
in interface Map<String,GroovyRunner>