Class ClassDownloadHandler

All Implemented Interfaces:
DownloadHandler, ElementRequestHandler, Serializable

public class ClassDownloadHandler extends AbstractDownloadHandler<ClassDownloadHandler>
Download handler for serving a class resource.

For instance for the file resources/com/example/ui/MyData.json and class com.example.ui.MyData the definition would be forClassResource(MyData.class, "MyData.json")

Since:
24.8
See Also:
  • Constructor Details

    • ClassDownloadHandler

      public ClassDownloadHandler(Class<?> clazz, String resourceName)
      Create a class resource download handler with the resource name as the url postfix (file name).

      The downloaded file name and download URL postfix will be set to resourceName. If you want to use a different file name, use ClassDownloadHandler(Class, String, String) instead.

      Parameters:
      clazz - class to use for getting resource
      resourceName - resource to get
    • ClassDownloadHandler

      public ClassDownloadHandler(Class<?> clazz, String resourceName, String fileName)
      Create a class resource download handler with the given file name as the url postfix.

      The downloaded file name and download URL postfix will be set to fileName.

      Parameters:
      clazz - class to use for getting resource
      resourceName - resource to get
      fileName - download file name that overrides resourceName and also used as a download request URL postfix
  • Method Details

    • handleDownloadRequest

      public void handleDownloadRequest(DownloadEvent downloadEvent) throws IOException
      Description copied from interface: DownloadHandler
      Method that is called when the client wants to download from the url stored for this specific handler registration.
      Parameters:
      downloadEvent - download event containing the necessary data for writing the response
      Throws:
      IOException - if an IO error occurred during download
    • getUrlPostfix

      public String getUrlPostfix()
      Description copied from interface: ElementRequestHandler
      Optional URL postfix allows appending an application-controlled string, e.g. the logical name of the target file, to the end of the otherwise random-looking download URL. If defined, requests that would otherwise be routable are still rejected if the postfix is missing or invalid. Postfix changes the last segment in the resource url.
      Returns:
      String optional URL postfix, or null for "".