|
org.openide.util 7.9.0 1 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.openide.util.Lookup
public abstract class Lookup
A general registry permitting clients to find instances of services
(implementation of a given interface).
This class is inspired by the
Jini
registration and lookup mechanism. The difference is that the methods do
not throw checked exceptions (as they usually work only locally and not over the network)
and that the Lookup API concentrates on the lookup, not on the registration
(although getDefault()
is strongly encouraged to support
Lookups.metaInfServices(java.lang.ClassLoader)
for registration in addition to whatever
else it decides to support).
For a general talk about the idea behind the lookup pattern please see
AbstractLookup
,
Lookups
,
LookupListener
,
LookupEvent
Nested Class Summary | |
---|---|
static class |
Lookup.Item<T>
A single item in a lookup result. |
static interface |
Lookup.Provider
Objects implementing interface Lookup.Provider are capable of and willing to provide a lookup (usually bound to the object). |
static class |
Lookup.Result<T>
Result of a lookup request. |
static class |
Lookup.Template<T>
Template defining a pattern to filter instances by. |
Field Summary | |
---|---|
static Lookup |
EMPTY
A dummy lookup that never returns any results. |
Constructor Summary | |
---|---|
Lookup()
Empty constructor for use by subclasses. |
Method Summary | ||
---|---|---|
static Lookup |
getDefault()
Static method to obtain the global lookup in the whole system. |
|
abstract
|
lookup(Class<T> clazz)
Look up an object matching a given interface. |
|
abstract
|
lookup(Lookup.Template<T> template)
The general lookup method. |
|
|
lookupAll(Class<T> clazz)
Find all instances corresponding to a given class. |
|
|
lookupItem(Lookup.Template<T> template)
Look up the first item matching a given template. |
|
|
lookupResult(Class<T> clazz)
Find a result corresponding to a given class. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final Lookup EMPTY
Constructor Detail |
---|
public Lookup()
Method Detail |
---|
public static Lookup getDefault()
Lookups.metaInfServices(java.lang.ClassLoader)
with the context classloader of the first caller. Each system is
adviced to honor this and include some form of metaInfServices
implementation in the returned lookup as usage of META-INF/services
is a JDK standard.
public abstract <T> T lookup(Class<T> clazz)
clazz
- class of the object we are searching for
null
if no such
implementation is foundpublic abstract <T> Lookup.Result<T> lookup(Lookup.Template<T> template)
template
, request more info about
them in form of Lookup.Item
and attach a listener to
this be notified about changes. The general interface does not
specify whether subsequent calls with the same template produce new
instance of the Lookup.Result
or return shared instance. The
prefered behaviour however is to return shared one.
template
- a template describing the services to look for
public <T> Lookup.Item<T> lookupItem(Lookup.Template<T> template)
template
- the template to check
null
public <T> Lookup.Result<T> lookupResult(Class<T> clazz)
lookup(Lookup.Template)
but slightly more convenient.
Subclasses may override this method to produce the same semantics more efficiently.
clazz
- the supertype of the result
public <T> Collection<? extends T> lookupAll(Class<T> clazz)
lookupResult(java.lang.Class)
and asking for Lookup.Result.allInstances()
but slightly more convenient.
Subclasses may override this method to produce the same semantics more efficiently.
clazz
- the supertype of the result
|
org.openide.util 7.9.0 1 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |