|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.directwebremoting.dwrp.PollHandler
public class PollHandler
A Marshaller that output plain Javascript. This marshaller can be tweaked to output Javascript in an HTML context. This class works in concert with CallScriptConduit, they should be considered closely related and it is important to understand what one does while editing the other.
| Field Summary | |
|---|---|
protected boolean |
activeReverseAjaxEnabled
Are we doing full reverse ajax |
protected boolean |
allowGetForSafariButMakeForgeryEasier
By default we disable GET, but this hinders old Safaris |
static java.lang.String |
ATTRIBUTE_CALL_ID
How we stash away the results of the request parse |
static java.lang.String |
ATTRIBUTE_LONGPOLL_SESSION_ID
We remember people that are in a long poll so we can kick them out |
static java.lang.String |
ATTRIBUTE_PAGE
How we stash away the results of the request parse |
static java.lang.String |
ATTRIBUTE_PARAMETERS
How we stash away the results of the request parse |
static java.lang.String |
ATTRIBUTE_PARTIAL_RESPONSE
How we stash away the results of the request parse |
static java.lang.String |
ATTRIBUTE_SESSION_ID
How we stash away the results of the request parse |
protected ConverterManager |
converterManager
How we convert parameters |
protected int |
maxWaitAfterWrite
Sometimes with proxies, you need to close the stream all the time to make the flush work. |
protected PageNormalizer |
pageNormalizer
How we turn pages into the canonical form. |
protected static int |
PARTIAL_RESPONSE_FLUSH
The client can only handle partial responses with a 4k data post (can be whitespace) - we're talking IE here. |
protected static int |
PARTIAL_RESPONSE_NO
The client can not handle partial responses |
protected static int |
PARTIAL_RESPONSE_YES
The client can handle partial responses |
protected boolean |
plain
Are we using plain javascript or html wrapped javascript |
protected ScriptSessionManager |
scriptSessionManager
The owner of script sessions |
protected ServerLoadMonitor |
serverLoadMonitor
We need to tell the system that we are waiting so it can load adjust |
| Constructor Summary | |
|---|---|
PollHandler(boolean plain)
|
|
| Method Summary | |
|---|---|
protected java.lang.String |
extractParameter(javax.servlet.http.HttpServletRequest request,
java.util.Map parameters,
java.lang.String attrName,
java.lang.String paramName)
Extract a parameter and ensure it is in the request. |
void |
handle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
Handle a URL request that has been mapped to this Handler |
protected void |
notifyThreadsFromSameBrowser(javax.servlet.http.HttpServletRequest request,
java.lang.String scriptId)
Make other threads from the same browser stop waiting and continue |
protected void |
sendErrorScript(javax.servlet.http.HttpServletResponse response,
java.lang.String script)
Send a script to the browser and wrap it in the required prefixes etc. |
void |
setActiveReverseAjaxEnabled(boolean activeReverseAjaxEnabled)
Are we doing full reverse ajax |
void |
setAllowGetForSafariButMakeForgeryEasier(boolean allowGetForSafariButMakeForgeryEasier)
|
void |
setConverterManager(ConverterManager converterManager)
Accessor for the DefaultCreatorManager that we configure |
void |
setMaxWaitAfterWrite(int maxWaitAfterWrite)
Sometimes with proxies, you need to close the stream all the time to make the flush work. |
void |
setPageNormalizer(PageNormalizer pageNormalizer)
Accessor for the PageNormalizer. |
void |
setPollAndCometEnabled(boolean pollAndCometEnabled)
Deprecated. Use setActiveReverseAjaxEnabled(boolean) |
void |
setScriptSessionManager(ScriptSessionManager scriptSessionManager)
|
void |
setServerLoadMonitor(ServerLoadMonitor serverLoadMonitor)
Accessor for the server load monitor |
protected boolean |
sleepWithContinuation(RealScriptSession scriptSession,
Continuation continuation,
long preStreamWaitTime)
Use a ResumeContinuationScriptConduit to wait |
protected boolean |
streamWait(javax.servlet.http.HttpServletRequest request,
ScriptConduit conduit,
RealScriptSession scriptSession,
long wait)
Perform a wait. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected boolean activeReverseAjaxEnabled
protected boolean allowGetForSafariButMakeForgeryEasier
protected int maxWaitAfterWrite
protected boolean plain
protected PageNormalizer pageNormalizer
protected ServerLoadMonitor serverLoadMonitor
protected ConverterManager converterManager
protected ScriptSessionManager scriptSessionManager
public static final java.lang.String ATTRIBUTE_PARAMETERS
public static final java.lang.String ATTRIBUTE_CALL_ID
public static final java.lang.String ATTRIBUTE_SESSION_ID
public static final java.lang.String ATTRIBUTE_PAGE
public static final java.lang.String ATTRIBUTE_PARTIAL_RESPONSE
public static final java.lang.String ATTRIBUTE_LONGPOLL_SESSION_ID
protected static final int PARTIAL_RESPONSE_NO
protected static final int PARTIAL_RESPONSE_YES
protected static final int PARTIAL_RESPONSE_FLUSH
| Constructor Detail |
|---|
public PollHandler(boolean plain)
plain - Are we using plain javascript or html wrapped javascript| Method Detail |
|---|
public void handle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws java.io.IOException
Handler
handle in interface Handlerrequest - The HTTP request dataresponse - Where we write the HTTP response data
java.io.IOException - If the write process fails
protected boolean streamWait(javax.servlet.http.HttpServletRequest request,
ScriptConduit conduit,
RealScriptSession scriptSession,
long wait)
throws java.io.IOException
request - The HTTP request, needed to start a Jetty continuationconduit - A conduit if there is an open stream or null if notscriptSession - The script that we lock againstwait - How long do we wait for?
java.io.IOException - If an IO error occurs
protected boolean sleepWithContinuation(RealScriptSession scriptSession,
Continuation continuation,
long preStreamWaitTime)
ResumeContinuationScriptConduit to wait
scriptSession - The session that we add the conduit tocontinuation - The Jetty continuation objectpreStreamWaitTime - The length of time to wait
protected void notifyThreadsFromSameBrowser(javax.servlet.http.HttpServletRequest request,
java.lang.String scriptId)
request - The HTTP requestscriptId - The session id of the current page
protected java.lang.String extractParameter(javax.servlet.http.HttpServletRequest request,
java.util.Map parameters,
java.lang.String attrName,
java.lang.String paramName)
request - The HTTP requestparameters - The parameter list parsed out of the requestattrName - The name of the request attributeparamName - The name of the parameter sent
protected void sendErrorScript(javax.servlet.http.HttpServletResponse response,
java.lang.String script)
throws java.io.IOException
response - The http response to write toscript - The script to write
java.io.IOException - if writing fails.public void setConverterManager(ConverterManager converterManager)
converterManager - The new DefaultConverterManagerpublic void setServerLoadMonitor(ServerLoadMonitor serverLoadMonitor)
serverLoadMonitor - the new server load monitorpublic void setPageNormalizer(PageNormalizer pageNormalizer)
pageNormalizer - The new PageNormalizerpublic void setScriptSessionManager(ScriptSessionManager scriptSessionManager)
scriptSessionManager - the scriptSessionManager to setpublic void setPollAndCometEnabled(boolean pollAndCometEnabled)
setActiveReverseAjaxEnabled(boolean)
setActiveReverseAjaxEnabled(boolean)
pollAndCometEnabled - Are we doing full reverse ajaxpublic void setActiveReverseAjaxEnabled(boolean activeReverseAjaxEnabled)
activeReverseAjaxEnabled - Are we doing full reverse ajaxpublic void setAllowGetForSafariButMakeForgeryEasier(boolean allowGetForSafariButMakeForgeryEasier)
allowGetForSafariButMakeForgeryEasier - Do we reduce security to help Safaripublic void setMaxWaitAfterWrite(int maxWaitAfterWrite)
maxWaitAfterWrite - the maxWaitAfterWrite to set
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||