1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package dev.metaschema.core.model;
7   
8   import edu.umd.cs.findbugs.annotations.NonNull;
9   
10  /**
11   * Base implementation of {@link IResourceResolver} providing URI resolution
12   * support.
13   * <p>
14   * This class maintains an optional {@link IUriResolver} that can be configured
15   * to customize URI resolution behavior.
16   */
17  public class AbstractResourceResolver implements IResourceResolver {
18    /**
19     * An {@link IUriResolver} is not provided by default.
20     */
21    private IUriResolver uriResolver;
22  
23    @Override
24    public IUriResolver getUriResolver() {
25      return uriResolver;
26    }
27  
28    /**
29     * Set the URI resolver for this resource resolver.
30     *
31     * @param uriResolver
32     *          the URI resolver
33     */
34    public void setUriResolver(@NonNull IUriResolver uriResolver) {
35      this.uriResolver = uriResolver;
36    }
37  }