|
NextApp Echo App Container 1.0.5 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object nextapp.echoservlet.Connection
A wrapper that holds information about an HTTP request, provides facilities to generate a response, and provides access to the application instance that is to process it.
Field Summary | |
private static java.lang.String |
CACHE_MAX_AGE
A convenience for setting the cache header |
private boolean |
debugInteractiveController
A flag that indicates whether the interactivecontroller frame should be made visible and provide debugging information. |
private boolean |
debugOptionsEnabled
A flag that indicates whether any debug options may be enabled. |
private boolean |
debugPerformanceLogging
A flag that indicates whether the time interval during which each request is processed will be recorded. |
private boolean |
debugVerboseLogging
A flag indicating verbose logging. |
private static java.lang.String |
INSTANCE_PEER_SESSION_KEY_PREFIX
The prefix that will be used to determine the key name under which the application will be stored in HttpSession . |
private InstancePeer |
instancePeer
Reference to the application's InstancePeer, may be null under initialization conditions. |
private java.lang.String |
instancePeerSessionKey
The session key with holds the instance peer as its value. |
private static long |
lastFreeMemory
The amount of free memory available. |
private javax.servlet.http.HttpServletRequest |
request
Reference to the HTTP request object wrapped by this Connection. |
private javax.servlet.http.HttpServletResponse |
response
Reference to the HTTP response object wrapped by this Connection. |
private EchoServer |
server
Reference to the EchoServer. |
private static int |
serviceNumber
A global counter of services invoked for the life of the VM. |
private ServletEncodingAdapter |
servletEncodingAdapter
Reference to servlet encoding adapter. |
private VariableData |
variableData
Holds the VariableData object associated with this
Connection . |
Constructor Summary | |
(package private) |
Connection(EchoServer server,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
Creates a connection object that will handle the given
request and response. |
Method Summary | |
java.lang.String |
correctUri(java.lang.String uri)
Corrects relative-path URIs to include the application name, such that they can properly retrieve the desired resource. |
java.lang.String |
getApplicationUri()
Returns the URI of the application. |
java.lang.String |
getCacheIdPrefix()
Returns a prefix to prepend to cache ids in order to ensure that incorrect cached resources are used by client in the event either the server or the users session has restarted. |
Id |
getIdParameter(java.lang.String name)
Returns the specified request parameter as an Id value. |
InstancePeer |
getInstancePeer()
Returns the InstancePeer associated with this connection. |
java.io.OutputStream |
getOutputStream()
Returns the OutputStream object that may be used to
generate a response. |
java.lang.String |
getParameter(java.lang.String name)
Returns the value of the HTTP parameter associated with the given name. |
java.util.Enumeration |
getParameterNames()
Returns an enumeration of all parameter names passed in the request. |
javax.servlet.http.HttpServletRequest |
getRequest()
Returns the HttpServletRequest wrapped by this
Connection . |
javax.servlet.http.HttpServletResponse |
getResponse()
Returns the HttpServletResponse wrapped by this
Connection . |
EchoServer |
getServer()
Returns the EchoServer wrapped by this
Connection . |
VariableData |
getVariableData()
Returns the VariableData associated with this
Connection . |
java.io.PrintWriter |
getWriter()
Returns the PrintWriter object that may be used to
generate a response. |
(package private) boolean |
isDebugInteractiveControllerEnabled()
Returns true if the interactive controller debug feature is enabled. |
(package private) boolean |
isDebugVerboseLoggingEnabled()
Returns true if the verbose logging debug feature is enabled. |
(package private) void |
process()
Retrieves and executes the appropriate Service requested
by the client browser. |
private Service |
retrieveService(Id id)
Returns the service that corresponds to the specified Id. |
void |
setContentType(ContentType contentType)
Sets the content type of the response. |
(package private) void |
setInstancePeer(InstancePeer instancePeer)
Sets the InstancePeer that has been created for the user
making this request. |
(package private) void |
unbindInstancePeer()
Unbinds the application's InstancePeer from the session. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private static final java.lang.String INSTANCE_PEER_SESSION_KEY_PREFIX
HttpSession
. The
application's URI will be appended to the session prefix to form
a unique value.
private static final java.lang.String CACHE_MAX_AGE
private static long lastFreeMemory
private static int serviceNumber
private javax.servlet.http.HttpServletRequest request
private javax.servlet.http.HttpServletResponse response
private InstancePeer instancePeer
private EchoServer server
private ServletEncodingAdapter servletEncodingAdapter
private VariableData variableData
VariableData
object associated with this
Connection
.
private java.lang.String instancePeerSessionKey
private boolean debugOptionsEnabled
private boolean debugPerformanceLogging
private boolean debugInteractiveController
private boolean debugVerboseLogging
Constructor Detail |
Connection(EchoServer server, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws java.io.IOException, javax.servlet.ServletException
connection
object that will handle the given
request and response. The InstancePeer will be pulled from the session
if one exists. A session will NOT be created if one does not exist.
server
- The EchoServer
generating the connection.request
- The HTTP request object that was passed to the servlet.response
- The HTTP response object that was passed to the servlet.Method Detail |
public java.lang.String getApplicationUri()
public java.lang.String getCacheIdPrefix()
InstancePeer
has been
created, otherwise defers responsibility to the
InstancePeer
.
public Id getIdParameter(java.lang.String name)
name
- The parameter name.
public InstancePeer getInstancePeer()
InstancePeer
associated with this connection.
If the session has not been initialized, null is returned.
InstancePeer
associated with this connection.public java.io.OutputStream getOutputStream()
OutputStream
object that may be used to
generate a response. This method may be called once. If it is called,
the getWriter() method may not be called. This method wraps a call to
HttpServletResponse.getOutputStream()
. The
OutputStream
will be closed by the servlet container.
OutputStream
object that may be used to
generate a response to the client.public java.lang.String getParameter(java.lang.String name)
name
- The name of the parameter to return.
public java.util.Enumeration getParameterNames()
public javax.servlet.http.HttpServletRequest getRequest()
HttpServletRequest
wrapped by this
Connection
.
HttpServletRequest
wrapped by this
Connection
.public javax.servlet.http.HttpServletResponse getResponse()
HttpServletResponse
wrapped by this
Connection
.
HttpServletResponse
wrapped by this
Connection
.public EchoServer getServer()
EchoServer
wrapped by this
Connection
.
EchoServer
wrapped by this
Connection
.public VariableData getVariableData()
VariableData
associated with this
Connection
. If an InstancePeer
exists,
its VariableData
is returned, otherwise, a temporary
VariableData
object is returned that contains
defaults used for initialization.
VariableData
object associated with this
Connection
.public java.io.PrintWriter getWriter()
PrintWriter
object that may be used to
generate a response. This method may be called once. If it is called,
the getOuputStream() method may not be called. This method wraps a
call to HttpServletResponse.getWriter()
. The
PrintWriter
will be closed by the servlet container.
PrintWriter
object that may be used to
generate a response to the client.public java.lang.String correctUri(java.lang.String uri)
uri
- The URI to correct.
boolean isDebugInteractiveControllerEnabled()
boolean isDebugVerboseLoggingEnabled()
void process() throws java.io.IOException
Service
requested
by the client browser. Sets cache control HTTP headers for the
response. If the user does not yet have an InstancePeer
,
then initialization services are executed. Logs debugging information
if necessary.
java.io.IOException
private Service retrieveService(Id id)
id
- The id of the service to return.
public void setContentType(ContentType contentType)
contentType
- The content type of the response.void setInstancePeer(InstancePeer instancePeer)
InstancePeer
that has been created for the user
making this request. This method is called once, by the
Initializer
.
instancePeer
- The InstancePeer
that will be used
by this user.void unbindInstancePeer()
InstancePeer
from the session.
This terminates the application. If the user visits the application's
URI again, a new InstancePeer
will be created.
|
NextApp Echo App Container 1.0.5 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |