Interface RelativePathResolver

All Known Implementing Classes:
RelativePathResolver_impl

public interface RelativePathResolver
Used by the resource manager to resolve relative URLs to absolute URLs.
  • Field Details

  • Method Details

    • getDataPath

      @Deprecated(since="3.3.0") String getDataPath()
      Deprecated.
      Gets the data path used to resolve relative paths. More than one directory may be specified by separating them with the System path.separator character (; on windows, : on UNIX). Elements of this path may be absolute or relative file paths.

      Note: This method will only return file paths. If any non-file URLs have been added to the data path e.g via setDataPathElements(URL...), these will not be included. Use getDataPathUrls() to get a full list.

      Returns:
      the data path
    • getDataPathElements

      @Deprecated(since="3.6.0") List<String> getDataPathElements()
      Deprecated.
      Use getDataPathUrls() instead.
      Gets the data path used to resolve relative paths. Elements of this path may be absolute or relative file paths.

      Note: This method will only return file paths. If any non-file URLs have been added to the data path e.g via setDataPathElements(URL...), these will not be included. Use getDataPathUrls() to get a full list.

      Returns:
      the data path
    • getDataPathUrls

      List<URL> getDataPathUrls()
      Gets the data path used to resolve relative paths. Elements of this path may be absolute or relative URLs.
      Returns:
      the data path
    • setDataPath

      @Deprecated(since="3.3.0") void setDataPath(String aPath) throws MalformedURLException
      Sets the data path used to resolve relative paths. More than one directory may be specified by separating them with the System path.separator character (; on windows, : on UNIX). Elements of this path may be absolute or relative file paths.
      Parameters:
      aPath - the data path
      Throws:
      MalformedURLException - if a file path could not be converted to a URL
    • setDataPathElements

      void setDataPathElements(String... aElements) throws MalformedURLException
      Sets the data path elements used to resolve relative paths. Elements of this path may be URLs or absolute or relative file paths.
      Parameters:
      aElements - the data path elements
      Throws:
      MalformedURLException - if a file path could not be converted to a URL
    • setDataPathElements

      void setDataPathElements(File... aElements) throws MalformedURLException
      Sets the data path elements used to resolve relative paths. Elements of this path may be absolute or relative file paths.
      Parameters:
      aElements - the data path elements
      Throws:
      MalformedURLException - if a file path could not be converted to a URL
    • setDataPathElements

      void setDataPathElements(URL... aURLs)
      Sets the data path elements used to resolve relative paths. Elements of this path may be absolute or relative URLs.
      Parameters:
      aURLs - the data path aURLs
    • resolveRelativePath

      @Deprecated URL resolveRelativePath(URL aUrl)
      Deprecated.
      Resolves an URLrelative to each element of the data path, sequentially starting with the first element. If this results in an absolute URL at which a file actually exists, that absolute URL is returned. If no file could be found, null is returned.
      Parameters:
      aUrl - the URL to be resolved (if an absolute URL is specified, it will be returned unmodified if a file actually exists at the URL; otherwise null will be returned).
      Returns:
      the absolute URL at which the file exists, null it none could be found.
    • resolveRelativePath

      URL resolveRelativePath(String aPathOrUrl)
      Resolves a path relative to each element of the data path, sequentially starting with the first element. If this results in an absolute URL at which a file actually exists, that absolute URL is returned. If no file could be found, null is returned.

      Note: For backwards compatibility, it is still allowed to specify relative URLs here such as file:foo/foo.txt and this will effectively work as if foo/foo.txt had been specified. The protocol is simply discarded. Future versions will no longer accept a protocol in relative paths.

      Parameters:
      aPathOrUrl - the path/URL to be resolved (if an absolute URL is specified, it will be returned unmodified if a file actually exists at the URL; otherwise null will be returned).
      Returns:
      the absolute URL at which the file exists, null it none could be found.
    • setPathResolverClassLoader

      void setPathResolverClassLoader(ClassLoader aClassLoader)
      Sets the ClassLoader that should be used to resolve the resources.
      Parameters:
      aClassLoader - the ClassLoader that should be used to resolve the resources.