Interface GlobalInvocationResolver

All Known Implementing Classes:
BootstrapRegistry, ServiceRegistry, TwoPhaseBootstrap

public interface GlobalInvocationResolver
Interface for late resolution of global URIs. It provides the corresponding invocation target for a global URI and invalidates the global registry in case of problems.
  • Method Details

    • getInvocationTarget

      Pair<InvocationTarget,URI> getInvocationTarget(URI uri)
      Gets the invocation target for the designated URI. In case of a global URI this will be transformed to the corresponding local URI. The invocation target for the communication service of the local URI will be returned together with the local URI. In case of a local URI, this will be used directly. If the communication service referred communication service is not an invocation communication service or it cannot be retrieved, a ServiceConnectionException will be thrown.
      This method is only used by the global communication stub.
      Parameters:
      uri - The URI for which to retrieve the concrete communication service.
      Returns:
      The invocation communication service for the designated URI.
      Throws:
      de.aristaflow.adept2.model.communication.ServiceConnectionException - If
      • the global registry cannot be retrieved,
      • the global registry does not know the designated URI or
      • none of the local URIs refer to a known communication service,
      a ServiceConnectionException will be thrown.
    • invalidateGlobalRegistry

      void invalidateGlobalRegistry()
      Invalidates the global registry in case of communication problems. If a global URI is resolved to a local URI and there are communication problems with this local URI, the local URI is expected to be invalid and the global registry should be renewed.