Interface ResourceHandler

All Known Implementing Classes:
AbstractCompiledResourceHandler, AbstractSourceMapResourceHandler, CssResourceHandler, CSSSourceMapResourceHandler, DefaultResourceHandler, ExpiresResourceHandler, I18nTextResourceHandler, ImageResourceHandler, JSResourceHandler, JSSourceMapResourceHandler, LessResourceHandler, MinimizedCSSResourceHandler, MinimizedJSResourceHandler, PdfCoverResourceHandler, SassResourceHandler, SassSourceMapResourceHandler, SimpleResourceHandler, UncompiledSassResourceHandler, VueJsResourceHandler

public interface ResourceHandler
Interface used to handle resources
  • Method Summary

    Modifier and Type
    Method
    Description
    default boolean
    Returns true if this ResourceHandler handles "Range" requests.
    void
    Generate the resource configured during setup, and output it
    default void
    generate(OutputStream out, long offset, long length)
    Generate the resource configured during setup in the context of a range request.
    Get the unique key for this resource, for cache purpose.
    long
    Get the resource last modified time
    default long
    Get the resource size, if available.
    Return the mime type of the configured resource.
    Get the resource validity, for cache purpose.
    setup(String source, Map objectModel, Parameters par, boolean readForDownload)
    Initialize the resource handler with a resource.
    default boolean
    Returns true if the response Content-Length header should be set according to the source's length (ie.
  • Method Details

    • setup

      Source setup(String source, Map objectModel, Parameters par, boolean readForDownload) throws IOException, ProcessingException
      Initialize the resource handler with a resource.
      Parameters:
      source - The source uri
      objectModel - The object model
      par - The parameters
      readForDownload - if the resource is to be downloaded and not rendered.
      Returns:
      the resolved source
      Throws:
      IOException - If an error occurs
      ProcessingException - If an error occurs
    • acceptRanges

      default boolean acceptRanges()
      Returns true if this ResourceHandler handles "Range" requests. false by default.
      Returns:
      true if this ResourceHandler handles "Range" requests.
    • generate

      Generate the resource configured during setup, and output it
      Parameters:
      out - The output stream to write to
      Throws:
      IOException - If an error occurs
      ProcessingException - If an error occurs
    • generate

      default void generate(OutputStream out, long offset, long length) throws IOException, ProcessingException
      Generate the resource configured during setup in the context of a range request.
      Parameters:
      out - The output stream to write to
      offset - the first byte to send
      length - the stream length to send
      Throws:
      IOException - If an error occurs
      ProcessingException - If an error occurs
    • getKey

      Get the unique key for this resource, for cache purpose.
      Returns:
      The cache key.
    • getValidity

      Get the resource validity, for cache purpose.
      Returns:
      The resource validity.
    • getLength

      default long getLength()
      Get the resource size, if available. -1 if unknown.
      Returns:
      The resource size.
    • getLastModified

      Get the resource last modified time
      Returns:
      The last modified
    • getMimeType

      Return the mime type of the configured resource.
      Returns:
      The mime type.
    • shouldUseSourceContentLength

      default boolean shouldUseSourceContentLength()
      Returns true if the response Content-Length header should be set according to the source's length (ie. the source is not transformed during processing).
      Returns:
      true if the source's length can be relied on