Class ResourceUtils

java.lang.Object
org.apache.shiro.lang.io.ResourceUtils

public class ResourceUtils extends Object
Static helper methods for loading Stream-backed resources.
Since:
0.2
See Also:
  • Field Details

    • CLASSPATH_PREFIX

      public static final String CLASSPATH_PREFIX
      Resource path prefix that specifies to load from a classpath location, value is classpath:
      See Also:
    • URL_PREFIX

      public static final String URL_PREFIX
      Resource path prefix that specifies to load from a url location, value is url:
      See Also:
    • FILE_PREFIX

      public static final String FILE_PREFIX
      Resource path prefix that specifies to load from a file location, value is file:
      See Also:
  • Method Details

    • hasResourcePrefix

      public static boolean hasResourcePrefix(String resourcePath)
      Returns true if the resource path is not null and starts with one of the recognized resource prefixes (CLASSPATH_PREFIX, URL_PREFIX, or FILE_PREFIX), false otherwise.
      Parameters:
      resourcePath - the resource path to check
      Returns:
      true if the resource path is not null and starts with one of the recognized resource prefixes, false otherwise.
      Since:
      0.9
    • resourceExists

      public static boolean resourceExists(String resourcePath)
      Returns true if the resource at the specified path exists, false otherwise. This method supports scheme prefixes on the path as defined in getInputStreamForPath(String).
      Parameters:
      resourcePath - the path of the resource to check.
      Returns:
      true if the resource at the specified path exists, false otherwise.
      Since:
      0.9
    • getInputStreamForPath

      public static InputStream getInputStreamForPath(String resourcePath) throws IOException
      Returns the InputStream for the resource represented by the specified path, supporting scheme prefixes that direct how to acquire the input stream (CLASSPATH_PREFIX, URL_PREFIX, or FILE_PREFIX). If the path is not prefixed by one of these schemes, the path is assumed to be a file-based path that can be loaded with a FileInputStream.
      Parameters:
      resourcePath - the String path representing the resource to obtain.
      Returns:
      the InputStream for the specified resource.
      Throws:
      IOException - if there is a problem acquiring the resource at the specified path.
    • close

      public static void close(InputStream is)
      Convenience method that closes the specified InputStream, logging any IOException that might occur. If the InputStream argument is null, this method does nothing. It returns quietly in all cases.
      Parameters:
      is - the InputStream to close, logging any IOException that might occur.