Package jadex.bridge.service.component
Class RequiredServicesFeatureAdapter
- java.lang.Object
-
- jadex.bridge.service.component.RequiredServicesFeatureAdapter
-
- All Implemented Interfaces:
IExternalComponentFeature,IExternalRequiredServicesFeature,IRequiredServicesFeature
public class RequiredServicesFeatureAdapter extends java.lang.Object implements IRequiredServicesFeature
Adapter for the required services feature.
-
-
Field Summary
Fields Modifier and Type Field Description protected IRequiredServicesFeaturedelegateThe delegate.
-
Constructor Summary
Constructors Constructor Description RequiredServicesFeatureAdapter(IRequiredServicesFeature delegate)Create a new adapter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> ISubscriptionIntermediateFuture<T>addQuery(ServiceQuery<T> query)Add a service query.<T> ISubscriptionIntermediateFuture<T>addQuery(ServiceQuery<T> query, long timeout)Add a service query.<T> ISubscriptionIntermediateFuture<T>addQuery(java.lang.Class<T> type)Add a query for a declared required service.<T> ISubscriptionIntermediateFuture<T>addQuery(java.lang.String name)Add a query for a declared required service.<T> TgetLocalService(java.lang.Class<T> type)Resolve a required service of a given type.<T> TgetLocalService(java.lang.String name)Resolve a declared required service of a given name.<T> TgetLocalService0(java.lang.Class<T> type)Resolve a required service of a given type.<T> java.util.Collection<T>getLocalServices(java.lang.Class<T> type)Resolve a required services of a given type.<T> java.util.Collection<T>getLocalServices(java.lang.String name)Resolve a required services of a given name.<T> IFuture<T>getService(java.lang.Class<T> type)Resolve a required service of a given type.<T> IFuture<T>getService(java.lang.String name)Resolve a declared required service of a given name.<T> ITerminableIntermediateFuture<T>getServices(java.lang.Class<T> type)Resolve a required services of a given type.<T> ITerminableIntermediateFuture<T>getServices(java.lang.String name)Resolve a required services of a given name.java.lang.Stringrename(java.lang.String name)Rename if necessary.<T> TsearchLocalService(ServiceQuery<T> query)Search for matching services and provide first result.<T> java.util.Collection<T>searchLocalServices(ServiceQuery<T> query)Search for all matching services.<T> IFuture<T>searchService(ServiceQuery<T> query)Search for matching services and provide first result.<T> IFuture<T>searchService(ServiceQuery<T> query, long timeout)Performs a sustained search for a service.<T> ITerminableIntermediateFuture<T>searchServices(ServiceQuery<T> query)Search for all matching services.
-
-
-
Field Detail
-
delegate
protected IRequiredServicesFeature delegate
The delegate.
-
-
Constructor Detail
-
RequiredServicesFeatureAdapter
public RequiredServicesFeatureAdapter(IRequiredServicesFeature delegate)
Create a new adapter.
-
-
Method Detail
-
getService
public <T> IFuture<T> getService(java.lang.String name)
Resolve a declared required service of a given name. Asynchronous method for locally as well as remotely available services.- Specified by:
getServicein interfaceIRequiredServicesFeature- Parameters:
name- The service name.- Returns:
- The service.
-
getLocalService0
public <T> T getLocalService0(java.lang.Class<T> type)
Resolve a required service of a given type. Synchronous method only for locally available services.- Specified by:
getLocalService0in interfaceIRequiredServicesFeature- Parameters:
type- The service type.- Returns:
- The service.
-
getService
public <T> IFuture<T> getService(java.lang.Class<T> type)
Resolve a required service of a given type. Asynchronous method for locally as well as remotely available services.- Specified by:
getServicein interfaceIRequiredServicesFeature- Parameters:
type- The service type.- Returns:
- The service.
-
getServices
public <T> ITerminableIntermediateFuture<T> getServices(java.lang.String name)
Resolve a required services of a given name. Asynchronous method for locally as well as remotely available services.- Specified by:
getServicesin interfaceIRequiredServicesFeature- Parameters:
name- The services name.- Returns:
- Each service as an intermediate result and a collection of services as final result.
-
getServices
public <T> ITerminableIntermediateFuture<T> getServices(java.lang.Class<T> type)
Resolve a required services of a given type. Asynchronous method for locally as well as remotely available services.- Specified by:
getServicesin interfaceIRequiredServicesFeature- Parameters:
type- The services type.- Returns:
- Each service as an intermediate result and a collection of services as final result.
-
getLocalService
public <T> T getLocalService(java.lang.String name)
Resolve a declared required service of a given name. Synchronous method only for locally available services.- Specified by:
getLocalServicein interfaceIRequiredServicesFeature- Parameters:
name- The service name.- Returns:
- The service.
-
getLocalService
public <T> T getLocalService(java.lang.Class<T> type)
Resolve a required service of a given type. Synchronous method only for locally available services.- Specified by:
getLocalServicein interfaceIRequiredServicesFeature- Parameters:
type- The service type.- Returns:
- The service.
-
getLocalServices
public <T> java.util.Collection<T> getLocalServices(java.lang.String name)
Resolve a required services of a given name. Synchronous method only for locally available services.- Specified by:
getLocalServicesin interfaceIRequiredServicesFeature- Parameters:
name- The services name.- Returns:
- Each service as an intermediate result and a collection of services as final result.
-
getLocalServices
public <T> java.util.Collection<T> getLocalServices(java.lang.Class<T> type)
Resolve a required services of a given type. Synchronous method only for locally available services.- Specified by:
getLocalServicesin interfaceIRequiredServicesFeature- Parameters:
type- The services type.- Returns:
- Each service as an intermediate result and a collection of services as final result.
-
searchService
public <T> IFuture<T> searchService(ServiceQuery<T> query)
Search for matching services and provide first result.- Specified by:
searchServicein interfaceIExternalRequiredServicesFeature- Parameters:
query- The search query.- Returns:
- Future providing the corresponding service or ServiceNotFoundException when not found.
-
searchLocalService
public <T> T searchLocalService(ServiceQuery<T> query)
Search for matching services and provide first result. Synchronous method only for locally available services.- Specified by:
searchLocalServicein interfaceIRequiredServicesFeature- Parameters:
query- The search query.- Returns:
- Future providing the corresponding service or ServiceNotFoundException when not found.
-
searchServices
public <T> ITerminableIntermediateFuture<T> searchServices(ServiceQuery<T> query)
Search for all matching services.- Specified by:
searchServicesin interfaceIExternalRequiredServicesFeature- Parameters:
query- The search query.- Returns:
- Future providing the corresponding services or ServiceNotFoundException when not found.
-
searchLocalServices
public <T> java.util.Collection<T> searchLocalServices(ServiceQuery<T> query)
Search for all matching services. Synchronous method only for locally available services.- Specified by:
searchLocalServicesin interfaceIRequiredServicesFeature- Parameters:
query- The search query.- Returns:
- Future providing the corresponding services or ServiceNotFoundException when not found.
-
searchService
public <T> IFuture<T> searchService(ServiceQuery<T> query, long timeout)
Performs a sustained search for a service. Attempts to find a service for a maximum duration until timeout occurs.- Specified by:
searchServicein interfaceIRequiredServicesFeature- Parameters:
query- The search query.timeout- Maximum time period to search.- Returns:
- Service matching the query, exception if service is not found.
-
addQuery
public <T> ISubscriptionIntermediateFuture<T> addQuery(java.lang.String name)
Add a query for a declared required service. Continuously searches for matching services.- Specified by:
addQueryin interfaceIRequiredServicesFeature- Parameters:
name- The name of the required service declaration.- Returns:
- Future providing the corresponding services as intermediate results.
-
addQuery
public <T> ISubscriptionIntermediateFuture<T> addQuery(java.lang.Class<T> type)
Add a query for a declared required service. Continuously searches for matching services.- Specified by:
addQueryin interfaceIRequiredServicesFeature- Parameters:
type- The type of the required service declaration.- Returns:
- Future providing the corresponding services as intermediate results.
-
addQuery
public <T> ISubscriptionIntermediateFuture<T> addQuery(ServiceQuery<T> query)
Add a service query. Continuously searches for matching services.- Specified by:
addQueryin interfaceIExternalRequiredServicesFeature- Parameters:
query- The search query.- Returns:
- Future providing the corresponding service or ServiceNotFoundException when not found.
-
addQuery
public <T> ISubscriptionIntermediateFuture<T> addQuery(ServiceQuery<T> query, long timeout)
Add a service query. Continuously searches for matching services.- Specified by:
addQueryin interfaceIRequiredServicesFeature- Parameters:
query- The search query.- Returns:
- Future providing the corresponding service or ServiceNotFoundException when not found.
-
rename
public java.lang.String rename(java.lang.String name)
Rename if necessary.
-
-