org.eclipse.ecf.osgi.services.remoteserviceadmin
Class HostContainerSelector

java.lang.Object
  extended by org.eclipse.ecf.osgi.services.remoteserviceadmin.AbstractContainerSelector
      extended by org.eclipse.ecf.osgi.services.remoteserviceadmin.AbstractHostContainerSelector
          extended by org.eclipse.ecf.osgi.services.remoteserviceadmin.HostContainerSelector
All Implemented Interfaces:
IHostContainerSelector

public class HostContainerSelector
extends AbstractHostContainerSelector
implements IHostContainerSelector

Default implementation of IHostContainerSelector service.


Field Summary
 
Fields inherited from class org.eclipse.ecf.osgi.services.remoteserviceadmin.AbstractHostContainerSelector
defaultConfigTypes
 
Fields inherited from class org.eclipse.ecf.osgi.services.remoteserviceadmin.AbstractContainerSelector
EMPTY_REMOTE_SERVICE_CONTAINER_ARRAY
 
Constructor Summary
HostContainerSelector(java.lang.String[] defaultConfigTypes, boolean autoCreateContainer)
           
 
Method Summary
 void close()
           
 IRemoteServiceContainer[] selectHostContainers(org.osgi.framework.ServiceReference serviceReference, java.util.Map<java.lang.String,java.lang.Object> overridingProperties, java.lang.String[] serviceExportedInterfaces, java.lang.String[] serviceExportedConfigs, java.lang.String[] serviceIntents)
          Select host containers to use to export a remote service.
 
Methods inherited from class org.eclipse.ecf.osgi.services.remoteserviceadmin.AbstractHostContainerSelector
connectHostContainer, createAndConfigureHostContainers, createMatchingContainer, createRSContainer, getContainerTypeDescriptionsForDefaultConfigTypes, getDefaultConfigTypes, matchDefaultConfigTypes, matchExistingHostContainer, matchHostContainerID, matchHostContainerToConnectTarget, matchHostSupportedConfigTypes, matchHostSupportedIntents, selectExistingHostContainers
 
Methods inherited from class org.eclipse.ecf.osgi.services.remoteserviceadmin.AbstractContainerSelector
connectContainer, createConnectContext, createContainer, createTargetID, disconnectContainer, getContainerFactory, getContainerFactoryArguments, getContainerManager, getContainers, getContainerTypeDescription, getContainerTypeDescriptions, getRemoteServiceContainers, getSupportedConfigTypes, getSupportedIntents, hasRemoteServiceContainerAdapter, includeContainerWithConnectNamespace, logError, logError, logException, logWarning, matchConnectNamespace, matchContainerID, trace, traceException
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HostContainerSelector

public HostContainerSelector(java.lang.String[] defaultConfigTypes,
                             boolean autoCreateContainer)
Method Detail

selectHostContainers

public IRemoteServiceContainer[] selectHostContainers(org.osgi.framework.ServiceReference serviceReference,
                                                      java.util.Map<java.lang.String,java.lang.Object> overridingProperties,
                                                      java.lang.String[] serviceExportedInterfaces,
                                                      java.lang.String[] serviceExportedConfigs,
                                                      java.lang.String[] serviceIntents)
                                               throws SelectContainerException
Description copied from interface: IHostContainerSelector
Select host containers to use to export a remote service.

Specified by:
selectHostContainers in interface IHostContainerSelector
Parameters:
serviceReference - the service reference given by the RemoteServiceAdmin.exportService(ServiceReference, java.util.Map)
overridingProperties - the map portion given by the RemoteServiceAdmin.exportService(ServiceReference, java.util.Map)
serviceExportedInterfaces - the exportedInterfaces (typically associated with org.osgi.service.remoteserviceadmin.RemoteConstants#SERVICE_EXPORTED_INTERFACES ). Will not be null.
serviceExportedConfigs - the exportedConfigs (typically associated with org.osgi.service.remoteserviceadmin.RemoteConstants#SERVICE_EXPORTED_CONFIGS ). May be null.
serviceIntents - the service intents (typically associated with org.osgi.service.remoteserviceadmin.RemoteConstants#SERVICE_EXPORTED_INTENTS and org.osgi.service.remoteserviceadmin.RemoteConstants#SERVICE_EXPORTED_INTENTS_EXTRA ). May be null.
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 be null, but may be empty array.
Throws:
SelectContainerException - thrown if the host container selection or creation/configuration fails.
Since:
2.0
See Also:
IHostContainerSelector.selectHostContainers(org.osgi.framework.ServiceReference, java.util.Map, java.lang.String[], java.lang.String[], java.lang.String[])

close

public void close()