Package com.iizigo.comm
Class ExternalBrowserPagesImpl
- java.lang.Object
- com.iizigo.comm.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 Summary
Constructors Constructor Description ExternalBrowserPagesImpl(InternalWebServer webServer)
Constructor.
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
doAuthenticate(java.lang.String target)
Checks if a request URL is a WebSocket request or an Application URI that should not use authentication.java.io.File
getCustomizedAppHTML(java.io.File file, java.lang.String appID, java.lang.String lang)
Gets a customized "iiziApp.html" file for a specific application ID and optional language.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.void
initialize(IntegratedWebServer iws)
Called when initialized.boolean
isTargetValid(java.lang.String target)
Checks for valid target to handle.void
print(java.io.PrintWriter pw, java.lang.String root, java.lang.String target, HttpServletRequest request, HttpServletResponse response)
Print the page output.static java.lang.String
setTooltipPreview(java.lang.String html)
Sets the current tooltip preview.
Constructor Detail
ExternalBrowserPagesImpl
public ExternalBrowserPagesImpl(InternalWebServer webServer)
Constructor.
Method Detail
setTooltipPreview
public static java.lang.String setTooltipPreview(java.lang.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(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 interfaceIExternalBrowserPages
- 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 interfaceIExternalBrowserPages
- 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(java.lang.String target)
Checks for valid target to handle.- Specified by:
isTargetValid
in interfaceIExternalBrowserPages
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 interfaceIExternalBrowserPages
- 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.
getCustomizedAppHTML
public java.io.File getCustomizedAppHTML(java.io.File file, java.lang.String appID, java.lang.String lang)
Gets a customized "iiziApp.html" file for a specific application ID and optional language.- Specified by:
getCustomizedAppHTML
in interfaceIExternalBrowserPages
- Parameters:
file
- The compressed iiziApp.html file without customization.appID
- The application ID.lang
- The language requested, ornull
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.