Class RemoteServiceAdmin
- java.lang.Object
- 
- org.eclipse.ecf.osgi.services.remoteserviceadmin.RemoteServiceAdmin
 
- 
- All Implemented Interfaces:
- RemoteServiceAdmin
 
 public class RemoteServiceAdmin extends Object implements RemoteServiceAdmin ECF implementation of OSGI 4.2 Remote Service Admin service. This service can be used by topology managers to to export and/or import remote services with any ECF container that implements the ECF remote service API.
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description classRemoteServiceAdmin.ExportReferenceclassRemoteServiceAdmin.ExportRegistrationclassRemoteServiceAdmin.ImportReferenceclassRemoteServiceAdmin.ImportRegistrationprotected classRemoteServiceAdmin.ProxyClassLoaderclassRemoteServiceAdmin.RemoteServiceAdminEvent
 - 
Field SummaryFields Modifier and Type Field Description static StringSERVICE_PROP
 - 
Constructor SummaryConstructors Constructor Description RemoteServiceAdmin(Bundle clientBundle)RemoteServiceAdmin(Bundle clientBundle, Collection<ExportRegistration> exportedRegistrations, Collection<ImportRegistration> importedRegistrations)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Collection<ExportRegistration>exportService(ServiceReference<?> serviceReference, Map<String,?> op)Export a service to a given Endpoint.protected IConsumerContainerSelectorgetConsumerContainerSelector()List<RemoteServiceAdmin.ExportRegistration>getExportedRegistrations()Collection<ExportReference>getExportedServices()Return the currently active Export References.protected IHostContainerSelectorgetHostContainerSelector()Collection<ImportReference>getImportedEndpoints()Return the currently active Import References.List<RemoteServiceAdmin.ImportRegistration>getImportedRegistrations()ImportRegistrationimportService(EndpointDescription endpointDescription)Import a service from an Endpoint.
 
- 
- 
- 
Field Detail- 
SERVICE_PROPpublic static final String SERVICE_PROP - See Also:
- Constant Field Values
 
 
- 
 - 
Constructor Detail- 
RemoteServiceAdminpublic RemoteServiceAdmin(Bundle clientBundle) 
 - 
RemoteServiceAdminpublic RemoteServiceAdmin(Bundle clientBundle, Collection<ExportRegistration> exportedRegistrations, Collection<ImportRegistration> importedRegistrations) - Parameters:
- clientBundle- client bundle for RemoteServiceAdmin instance
- exportedRegistrations- of exported registrations
- importedRegistrations- of imported registrations
- Since:
- 4.1
 
 
- 
 - 
Method Detail- 
getExportedRegistrationspublic List<RemoteServiceAdmin.ExportRegistration> getExportedRegistrations() - Returns:
- List of exported registrations
- Since:
- 4.2
 
 - 
getImportedRegistrationspublic List<RemoteServiceAdmin.ImportRegistration> getImportedRegistrations() - Returns:
- List of imported registrations
- Since:
- 4.2
 
 - 
exportServicepublic Collection<ExportRegistration> exportService(ServiceReference<?> serviceReference, Map<String,?> op) Description copied from interface:RemoteServiceAdminExport a service to a given Endpoint. The Remote Service Admin must create an Endpoint from the given description that can be used by other Distribution Providers to connect to this Remote Service Admin and use the exported service. The property keys of a Service Reference are case insensitive while the property keys of the specifiedpropertiesmap are case sensitive. A property key in the specifiedpropertiesmap must therefore override any case variant property key in the properties of the specified Service Reference.If the caller does not have the appropriate EndpointPermission[endpoint,EXPORT]for an Endpoint, and the Java Runtime Environment supports permissions, then thegetExceptionmethod on the corresponding returnedExportRegistrationwill return aSecurityException.- Specified by:
- exportServicein interface- RemoteServiceAdmin
- Parameters:
- serviceReference- The Service Reference to export.
- op- The properties to create a local Endpoint that can be implemented by this Remote Service Admin. If this is- null, the Endpoint will be determined by the properties on the service. The properties are the same as given for an exported service. They override any properties in the specified Service Reference (case insensitive). The properties- objectClassand- service.id, in any case variant, are ignored. Those properties in the Service Reference cannot be overridden. This parameter can be- null, this should be treated as an empty map.
- Returns:
- A CollectionofExportRegistrations for the specified Service Reference and properties. Multiple Export Registrations may be returned because a single service can be exported to multiple Endpoints depending on the available configuration type properties and the intents that they support. The result is nevernullbut may be empty if this Remove Service Admin does not recognize any of the configuration types, or if they Remote Service Admin cannot support the relevant intents.
 
 - 
importServicepublic ImportRegistration importService(EndpointDescription endpointDescription) Description copied from interface:RemoteServiceAdminImport a service from an Endpoint. The Remote Service Admin must use the given Endpoint to create a proxy. This method can returnnullif the service could not be imported.- Specified by:
- importServicein interface- RemoteServiceAdmin
- Parameters:
- endpointDescription- The Endpoint Description to be used for import.
- Returns:
- An Import Registration that combines the Endpoint Description and
         the Service Reference or nullif the Endpoint could not be imported.
 
 - 
getExportedServicespublic Collection<ExportReference> getExportedServices() Description copied from interface:RemoteServiceAdminReturn the currently active Export References.If the caller does not have the appropriate EndpointPermission[endpoint,READ]for an Endpoint, and the Java Runtime Environment supports permissions, then returned collection will not contain a reference to the exported Endpoint.- Specified by:
- getExportedServicesin interface- RemoteServiceAdmin
- Returns:
- A CollectionofExportReferences that are currently active.
 
 - 
getImportedEndpointspublic Collection<ImportReference> getImportedEndpoints() Description copied from interface:RemoteServiceAdminReturn the currently active Import References.If the caller does not have the appropriate EndpointPermission[endpoint,READ]for an Endpoint, and the Java Runtime Environment supports permissions, then returned collection will not contain a reference to the imported Endpoint.- Specified by:
- getImportedEndpointsin interface- RemoteServiceAdmin
- Returns:
- A CollectionofImportReferences that are currently active.
 
 - 
getHostContainerSelectorprotected IHostContainerSelector getHostContainerSelector() 
 - 
getConsumerContainerSelectorprotected IConsumerContainerSelector getConsumerContainerSelector() 
 - 
closepublic void close() 
 
- 
 
-