Interface IBmExternalUriResolver

All Known Implementing Classes:
BmTextDocumentLinkProvider, BslBmLinkProvider, PlatformObjectUriResolver, WSDefinitionLinkProvider, XdtoLinkProvider, XtextBmLinkProvider

public interface IBmExternalUriResolver
Interface for components responsible for resolving URIs that does not belong to the engine the resolver is associated with.
  • Method Summary

    Modifier and Type
    Method
    Description
    org.eclipse.emf.ecore.EObject
    getObject(org.eclipse.emf.common.util.URI uri)
    Resolves the specified URI.
    org.eclipse.emf.ecore.resource.Resource
    getResource(org.eclipse.emf.common.util.URI uri)
    Ask link providers to obtain resource matched with specified URI.
    boolean
    Designates that resources being returned by this resolver remain as-is (with original resource set and so on) and not being copied to the session.
    default void
    Reset caches of a resolver if applicable
    boolean
    supports(org.eclipse.emf.common.util.URI uri)
    Checks if the specified URI is supported.
  • Method Details

    • getResource

      org.eclipse.emf.ecore.resource.Resource getResource(org.eclipse.emf.common.util.URI uri)
      Ask link providers to obtain resource matched with specified URI. Used to provider resources for system types.
      Parameters:
      uri - The resource URI. May not be null
      Returns:
      the loaded resource if found, otherwise null.
    • getObject

      org.eclipse.emf.ecore.EObject getObject(org.eclipse.emf.common.util.URI uri)
      Resolves the specified URI.
      Parameters:
      uri - The URI. May not be null.
      Returns:
      the object identified by the specified URI if found, otherwise null.
    • isPassthrough

      boolean isPassthrough()
      Designates that resources being returned by this resolver remain as-is (with original resource set and so on) and not being copied to the session. This approach can be used by complex resource providers requiring specific support from original resource sets (like Xtext).
      BM could use such link providers for seamless URI resolution to external resources that shouldn't be cached out in the BM resource set.
      Returns:
      true if this resolver works in the passthrough mode; false otherwise.
    • supports

      boolean supports(org.eclipse.emf.common.util.URI uri)
      Checks if the specified URI is supported.
      Parameters:
      uri - The URI to run the check against. May not be null.
      Returns:
      true if the URI is supported by this resolver, otherwise false.
    • resetCaches

      default void resetCaches()
      Reset caches of a resolver if applicable