Package com.iizix.server
Class JettyRunConfiguration
java.lang.Object
com.iizix.server.ServerShell
com.iizix.server.JettyRunConfiguration
- All Implemented Interfaces:
IWebServiceEngine,WebSocketAcceptor,IAdditonalInformation<UserInfoHistoryEntry>,IAppLoader,IServer,IKStringInfoProviderHolder
- Direct Known Subclasses:
RuntimeBuilderServer,StandardServer
Server using Jetty to serve a Run Configuration launch of an application from Eclipse. It is assumed that the application is an IIZI Module project that may refer to others, including Java projects.
The classpath is set-up from Eclipse when the JRE launches the main(args) static method. This code and other IIZI parts are set in the classpath from either Jar files if using a "distribution environment", or the directories hard-coded if using an "IIZI development environment".
- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.server.IServer
IServer.InvalidAppID, IServer.StateField Summary
Fields inherited from class com.iizix.server.ServerShell
externalBrowserPages, memoryJarFactory, xjarFactoryFields inherited from interface com.iizix.server.IServer
MAX_VALID_APP_ID_LENGTHConstructor Summary
ConstructorsConstructorDescriptionJettyRunConfiguration(File configFile, String extServerURL, String root, AppDefinition[] apps, Map<String, String> appAliases) Constructor.Method Summary
Modifier and TypeMethodDescriptionvoidconfigureProxy(HttpURLConnection urlConnection) Configures a Http(s)URLConnection for proxy information.booleanFlag indicating the normal HTML files needs compression along with CSS minify and JS compression.Gets a proxy to use for an URL.Gets the web server root directory.Gets the web server compression interface.getWebServerMapping(String mappedFile) Gets the map of web server mappings for files.voidCalled to load the application.static voidEntry point for development server start.protected static voidmain(String[] args, boolean isDevelServer, Class<? extends JettyRunConfiguration> serverClass) Entry point for server start.protected voidDisposes of the server.voidCalled to initialize the server.Methods inherited from class com.iizix.server.ServerShell
_getState, _registerApplication, _unregisterApplication, addDisposeListener, addEndPointListener, addFileUploader, addModule, addUserLoginProhibitedInterval, configureSessionMgr, dispose, flushStartupLog, getAccessibleEnvironments, getActiveUserSessions, getAdditionalInformation, getAppAliases, getApplication, getApplications, getCurrentDirectory, getDefaultMailSender, getEmailVerificationURL, getEndPointsInstances, getETag, getExecutorService, getExternalWebServerBaseURL, getFileProviderEngine, getHandledContextPaths, getHistory, getInfoClass, getInstance, getInstance, getKStringInfoProvider, getMailSender, getPropertyFactory, getPropertyManager, getServerConfigFile, getServerLogger, getServerProperties, getServerSettings, getServerThreadGroup, getSourceResolver, getStartTime, getState, getTXPCoordinator, getUserLoginProhibitedIntervals, getWebLogos, getWebThumbs, getWorker, getWSUploaderService, initializeCompressedFiles, initializeURNFactory, isRequestURIAccepted, isUserLoginEnabled, isUserLoginPermittedNow, loadFile, loadFile, loadPlugins, loadPluginsAndConfig, loadServerConfig, onApplicationSessionStarted, onApplicationSessionStopped, onDisposed, onEndPointDisposed, registerApplication, registerApplication, registerEndPointConstructor, registerRegionLocationServiceProviders, registerRequestPrinter, removeDisposeListener, removeEndPointListener, removeFileUploader, removeModule, saveFile, saveServerConfig, setUserLoginEnabled, setWSFileProviderEngine, shutdownRegionLocationServiceProviders, startServer, unregisterApplication, unregisterEndPointConstructor, unregisterRequestPrinter, updateWebServerRoot
Constructor Details
JettyRunConfiguration
public JettyRunConfiguration(File configFile, String extServerURL, String root, AppDefinition[] apps, Map<String, String> appAliases) throws IOException, PropExceptionConstructor.- Parameters:
configFile- The configuration file, null for default.extServerURL- The external server URL, null for default.root- The Web Server root, null for default.apps- The apps loaded.appAliases- App aliases table.- Throws:
IOException- For load failure.PropException- For property errors.
Method Details
main
Entry point for development server start.main
protected static void main(String[] args, boolean isDevelServer, Class<? extends JettyRunConfiguration> serverClass) Entry point for server start.onStartServer
Called to initialize the server.- Specified by:
onStartServerin interfaceIServer- Overrides:
onStartServerin classServerShell- Throws:
Throwable- for start-up errors.
getRootDirectory
Gets the web server root directory.- Returns:
- The directory, or null if web server is not started.
loadApplications
Called to load the application.- Specified by:
loadApplicationsin interfaceIServer- Specified by:
loadApplicationsin classServerShell- Throws:
Throwable- for start-up errors.
onDispose
protected void onDispose()Disposes of the server.- Overrides:
onDisposein classServerShell
getWebServerMapping
Gets the map of web server mappings for files.- Overrides:
getWebServerMappingin classServerShell- 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.
getWebServerCompression
Gets the web server compression interface.- Specified by:
getWebServerCompressionin classServerShell- Returns:
- The instance of the interface implemented by the web server.
doCompressNormalHTML
public boolean doCompressNormalHTML()Flag indicating the normal HTML files needs compression along with CSS minify and JS compression.The files are typically: iiziApp.html and iiziVSViewer.html.
- Specified by:
doCompressNormalHTMLin classServerShell- Returns:
- true by default, override to return false (e.g. for internal development).
getProxy
Gets a proxy to use for an URL.- Parameters:
url- The URL.- Returns:
- The Proxy to use.
configureProxy
Configures a Http(s)URLConnection for proxy information.- Parameters:
urlConnection- The HttpURLConnection or HttpsURLConnection.