Quadcap Embeddable Server

com.quadcap.http.server22.WebServer Class Reference

List of all members.

Detailed Description

A basic HTTP server.

Author:
Stan Bailes

Definition at line 95 of file WebServer.java.

Public Member Functions

void init (Properties p) throws Exception
 Server interface: initialize this server.

void stop ()
void removeWebApplication (String root)
WebApplication addWebApplication (String root, String docBase) throws IOException, ServletException
String getServerInfo ()
 Returns the name and version of the network service under which the servlet is running.

String getMimeTypeForExt (String ext)
 Returns the mime type of the specified file, or null if not known.

WebApplication getContext (String path)
 Return the servlet context for the specified path.

void expireSessions ()
Enumeration getContextRoots ()
WebApplication getContextForRoot (String root)
void requestLog (String s)

Static Public Member Functions

void main (String args[])

Package Functions

final void parseMimeTypes (InputStream is) throws IOException
String makeSessionId ()
final File getTempDir ()

Static Package Functions

 [static initializer]

Package Attributes

Random random = new Random()
String hostName = null
 My (cached) host name.

Hashtable contexts = new Hashtable()
 My servlet contexts.

Hashtable mimeTypes = new Hashtable()
 Default mime types.

WebApplication defaultContext = null
File tmpDir
long sessionCount = 0
PeriodicScheduler expireChecker
PrintWriter reqStream
Server server

Static Package Attributes

final int defaultInactiveInterval = 60
final int expireCheckerInterval = 60
SimpleDateFormat df


Member Function Documentation

com.quadcap.http.server22.WebServer.[static initializer]  )  [static, package]
 

WebApplication com.quadcap.http.server22.WebServer.addWebApplication String  root,
String  docBase
throws IOException, ServletException
 

Definition at line 288 of file WebServer.java.

References com.quadcap.http.server22.WebServer.addWebApplication(), com.quadcap.http.server22.WebServer.contexts, and com.quadcap.http.server22.WebApplication.init().

Referenced by com.quadcap.http.server22.WebServer.addWebApplication(), and com.quadcap.http.server22.WebServer.init().

void com.quadcap.http.server22.WebServer.expireSessions  ) 
 

Definition at line 366 of file WebServer.java.

References com.quadcap.http.server22.WebServer.contexts, and com.quadcap.http.server22.WebApplication.expireSessions().

WebApplication com.quadcap.http.server22.WebServer.getContext String  path  ) 
 

Return the servlet context for the specified path.

Definition at line 347 of file WebServer.java.

References com.quadcap.http.server22.WebServer.contexts, com.quadcap.http.server22.WebServer.defaultContext, and com.quadcap.http.server22.WebServer.getContext().

Referenced by com.quadcap.http.server22.WebWorker.doSession(), com.quadcap.http.server22.WebServer.getContext(), and com.quadcap.http.server22.WebApplication.getContext().

WebApplication com.quadcap.http.server22.WebServer.getContextForRoot String  root  ) 
 

Definition at line 382 of file WebServer.java.

References com.quadcap.http.server22.WebServer.contexts, and com.quadcap.http.server22.WebServer.getContextForRoot().

Referenced by com.quadcap.http.server22.WebServer.getContextForRoot(), and com.quadcap.http.server22.WebServer.removeWebApplication().

Enumeration com.quadcap.http.server22.WebServer.getContextRoots  ) 
 

Definition at line 378 of file WebServer.java.

References com.quadcap.http.server22.WebServer.contexts.

String com.quadcap.http.server22.WebServer.getMimeTypeForExt String  ext  ) 
 

Returns the mime type of the specified file, or null if not known.

Definition at line 339 of file WebServer.java.

References com.quadcap.http.server22.WebServer.getMimeTypeForExt(), and com.quadcap.http.server22.WebServer.mimeTypes.

Referenced by com.quadcap.http.server22.WebApplication.getMimeType(), and com.quadcap.http.server22.WebServer.getMimeTypeForExt().

String com.quadcap.http.server22.WebServer.getServerInfo  ) 
 

Returns the name and version of the network service under which the servlet is running.

Returns:
the server information string

Definition at line 329 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebWorker.init().

final File com.quadcap.http.server22.WebServer.getTempDir  )  [package]
 

Definition at line 374 of file WebServer.java.

References com.quadcap.http.server22.WebServer.tmpDir.

Referenced by com.quadcap.http.server22.WebApplication.init().

void com.quadcap.http.server22.WebServer.init Properties  p  )  throws Exception
 

Server interface: initialize this server.

Parameters:
p the properties used to specify information about the server's startup.
Exceptions:
IOException may be thrown

Definition at line 183 of file WebServer.java.

References com.quadcap.http.server22.WebServer.addWebApplication(), com.quadcap.http.server22.WebServer.defaultContext, com.quadcap.http.server22.WebServer.expireChecker, com.quadcap.http.server22.WebServer.expireCheckerInterval, com.quadcap.http.server22.WebServer.init(), com.quadcap.http.server22.WebServer.parseMimeTypes(), com.quadcap.http.server22.WebServer.reqStream, com.quadcap.http.server22.WebServer.server, and com.quadcap.http.server22.WebServer.tmpDir.

Referenced by com.quadcap.http.server22.WebServer.init(), and com.quadcap.http.server22.WebServer.main().

void com.quadcap.http.server22.WebServer.main String  args[]  )  [static]
 

Definition at line 386 of file WebServer.java.

References com.quadcap.http.server22.WebServer.init(), and com.quadcap.http.server22.WebServer.main().

Referenced by com.quadcap.http.server22.WebServer.main().

String com.quadcap.http.server22.WebServer.makeSessionId  )  [package]
 

Definition at line 360 of file WebServer.java.

References com.quadcap.http.server22.WebServer.random, and com.quadcap.http.server22.WebServer.sessionCount.

Referenced by com.quadcap.http.server22.WebApplication.createSession().

final void com.quadcap.http.server22.WebServer.parseMimeTypes InputStream  is  )  throws IOException [package]
 

Definition at line 258 of file WebServer.java.

References com.quadcap.http.server22.WebServer.mimeTypes, com.quadcap.http.server22.WebServer.parseMimeTypes(), com.quadcap.util.text.Scanner.parseWhile(), com.quadcap.util.text.Scanner.peek(), com.quadcap.util.text.Scanner.skipUntil(), and com.quadcap.util.text.Scanner.skipWhile().

Referenced by com.quadcap.http.server22.WebServer.init(), and com.quadcap.http.server22.WebServer.parseMimeTypes().

void com.quadcap.http.server22.WebServer.removeWebApplication String  root  ) 
 

Definition at line 280 of file WebServer.java.

References com.quadcap.http.server22.WebServer.contexts, com.quadcap.http.server22.WebServer.getContextForRoot(), com.quadcap.http.server22.WebServer.removeWebApplication(), and com.quadcap.http.server22.WebApplication.shutdown().

Referenced by com.quadcap.http.server22.WebServer.removeWebApplication().

void com.quadcap.http.server22.WebServer.requestLog String  s  ) 
 

Definition at line 400 of file WebServer.java.

References com.quadcap.http.server22.WebServer.df, com.quadcap.http.server22.WebServer.reqStream, and com.quadcap.http.server22.WebServer.requestLog().

Referenced by com.quadcap.http.server22.WebWorker.doSession(), and com.quadcap.http.server22.WebServer.requestLog().

void com.quadcap.http.server22.WebServer.stop  ) 
 

Definition at line 254 of file WebServer.java.

References com.quadcap.http.server22.WebServer.server.


Member Data Documentation

Hashtable com.quadcap.http.server22.WebServer.contexts = new Hashtable() [package]
 

My servlet contexts.

Definition at line 106 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.addWebApplication(), com.quadcap.http.server22.WebServer.expireSessions(), com.quadcap.http.server22.WebServer.getContext(), com.quadcap.http.server22.WebServer.getContextForRoot(), com.quadcap.http.server22.WebServer.getContextRoots(), and com.quadcap.http.server22.WebServer.removeWebApplication().

WebApplication com.quadcap.http.server22.WebServer.defaultContext = null [package]
 

Definition at line 113 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.getContext(), and com.quadcap.http.server22.WebServer.init().

final int com.quadcap.http.server22.WebServer.defaultInactiveInterval = 60 [static, package]
 

Definition at line 118 of file WebServer.java.

SimpleDateFormat com.quadcap.http.server22.WebServer.df [static, package]
 

Definition at line 396 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.requestLog().

PeriodicScheduler com.quadcap.http.server22.WebServer.expireChecker [package]
 

Definition at line 121 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.init().

final int com.quadcap.http.server22.WebServer.expireCheckerInterval = 60 [static, package]
 

Definition at line 119 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.init().

String com.quadcap.http.server22.WebServer.hostName = null [package]
 

My (cached) host name.

Definition at line 101 of file WebServer.java.

Hashtable com.quadcap.http.server22.WebServer.mimeTypes = new Hashtable() [package]
 

Default mime types.

Definition at line 111 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.getMimeTypeForExt(), and com.quadcap.http.server22.WebServer.parseMimeTypes().

Random com.quadcap.http.server22.WebServer.random = new Random() [package]
 

Definition at line 96 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.makeSessionId().

PrintWriter com.quadcap.http.server22.WebServer.reqStream [package]
 

Definition at line 123 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.init(), and com.quadcap.http.server22.WebServer.requestLog().

Server com.quadcap.http.server22.WebServer.server [package]
 

Definition at line 125 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.init(), and com.quadcap.http.server22.WebServer.stop().

long com.quadcap.http.server22.WebServer.sessionCount = 0 [package]
 

Definition at line 117 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.makeSessionId().

File com.quadcap.http.server22.WebServer.tmpDir [package]
 

Definition at line 115 of file WebServer.java.

Referenced by com.quadcap.http.server22.WebServer.getTempDir(), and com.quadcap.http.server22.WebServer.init().