|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IDiscoveryLocator
Entry point discovery locator. This interface exposes the ability to add/remove listeners for newly discovered services and service types, and get (synch) and request (asynchronous) service info from a remote service provider.
This interface can be used by container provider implementations as an adapter so that calls to IContainer.getAdapter(IDiscoveryLocator.class) will return a non-null instance of a class that implements this interface. Clients can then proceed to use this interface to interact with the given discovery implementation.
Field Summary | |
---|---|
static java.lang.String |
CONTAINER_NAME
The name of the discovery container under which it is registered with the OSGi runtime as a service property |
Method Summary | |
---|---|
void |
addServiceListener(IServiceListener listener)
Add a service listener. |
void |
addServiceListener(IServiceTypeID type,
IServiceListener listener)
Add a service listener. |
void |
addServiceTypeListener(IServiceTypeListener listener)
Add a service type listener. |
org.eclipse.equinox.concurrent.future.IFuture |
getAsyncServiceInfo(IServiceID aServiceID)
Asynchronously retrieve info about the service |
org.eclipse.equinox.concurrent.future.IFuture |
getAsyncServices()
Asynchronously get service info about all known services |
org.eclipse.equinox.concurrent.future.IFuture |
getAsyncServices(IServiceTypeID aServiceTypeID)
Asynchronously get service info about all known services of given service type |
org.eclipse.equinox.concurrent.future.IFuture |
getAsyncServiceTypes()
Asynchronously get service info about all known services of given service type |
IServiceInfo |
getServiceInfo(IServiceID aServiceID)
Synchronously retrieve info about the service |
IServiceInfo[] |
getServices()
Synchronously get service info about all known services |
IServiceInfo[] |
getServices(IServiceTypeID aServiceTypeID)
Synchronously get service info about all known services of given service type |
Namespace |
getServicesNamespace()
Get a Namespace for services associated with this discovery container adapter. |
IServiceTypeID[] |
getServiceTypes()
Synchronously get service info about all known services of given service type |
IServiceInfo[] |
purgeCache()
Purges the underlying IServiceInfo cache if available in the current provider |
void |
removeServiceListener(IServiceListener listener)
Remove a service listener. |
void |
removeServiceListener(IServiceTypeID type,
IServiceListener listener)
Remove a service listener. |
void |
removeServiceTypeListener(IServiceTypeListener listener)
Remove a service type listener. |
Methods inherited from interface org.eclipse.core.runtime.IAdaptable |
---|
getAdapter |
Field Detail |
---|
static final java.lang.String CONTAINER_NAME
Method Detail |
---|
IServiceInfo getServiceInfo(IServiceID aServiceID)
service
- IServiceID of the service to get info about. Must not be
null
.
null
if no
information retrievable.IServiceInfo[] getServices()
null
. May be of length 0.IServiceInfo[] getServices(IServiceTypeID aServiceTypeID)
type
- IServiceTypeID defining the type of service we are interested
in getting service info about. Must not be null
null
. May be of length 0.IServiceTypeID[] getServiceTypes()
null
. May be of length 0.Namespace getServicesNamespace()
IServiceID serviceID = ServiceIDFactory.getDefault().createServiceID( container.getServicesNamespace(), serviceType, serviceName);
null
.IServiceInfo[] purgeCache()
void addServiceListener(IServiceListener listener)
listener
- IServiceListener to be notified. Must not be null
.void addServiceListener(IServiceTypeID type, IServiceListener listener)
type
- String type to listen for. Must not be null
. Must
be formatted according to this specific IDiscoveryContainerlistener
- IServiceListener to be notified. Must not be null
.void addServiceTypeListener(IServiceTypeListener listener)
listener
- the listener to be notified. Must not be null
.void removeServiceListener(IServiceListener listener)
listener
- IServiceListener listener to be removed. Must not be
null
.void removeServiceListener(IServiceTypeID type, IServiceListener listener)
type
- String of the desired type to remove the listener. Must not be
null
. Must be formatted according to this
specific IDiscoveryContainerlistener
- IServiceListener listener to be removed. Must not be
null
.void removeServiceTypeListener(IServiceTypeListener listener)
listener
- IServiceTypeListener to be removed. Must not be
null
.org.eclipse.equinox.concurrent.future.IFuture getAsyncServiceInfo(IServiceID aServiceID)
service
- IServiceID of the service to get info about. Must not be
null
.
null
if no information retrievable.org.eclipse.equinox.concurrent.future.IFuture getAsyncServices()
null
. May be of length
0.org.eclipse.equinox.concurrent.future.IFuture getAsyncServices(IServiceTypeID aServiceTypeID)
type
- IServiceTypeID defining the type of service we are interested
in getting service info about. Must not be null
null
. May be of length
0.org.eclipse.equinox.concurrent.future.IFuture getAsyncServiceTypes()
null
. May be of length
0.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |