Interface IHostContainerSelector
-
- All Known Implementing Classes:
HostContainerSelector
public interface IHostContainerSelector
Host container selector service contract. When an ECF RemoteServiceAdmin instance is asked to import a service (i.e. viaRemoteServiceAdmin.exportService(ServiceReference, java.util.Map)
), the RSA first gets an instance of this service via the service registry, and then uses it to select an array of ECF host container instances by calling selectHostContainers.The
IRemoteServiceContainer
array returned is then used to actually export the remote service (typically viaIRemoteServiceContainerAdapter.registerRemoteService(String[], Object, java.util.Dictionary)
If no other instances of this service have been registered, a default instance of
HostContainerSelector
will be used. Note that this default instance is registered with the lowest possible priority, so that if otherIHostContainerSelector
instances are registered, they will be preferred/used over the default.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IRemoteServiceContainer[]
selectHostContainers(ServiceReference serviceReference, Map<String,Object> overridingProperties, String[] exportedInterfaces, String[] exportedConfigs, String[] serviceIntents)
Select host containers to use to export a remote service.
-
-
-
Method Detail
-
selectHostContainers
IRemoteServiceContainer[] selectHostContainers(ServiceReference serviceReference, Map<String,Object> overridingProperties, String[] exportedInterfaces, String[] exportedConfigs, String[] serviceIntents) throws SelectContainerException
Select host containers to use to export a remote service.- Parameters:
serviceReference
- the service reference given by theRemoteServiceAdmin.exportService(ServiceReference, java.util.Map)
overridingProperties
- the map portion given by theRemoteServiceAdmin.exportService(ServiceReference, java.util.Map)
exportedInterfaces
- the exportedInterfaces (typically associated withRemoteConstants.SERVICE_EXPORTED_INTERFACES
). Will not benull
.exportedConfigs
- the exportedConfigs (typically associated withRemoteConstants.SERVICE_EXPORTED_CONFIGS
). May benull
.serviceIntents
- the service intents (typically associated withRemoteConstants.SERVICE_EXPORTED_INTENTS
andRemoteConstants.SERVICE_EXPORTED_INTENTS_EXTRA
). May benull
.- Returns:
- IRemoteServiceContainer[] of remote service containers that
should be used to export the given remote service (typically via
IRemoteServiceContainerAdapter.registerRemoteService(String[], Object, java.util.Dictionary)
). Will not benull
, but may be empty array. - Throws:
SelectContainerException
- thrown if the host container selection or creation/configuration fails.- Since:
- 2.0
-
-