Class IntegratedWebServer

java.lang.Object
com.iizix.jetty.IntegratedWebServer
All Implemented Interfaces:
IWebServerCompression

public class IntegratedWebServer extends Object implements IWebServerCompression
The Jetty integrated web server class in iiziGo Designer.
Author:
Christopher Mindus
  • Constructor Details

    • IntegratedWebServer

      public IntegratedWebServer(File parentDir, Map<String,File> redirect, String root)
      The constructor
  • Method Details

    • startWebServer

      public int startWebServer(IExternalBrowserPages extPages, IWSFileProviderServer fileProvider, WebSocketAcceptor acceptor, String extServerURL, PortConfig[] portConfigs, KeyStore keyStore, String pw, boolean useGzip)
      Starts the web server.
      Parameters:
      extPages - External pages implementor, null for none.
      fileProvider - File provider interface.
      acceptor - The acceptor for engine requests.
      extServerURL - External server URL, null to use canonical URL from ports.
      portConfigs - The port configurations.
      keyStore - The KeyStore to use, null for self-signed.
      pw - The KeyStore password, null for self-signed.
      useGzip - Flag to use GZip or not.
      Returns:
      The port used, 0 for failure, the first HTTP port is used if found, 0 otherwise.
    • getExternalServerURL

      public String getExternalServerURL()
      Returns the external server URL.
      Returns:
      The external web server base URL, or null for none.
    • getWebServerPort

      public int getWebServerPort()
      Gets the started web server port.
      Returns:
      The port number, zero for not started.
    • getSecureWebServerPort

      public int getSecureWebServerPort()
      Gets the started secure (HTTPS) web server port.
      Returns:
      The port number, zero for not started.
    • stopWebServer

      public boolean stopWebServer(long maxTime)
      Stops the web server.
      Parameters:
      maxTime - Max time to wait for server to stop, <=0 is forever.
      Returns:
      true for success, false for timeout.
    • addFileRedirection

      public void addFileRedirection(String name, File file)
      Puts a compressed file name into the resource cache of the web server.
      Specified by:
      addFileRedirection in interface IWebServerCompression
      Parameters:
      name - The file name, typically "iizi*-build.css" or "iizi*-build.js".
      file - The compressed CSS or JS file.
    • addFileRedirection

      public void addFileRedirection(File originalFile, File compressedfile)
      Puts a compressed file name into the resource cache of the web server.
      Specified by:
      addFileRedirection in interface IWebServerCompression
      Parameters:
      originalFile - The original uncompressed file.
      compressedfile - The compressed CSS or JS file.
    • startAgainWebServer

      public int startAgainWebServer(String extServerURL, PortConfig[] portConfigs, KeyStore keyStore, String pw, boolean useGzip)
      Restarts the web server once it is stopped.
      Parameters:
      extServerURL - External server URL, null to use canonical URL from ports.
      portConfigs - The port configurations.
      keyStore - The KeyStore to use, null for self-signed.
      pw - The KeyStore password, null for self-signed.
      useGzip - Flag to use GZip or not.
      Returns:
      The port used, 0 for failure, the first HTTP port is used if found, 0 otherwise.