Class EndpointDescription

java.lang.Object
org.osgi.service.remoteserviceadmin.EndpointDescription
org.eclipse.ecf.osgi.services.remoteserviceadmin.EndpointDescription

public class EndpointDescription extends EndpointDescription
ECF remote service endpoint description. Instances of this class, typically created via discovery, allow the import of an ECF remote service. The superclass of this class is the EndpointDescription class which is specified by the Remote Service Admin (chap 122) from the OSGi 4.2 Enterprise Specification.

ECF remote services have capabilities beyond typical OSGi remote services. To expose these capabilities, this EndpointDescription adds optional meta-data. This meta-data may then be used by the remote service consumer to customize ECF remote services import. Specifically, to customize the behavior of the ECF implementation of RemoteServiceAdmin.importService(org.osgi.service.remoteserviceadmin.EndpointDescription).

  • Constructor Details

    • EndpointDescription

      public EndpointDescription(ServiceReference reference, Map<String,Object> properties)
      Parameters:
      reference - A service reference that can be exported.
      properties - Map of properties. This argument can be null. The keys in the map must be type String and, since the keys are case insensitive, there must be no duplicates with case variation.
      Throws:
      IllegalArgumentException - When the properties are not proper for an Endpoint Description
      See Also:
    • EndpointDescription

      public EndpointDescription(Map<String,Object> properties)
      Parameters:
      properties - The map from which to create the Endpoint Description. The keys in the map must be type String and, since the keys are case insensitive, there must be no duplicates with case variation.
      Throws:
      IllegalArgumentException - When the properties are not proper for an Endpoint Description.
      See Also:
  • Method Details

    • getInterfaceVersions

      public Map<String,Version> getInterfaceVersions()
      Get a map of the service interface name to Version information for all the service interfaces exposed by this endpoint description (i.e. those returned by EndpointDescription.getInterfaces() which have a
      Returns:
      Map of interface versions for all our service interfaces. Every service interface returned by EndpointDescription.getInterfaces() will have an associated Version, but it may have value Version#emptyVersion
    • getEndpointId

      public String getEndpointId()
      Returns:
      String ecf endpoint id
      Since:
      4.0
    • getTimestamp

      public Long getTimestamp()
      Returns:
      Long ecf timestamp
      Since:
      4.0
    • getRemoteServiceId

      public Long getRemoteServiceId()
      Returns:
      Long ecf remote service id
      Since:
      4.0
    • getContainerID

      public ID getContainerID()
    • getIdNamespace

      public String getIdNamespace()
    • getConnectTargetID

      public ID getConnectTargetID()
    • getIDFilter

      public ID[] getIDFilter()
    • getRemoteServiceFilter

      public String getRemoteServiceFilter()
    • isSameService

      public boolean isSameService(EndpointDescription other)
      Description copied from class: EndpointDescription
      Answers if this Endpoint Description refers to the same service instance as the given Endpoint Description. Two Endpoint Descriptions point to the same service if they have the same id or their framework UUIDs and remote service ids are equal.
      Overrides:
      isSameService in class EndpointDescription
      Parameters:
      other - The Endpoint Description to look at
      Returns:
      True if this endpoint description points to the same service as the other
    • getProperties

      public Map<String,Object> getProperties()
      Description copied from class: EndpointDescription
      Returns all endpoint properties.
      Overrides:
      getProperties in class EndpointDescription
      Returns:
      An unmodifiable map referring to the properties of this Endpoint Description.
    • getAsyncInterfaces

      public List<String> getAsyncInterfaces()
      Returns:
      List ecf asynchronous proxy interfaces
      Since:
      4.0
    • toString

      public String toString()
      Description copied from class: EndpointDescription
      Returns the string representation of this EndpointDescription.
      Overrides:
      toString in class EndpointDescription
      Returns:
      String form of this EndpointDescription.