Class ServletContextLocator

  • All Implemented Interfaces:
    Locator

    public class ServletContextLocator
    extends java.lang.Object
    implements Locator
    Locator based on ServletContext.
    Author:
    tomyeh
    • Constructor Summary

      Constructors 
      Constructor Description
      ServletContextLocator​(javax.servlet.ServletContext ctx)
      Constructor.
      ServletContextLocator​(javax.servlet.ServletContext ctx, boolean acceptURL)
      Constructor.
      ServletContextLocator​(javax.servlet.ServletContext ctx, java.lang.String dir)
      Constructor.
      ServletContextLocator​(javax.servlet.ServletContext ctx, java.lang.String dir, java.lang.String prefix)
      Constructor.
      ServletContextLocator​(javax.servlet.ServletContext ctx, java.lang.String dir, java.lang.String prefix, boolean acceptURL)
      Constructor.
      ServletContextLocator​(javax.servlet.ServletContext ctx, java.lang.String dir, java.lang.String prefix, boolean acceptURL, java.lang.String externalPrefix)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object o)  
      java.lang.String getDirectory()
      Returns the directory used to resolve the relative path, or null if relative path is not allowed.
      java.net.URL getResource​(java.lang.String name)
      Finds the resource with the given name.
      java.io.InputStream getResourceAsStream​(java.lang.String name)
      Returns an input stream for reading the specified resource.
      javax.servlet.ServletContext getServletContext()
      Returns the servlet context.
      int hashCode()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ServletContextLocator

        public ServletContextLocator​(javax.servlet.ServletContext ctx)
        Constructor. A short cut of ServletContextLocator(ctx, null, null, false)
      • ServletContextLocator

        public ServletContextLocator​(javax.servlet.ServletContext ctx,
                                     java.lang.String dir)
        Constructor. A short of ServletContextLocator(ctx, dir, null, false, null).
        Parameters:
        dir - the directory used when relative path is specified (for getResource(java.lang.String) and getResourceAsStream(java.lang.String)). It must be null, empty, or starts with /.
      • ServletContextLocator

        public ServletContextLocator​(javax.servlet.ServletContext ctx,
                                     java.lang.String dir,
                                     java.lang.String prefix)
        Constructor. A short cut of ServletContextLocator(ctx, dir, prefix, false, null).
      • ServletContextLocator

        public ServletContextLocator​(javax.servlet.ServletContext ctx,
                                     java.lang.String dir,
                                     java.lang.String prefix,
                                     boolean acceptURL)
        Constructor. A short cut of ServletContextLocator(ctx, dir, prefix, acceptURL, null).
      • ServletContextLocator

        public ServletContextLocator​(javax.servlet.ServletContext ctx,
                                     java.lang.String dir,
                                     java.lang.String prefix,
                                     boolean acceptURL,
                                     java.lang.String externalPrefix)
        Constructor. For example, if prefix is "/WEB-INF/cwr", then getResource("/abc") will look for "/WEB-INF/cwr/abc" first, and then "/abc".

        Another example, if prefix is "/WEB-INF/cwr" and dir is "/subdir", then getResource("abc") will look for "/WEB-INF/cwr/subdir/abc".

        Parameters:
        dir - the directory used when relative path is specified (for getResource(java.lang.String) and getResourceAsStream(java.lang.String)). It must be null, empty, or starts with /.
        prefix - the directory to prefix each directory specified (for getResource(java.lang.String) and getResourceAsStream(java.lang.String)). It must be null, empty, or starts with /.
        acceptURL - whether to URL (such as file:/, http:// and ftp://) are accepted. In other words, Servlets.getResource(javax.servlet.ServletContext, java.lang.String) will be used.
    • Method Detail

      • getServletContext

        public javax.servlet.ServletContext getServletContext()
        Returns the servlet context.
      • getDirectory

        public java.lang.String getDirectory()
        Description copied from interface: Locator
        Returns the directory used to resolve the relative path, or null if relative path is not allowed.

        Note: if the returned directory is not null, it must end with '/'.

        Specified by:
        getDirectory in interface Locator
      • getResource

        public java.net.URL getResource​(java.lang.String name)
        Description copied from interface: Locator
        Finds the resource with the given name. A resource is some data (images, audio, text, etc) that can be accessed by class code in a way that is independent of the location of the code.
        Specified by:
        getResource in interface Locator
        Returns:
        a URL for reading the resource, or null if the resource could not be found or the caller doesn't have adequate privileges to get the resource
      • getResourceAsStream

        public java.io.InputStream getResourceAsStream​(java.lang.String name)
        Description copied from interface: Locator
        Returns an input stream for reading the specified resource.
        Specified by:
        getResourceAsStream in interface Locator
        Returns:
        an input stream for reading the resource, or null if the resource could not be found or the caller doesn't have adequate privileges to get the resource
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object