Package com.iizigo.webserver
Class InternalWebServer
- java.lang.Object
- org.eclipse.core.runtime.Plugin
- org.eclipse.ui.plugin.AbstractUIPlugin
- com.iizigo.webserver.InternalWebServer
- All Implemented Interfaces:
org.osgi.framework.BundleActivator
public class InternalWebServer extends org.eclipse.ui.plugin.AbstractUIPluginThe activator class controls the plug-in life cycle for the Internal Web Server using Jetty.- Author:
- Christopher Mindus
Field Summary
Fields Modifier and Type Field Description static java.lang.StringPLUGIN_IDThe plug-in ID.
Constructor Summary
Constructors Constructor Description InternalWebServer()The constructor
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetFileUrl(java.lang.String fileName)Gets the URL string for a file in the root using the File protocol.java.lang.StringgetHTTPFileUrl(java.lang.String fileName)Gets the URL string for a file in the root using the HTTP protocol.static InternalWebServergetInstance()Returns the shared instance.intgetSecureWebServerPort()Gets the started secure (HTTPS) web server port.IntegratedWebServergetServer()Gets the Integrated Jetty Server instance.java.io.FilegetWebServerMapping(java.lang.String mappedFile)Gets the map of web server mappings for files.intgetWebServerPort()Gets the started web server port.voidstart(org.osgi.framework.BundleContext context)intstartWebServer(IExternalBrowserPages extPages, IWSFileProviderServer fileProvider, WebSocketAcceptor acceptor)Starts the web server.voidstop(org.osgi.framework.BundleContext context)booleanstopWebServer(long maxTime)Stops the web server.Methods inherited from class org.eclipse.ui.plugin.AbstractUIPlugin
createImageRegistry, getDialogSettings, getImageRegistry, getPreferenceStore, getWorkbench, imageDescriptorFromPlugin, initializeDefaultPluginPreferences, initializeDefaultPreferences, initializeImageRegistry, loadDialogSettings, loadPreferenceStore, refreshPluginActions, saveDialogSettings, savePreferenceStore, shutdown, startup
Field Detail
PLUGIN_ID
public static final java.lang.String PLUGIN_ID
The plug-in ID.- See Also:
- Constant Field Values
Method Detail
start
public void start(org.osgi.framework.BundleContext context) throws java.lang.Exception- Specified by:
startin interfaceorg.osgi.framework.BundleActivator- Overrides:
startin classorg.eclipse.ui.plugin.AbstractUIPlugin- Throws:
java.lang.Exception
getInstance
public static InternalWebServer getInstance()
Returns the shared instance.- Returns:
- the shared instance.
startWebServer
public int startWebServer(IExternalBrowserPages extPages, IWSFileProviderServer fileProvider, WebSocketAcceptor acceptor)
Starts the web server.- Parameters:
extPages- External pages implementor, null for none.fileProvider- File provider interface.acceptor- The acceptor for engine requests.- Returns:
- The port used, 0 for failure.
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.
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.
stop
public void stop(org.osgi.framework.BundleContext context) throws java.lang.Exception- Specified by:
stopin interfaceorg.osgi.framework.BundleActivator- Overrides:
stopin classorg.eclipse.ui.plugin.AbstractUIPlugin- Throws:
java.lang.Exception
getHTTPFileUrl
public java.lang.String getHTTPFileUrl(java.lang.String fileName)
Gets the URL string for a file in the root using the HTTP protocol.- Parameters:
fileName- File name relative the root.- Returns:
- A String like "http://127.0.0.1:port/name".
getFileUrl
public java.lang.String getFileUrl(java.lang.String fileName)
Gets the URL string for a file in the root using the File protocol.- Parameters:
fileName- File name relative the root.- Returns:
- A String like "file:...";
getServer
public IntegratedWebServer getServer()
Gets the Integrated Jetty Server instance.
getWebServerMapping
public java.io.File getWebServerMapping(java.lang.String mappedFile)
Gets the map of web server mappings for files.- Parameters:
mappedFile- The file to map.- Returns:
- The mapping from String (such as "dojo.root" or "iiziRun.root") to File Returns null if not found.