![JAR search and dependency download from the Maven repository](/logo.png)
jadex.bridge.service.component.IExternalRequiredServicesFeature Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jadex-platform-bridge Show documentation
Show all versions of jadex-platform-bridge Show documentation
Jadex bridge is a base package for kernels and platforms, i.e., it is used by both and provides commonly used interfaces and classes for active components and their management.
package jadex.bridge.service.component;
import jadex.bridge.component.IExternalComponentFeature;
import jadex.bridge.service.search.ServiceQuery;
import jadex.commons.future.IFuture;
import jadex.commons.future.ISubscriptionIntermediateFuture;
import jadex.commons.future.ITerminableIntermediateFuture;
/**
* External perspective of the required services feature.
*/
public interface IExternalRequiredServicesFeature extends IExternalComponentFeature
{
// /**
// * Resolve a declared required service of a given name.
// * Asynchronous method for locally as well as remotely available services.
// * @param name The service name.
// * @return Future with the service or ServiceNotFoundException
// */
// public IFuture getService(String name);
//
// /**
// * Resolve a declared required service of a given type.
// * Asynchronous method for locally as well as remotely available services.
// * @param type The service type.
// * @return Future with the service or ServiceNotFoundException
// */
// public IFuture getService(Class type);
//
// /**
// * Resolve a declared required services of a given name.
// * Asynchronous method for locally as well as remotely available services.
// * @param name The services name.
// * @return Each service as an intermediate result or a collection of services as final result.
// */
// public ITerminableIntermediateFuture getServices(String name);
//
// /**
// * Resolve a declared required services of a given type.
// * Asynchronous method for locally as well as remotely available services.
// * @param type The services type.
// * @return Each service as an intermediate result or a collection of services as final result.
// */
// public ITerminableIntermediateFuture getServices(Class type);
//-------- methods for searching --------
/**
* Search for matching services and provide first result.
* @param query The search query.
* @return Future providing the corresponding service or ServiceNotFoundException when not found.
*/
public IFuture searchService(ServiceQuery query);
/**
* Search for all matching services.
* @param query The search query.
* @return Each service as an intermediate result or a collection of services as final result.
*/
public ITerminableIntermediateFuture searchServices(ServiceQuery query);
//-------- query methods --------
// /**
// * Add a query for a declared required service.
// * Continuously searches for matching services.
// * @param name The name of the required service declaration.
// * @return Future providing the corresponding services as intermediate results.
// */
// public ISubscriptionIntermediateFuture addQuery(String name);
//
// /**
// * Add a query for a declared required service.
// * Continuously searches for matching services.
// * @param type The type of the required service declaration.
// * @return Future providing the corresponding services as intermediate results.
// */
// public ISubscriptionIntermediateFuture addQuery(Class type);
/**
* Add a service query.
* Continuously searches for matching services.
* Use query setEventMode to retrieve also removals.
* @param query The search query.
* @return Future providing the corresponding services as intermediate results.
*/
public ISubscriptionIntermediateFuture addQuery(ServiceQuery query);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy