Class ExternalBrowserPagesImpl

  • All Implemented Interfaces:
    IExternalBrowserPages

    public class ExternalBrowserPagesImpl
    extends java.lang.Object
    implements IExternalBrowserPages
    Class to handle external web pages with embedded Jetty.
    Author:
    Christopher Mindus
    • Constructor Detail

      • ExternalBrowserPagesImpl

        public ExternalBrowserPagesImpl​(ServerShell server)
        Constructor.
    • Method Detail

      • doAuthenticate

        public boolean doAuthenticate​(java.lang.String target)
        Checks if a request URL is a WebSocket request or an Application URI that should not use authentication.
        Specified by:
        doAuthenticate in interface IExternalBrowserPages
        Parameters:
        target - The target URI.
        Returns:
        true if authentication should be performed, false otherwise.
      • getFileOrResource

        public java.lang.Object getFileOrResource​(java.lang.String location,
                                                  java.lang.String target)
        Gets a File or Resource redirection from a web server target request, used for e.g. Asset resource files when used on the server and the file is inside a Jar.
        Specified by:
        getFileOrResource in interface IExternalBrowserPages
        Parameters:
        location - The location string between '/$' and '$/'
        target - The target string from the Web Server after last '$/' (i.e. after location), does NOT begin with '/'.
        Returns:
        The File or instance of Resource for the resource, null for none.
      • registerRequestPrinter

        public boolean registerRequestPrinter​(java.lang.String target,
                                              IWebServerRequestPrinter processor)
        Registers a new request printer.
        Parameters:
        target - The target URL, always starting with "/" and doesn't contain the query.
        processor - The print processor.
        Returns:
        true if added successfully, false if the print processor already exists.
      • unregisterRequestPrinter

        public boolean unregisterRequestPrinter​(java.lang.String target,
                                                IWebServerRequestPrinter processor)
        Unregister a previously registered request printer.
        Parameters:
        target - The target URL, always starting with "/" and doesn't contain the query.
        processor - The print processor.
        Returns:
        true if removed successfully, false if the print processor does not exist or doesn't match.
      • isTargetValid

        public boolean isTargetValid​(java.lang.String target)
        Checks for valid target to handle.
        Specified by:
        isTargetValid in interface IExternalBrowserPages
      • print

        public void print​(java.io.PrintWriter pw,
                          java.lang.String root,
                          java.lang.String target,
                          HttpServletRequest request,
                          HttpServletResponse response)
                   throws java.io.IOException
        Print the page output.
        Specified by:
        print in interface IExternalBrowserPages
        Parameters:
        pw - The print writer.
        root - The web server root.
        target - Target page.
        request - The request.
        response - The response.
        Throws:
        java.io.IOException - For I/O errors.