Class DatasetResolverRegistry

java.lang.Object
dev.dokimos.core.DatasetResolverRegistry

public class DatasetResolverRegistry extends Object
Singleton registry for dataset resolvers.

Manages the discovery and registration of dataset resolvers, supporting both service provider interface (SPI) based auto-discovery and programmatic registration. Resolvers are tried in order until one matches the given URI.

  • Method Details

    • getInstance

      public static DatasetResolverRegistry getInstance()
      Returns the singleton registry instance.
      Returns:
      the registry instance
    • register

      public void register(DatasetResolver resolver)
      Registers a custom resolver with the highest priority.

      The resolver is added at the beginning of the resolver chain and will be consulted before any previously registered resolvers.

      Parameters:
      resolver - the resolver to register
    • resolve

      public Dataset resolve(String uri)
      Resolves a URI to a dataset using the first matching resolver.

      Iterates through registered resolvers in order until one supports the given URI.

      Parameters:
      uri - the dataset URI to resolve
      Returns:
      the resolved dataset
      Throws:
      DatasetResolutionException - if no resolver supports the URI