public class RegistrySearchFunctionality
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected IRegistryDataProvider |
provider
Interface to the data of the registry.
|
Constructor and Description |
---|
RegistrySearchFunctionality(IRegistryDataProvider provider)
Create a new search func.
|
Modifier and Type | Method and Description |
---|---|
protected <T> ISubscriptionIntermediateFuture<T> |
checkAsyncFilters(IAsyncFilter<T> filter,
java.util.Iterator<T> it)
Check the async filter.
|
protected boolean |
checkPublicationScope(IComponentIdentifier cid,
IService ser)
Check if service is ok with respect to publication scope.
|
protected IFuture<java.lang.Void> |
checkQueries(IService ser)
Check the persistent queries for a new service.
|
protected IFuture<java.lang.Void> |
checkQueriesLoop(java.util.Iterator<ServiceQueryInfo<?>> it,
IService service)
Check the persistent queries against a new service.
|
protected IFuture<java.lang.Boolean> |
checkQuery(ServiceQueryInfo<?> queryinfo,
IService service)
Check a persistent query with one service.
|
protected <T> java.util.Collection<T> |
checkScope(java.util.Iterator<T> it,
IComponentIdentifier cid,
java.lang.String scope,
boolean oneresult)
Check the services according the the scope.
|
protected boolean |
checkSearchScope(IComponentIdentifier cid,
IService ser,
java.lang.String scope,
boolean excluded)
Check if service is ok with respect to search scope of caller.
|
static java.lang.String |
getApplicationName(IComponentIdentifier cid)
Get the application name.
|
static java.lang.String |
getDotName(IComponentIdentifier cid)
Get the name without @ replaced by dot.
|
protected <T> java.util.Set<ServiceQueryInfo<T>> |
getQueries(ClassInfo type)
Get queries per type.
|
protected java.util.Iterator<IService> |
getServices(ClassInfo type)
Get services per type.
|
static java.lang.String |
getSubcomponentName(IComponentIdentifier cid)
Get the subcomponent name.
|
<T> T |
searchService(ClassInfo type,
IComponentIdentifier cid,
java.lang.String scope)
Search for services.
|
<T> T |
searchService(ClassInfo type,
IComponentIdentifier cid,
java.lang.String scope,
boolean excluded)
Search for services.
|
<T> IFuture<T> |
searchService(ClassInfo type,
IComponentIdentifier cid,
java.lang.String scope,
IAsyncFilter<T> filter)
Search for service.
|
<T> T |
searchService(ClassInfo type,
IComponentIdentifier cid,
java.lang.String scope,
IFilter<T> filter)
Search for service.
|
<T> java.util.Collection<T> |
searchServices(ClassInfo type,
IComponentIdentifier cid,
java.lang.String scope)
Search for services.
|
<T> ISubscriptionIntermediateFuture<T> |
searchServices(ClassInfo type,
IComponentIdentifier cid,
java.lang.String scope,
IAsyncFilter<T> filter)
Search for services.
|
<T> java.util.Collection<T> |
searchServices(ClassInfo type,
IComponentIdentifier cid,
java.lang.String scope,
IFilter<T> filter)
Search for service.
|
protected IRegistryDataProvider provider
public RegistrySearchFunctionality(IRegistryDataProvider provider)
protected java.util.Iterator<IService> getServices(ClassInfo type)
type
- The interface type. If type is null all services are returned.protected <T> java.util.Set<ServiceQueryInfo<T>> getQueries(ClassInfo type)
type
- The interface type. If type is null all services are returned.public <T> T searchService(ClassInfo type, IComponentIdentifier cid, java.lang.String scope)
public <T> T searchService(ClassInfo type, IComponentIdentifier cid, java.lang.String scope, boolean excluded)
public <T> java.util.Collection<T> searchServices(ClassInfo type, IComponentIdentifier cid, java.lang.String scope)
public <T> T searchService(ClassInfo type, IComponentIdentifier cid, java.lang.String scope, IFilter<T> filter)
public <T> java.util.Collection<T> searchServices(ClassInfo type, IComponentIdentifier cid, java.lang.String scope, IFilter<T> filter)
public <T> IFuture<T> searchService(ClassInfo type, IComponentIdentifier cid, java.lang.String scope, IAsyncFilter<T> filter)
public <T> ISubscriptionIntermediateFuture<T> searchServices(ClassInfo type, IComponentIdentifier cid, java.lang.String scope, IAsyncFilter<T> filter)
protected <T> java.util.Collection<T> checkScope(java.util.Iterator<T> it, IComponentIdentifier cid, java.lang.String scope, boolean oneresult)
it
- The services.cid
- The component id.scope
- The scope.protected <T> ISubscriptionIntermediateFuture<T> checkAsyncFilters(IAsyncFilter<T> filter, java.util.Iterator<T> it)
filter
- The filterit
- The services.protected IFuture<java.lang.Void> checkQueries(IService ser)
ser
- The service.protected IFuture<java.lang.Void> checkQueriesLoop(java.util.Iterator<ServiceQueryInfo<?>> it, IService service)
it
- The queries.service
- the service.protected IFuture<java.lang.Boolean> checkQuery(ServiceQueryInfo<?> queryinfo, IService service)
queryinfo
- The query.service
- The service.protected boolean checkSearchScope(IComponentIdentifier cid, IService ser, java.lang.String scope, boolean excluded)
protected boolean checkPublicationScope(IComponentIdentifier cid, IService ser)
public static java.lang.String getApplicationName(IComponentIdentifier cid)
public static java.lang.String getSubcomponentName(IComponentIdentifier cid)
cid
- The component id.public static java.lang.String getDotName(IComponentIdentifier cid)