Class ExternalBrowserPagesImpl

java.lang.Object
com.iizigo.comm.ExternalBrowserPagesImpl
All Implemented Interfaces:
IExternalBrowserPages

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

    • ExternalBrowserPagesImpl

      public ExternalBrowserPagesImpl(InternalWebServer webServer)
      Constructor.
  • Method Details

    • setTooltipPreview

      public static String setTooltipPreview(String html)
      Sets the current tooltip preview.
      Parameters:
      html - The HTML string to set as preview.
      Returns:
      The resource to use in a browser.
    • initialize

      public void initialize(IntegratedWebServer iws)
      Called when initialized.
    • doAuthenticate

      public boolean doAuthenticate(PortConfig portConfig, 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:
      portConfig - The port configuration.
      target - The target URI.
      Returns:
      true if authentication should be performed, false otherwise.
    • getFileOrResource

      public Object getFileOrResource(String location, 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 for the resource, null for none.
    • isTargetValid

      public boolean isTargetValid(PortConfig portConfig, String target)
      Checks for valid target to handle.
      Specified by:
      isTargetValid in interface IExternalBrowserPages
      Parameters:
      portConfig - The port configuration.
      target - The target URI.
      Returns:
      true if target is processed as an external page, false otherwise.
    • print

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

      public File getCustomizedAppHTML(File file, String appID, String lang)
      Gets a customized "iiziApp.html" file for a specific application ID and optional language.
      Specified by:
      getCustomizedAppHTML in interface IExternalBrowserPages
      Parameters:
      file - The compressed iiziApp.html file without customization.
      appID - The application ID.
      lang - The language requested, or null for default.
      Returns:
      The customized (and probably cached) file to send instead of the un-customized one, or null for none, i.e. in case an application ID is not found.