Package org.eclipse.ecf.remoteservice

# Class RemoteServiceContainer

java.lang.Object
org.eclipse.ecf.remoteservice.RemoteServiceContainer

All Implemented Interfaces:
  `IRemoteServiceContainer`

public class RemoteServiceContainer extends Object implements IRemoteServiceContainer

Since:
  3.0

## Constructor Summary

Constructors
Constructor
Description
`RemoteServiceContainer(IContainer container)`
`RemoteServiceContainer(IContainer container, IRemoteServiceContainerAdapter containerAdapter)`

## Method Summary

Modifier and Type
Method
Description
`IContainer`
`getContainer()`
Get the container instance for this remote service container.
`IRemoteServiceContainerAdapter`
`getContainerAdapter()`
Get the container adapter for this remote service container.
`IRemoteService`
`getRemoteService(String serviceInterfaceClass)`
Get the remote service for given serviceInterface class.
`IRemoteService`
`getRemoteService(String targetLocation, String serviceInterfaceClass)`
Get the remote service for given targetLocation and given serviceInterface class.
`IRemoteService`
`getRemoteService(String targetLocation, String serviceInterfaceClass, String filter)`
Get the remote service for given targetLocation and given serviceInterface class.
`protected IRemoteServiceReference`
`getServiceReference(ID targetId, String serviceInterfaceClass, String filter)`
`protected IRemoteServiceReference`
`selectReference(IRemoteServiceReference[] references)`
`String`
`toString()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### RemoteServiceContainer

public RemoteServiceContainer(IContainer container, IRemoteServiceContainerAdapter containerAdapter)

### RemoteServiceContainer

public RemoteServiceContainer(IContainer container)

Parameters:
  `container` - container
Since:
  3.2

## Method Details

### getContainer

public IContainer getContainer()
Description copied from interface: `IRemoteServiceContainer`
Get the container instance for this remote service container. Will not return `null`.

Specified by:
  `getContainer` in interface `IRemoteServiceContainer`
Returns:
  IContainer for this remote service container. Will not return `null`.

### getContainerAdapter

public IRemoteServiceContainerAdapter getContainerAdapter()
Description copied from interface: `IRemoteServiceContainer`
Get the container adapter for this remote service container. Will not return `null`

Specified by:
  `getContainerAdapter` in interface `IRemoteServiceContainer`
Returns:
  IRemoteServiceContainerAdapter that is the adapter for the container returned from `IRemoteServiceContainer.getContainer()`.

### getRemoteService

public IRemoteService getRemoteService(String targetLocation, String serviceInterfaceClass, String filter) throws ContainerConnectException, InvalidSyntaxException
Description copied from interface: `IRemoteServiceContainer`
Get the remote service for given targetLocation and given serviceInterface class.

Specified by:
  `getRemoteService` in interface `IRemoteServiceContainer`
Parameters:
  `targetLocation` - the targetLocation to connect to. See `IRemoteServiceContainerAdapter.getRemoteServiceReferences(org.eclipse.ecf.core.identity.ID, String, String)`. May be `null`.
  `serviceInterfaceClass` - the service to find. Must not be `null`.
  `filter` - the `IRemoteFilter` to use for finding the desired remote service.
Returns:
  IRemoteService the remote service. May be `null` if the desired remote service is not available.
Throws:
  `ContainerConnectException` - thrown if underlying container cannot connect to get remote service.
  `InvalidSyntaxException` - thrown if the filter does not have correct syntax.

### getServiceReference

protected IRemoteServiceReference getServiceReference(ID targetId, String serviceInterfaceClass, String filter) throws ContainerConnectException, InvalidSyntaxException

Throws:
  `ContainerConnectException`
  `InvalidSyntaxException`

### selectReference

protected IRemoteServiceReference selectReference(IRemoteServiceReference[] references)

### getRemoteService

public IRemoteService getRemoteService(String targetLocation, String serviceInterfaceClass) throws ContainerConnectException
Description copied from interface: `IRemoteServiceContainer`
Get the remote service for given targetLocation and given serviceInterface class.

Specified by:
  `getRemoteService` in interface `IRemoteServiceContainer`
Parameters:
  `targetLocation` - the targetLocation to connect to. See `IRemoteServiceContainerAdapter.getRemoteServiceReferences(org.eclipse.ecf.core.identity.ID, String, String)`. May be `null`.
  `serviceInterfaceClass` - the service to find. Must not be `null`.
Returns:
  IRemoteService the remote service. May be `null` if the desired remote service is not available.
Throws:
  `ContainerConnectException` - thrown if underlying container cannot connect to get remote service.

### getRemoteService

public IRemoteService getRemoteService(String serviceInterfaceClass)
Description copied from interface: `IRemoteServiceContainer`
Get the remote service for given serviceInterface class.

Specified by:
  `getRemoteService` in interface `IRemoteServiceContainer`
Parameters:
  `serviceInterfaceClass` - the service to find. Must not be `null`.
Returns:
  IRemoteService the remote service. May be `null` if the desired remote service is not available.

### toString

public String toString()

Overrides:
  `toString` in class `Object`