Apache Tomcat 7.0.28

org.apache.coyote
Class AbstractProcessor<S>

java.lang.Object
  extended by org.apache.coyote.AbstractProcessor<S>
All Implemented Interfaces:
ActionHook, Processor<S>
Direct Known Subclasses:
AbstractAjpProcessor, AbstractHttp11Processor

public abstract class AbstractProcessor<S>
extends Object
implements ActionHook, Processor<S>

Provides functionality and attributes common to all supported protocols (currently HTTP and AJP).


Field Summary
protected  Adapter adapter
           
protected  AsyncStateMachine<S> asyncStateMachine
           
protected  AbstractEndpoint endpoint
           
protected  Request request
           
protected  Response response
           
 
Constructor Summary
protected AbstractProcessor()
          Intended for use by the Upgrade sub-classes that have no need to initialise the request, response, etc.
  AbstractProcessor(AbstractEndpoint endpoint)
           
 
Method Summary
abstract  AbstractEndpoint.Handler.SocketState asyncDispatch(SocketStatus status)
          Process in-progress Servlet 3.0 Async requests.
 AbstractEndpoint.Handler.SocketState asyncPostProcess()
           
abstract  AbstractEndpoint.Handler.SocketState event(SocketStatus status)
          Process in-progress Comet requests.
 Adapter getAdapter()
          Get the associated adapter.
protected  AbstractEndpoint getEndpoint()
          The endpoint receiving connections that are handled by this processor.
 Executor getExecutor()
          Obtain the Executor used by the underlying endpoint.
 Request getRequest()
          The request associated with this processor.
abstract  UpgradeInbound getUpgradeInbound()
           
 boolean isAsync()
           
abstract  boolean isComet()
           
abstract  boolean isUpgrade()
           
abstract  AbstractEndpoint.Handler.SocketState process(SocketWrapper<S> socket)
          Process HTTP requests.
 void setAdapter(Adapter adapter)
          Set the associated adapter.
abstract  AbstractEndpoint.Handler.SocketState upgradeDispatch()
          Processes data received on a connection that has been through an HTTP upgrade.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.coyote.ActionHook
action
 
Methods inherited from interface org.apache.coyote.Processor
recycle, setSslSupport
 

Field Detail

adapter

protected Adapter adapter

asyncStateMachine

protected AsyncStateMachine<S> asyncStateMachine

endpoint

protected AbstractEndpoint endpoint

request

protected Request request

response

protected Response response
Constructor Detail

AbstractProcessor

protected AbstractProcessor()
Intended for use by the Upgrade sub-classes that have no need to initialise the request, response, etc.


AbstractProcessor

public AbstractProcessor(AbstractEndpoint endpoint)
Method Detail

getEndpoint

protected AbstractEndpoint getEndpoint()
The endpoint receiving connections that are handled by this processor.


getRequest

public Request getRequest()
The request associated with this processor.

Specified by:
getRequest in interface Processor<S>

setAdapter

public void setAdapter(Adapter adapter)
Set the associated adapter.

Parameters:
adapter - the new adapter

getAdapter

public Adapter getAdapter()
Get the associated adapter.

Returns:
the associated adapter

getExecutor

public Executor getExecutor()
Obtain the Executor used by the underlying endpoint.

Specified by:
getExecutor in interface Processor<S>

isAsync

public boolean isAsync()
Specified by:
isAsync in interface Processor<S>

asyncPostProcess

public AbstractEndpoint.Handler.SocketState asyncPostProcess()
Specified by:
asyncPostProcess in interface Processor<S>

isComet

public abstract boolean isComet()
Specified by:
isComet in interface Processor<S>

isUpgrade

public abstract boolean isUpgrade()
Specified by:
isUpgrade in interface Processor<S>

process

public abstract AbstractEndpoint.Handler.SocketState process(SocketWrapper<S> socket)
                                                      throws IOException
Process HTTP requests. All requests are treated as HTTP requests to start with although they may change type during processing.

Specified by:
process in interface Processor<S>
Throws:
IOException

event

public abstract AbstractEndpoint.Handler.SocketState event(SocketStatus status)
                                                    throws IOException
Process in-progress Comet requests. These will start as HTTP requests.

Specified by:
event in interface Processor<S>
Throws:
IOException

asyncDispatch

public abstract AbstractEndpoint.Handler.SocketState asyncDispatch(SocketStatus status)
Process in-progress Servlet 3.0 Async requests. These will start as HTTP requests.

Specified by:
asyncDispatch in interface Processor<S>

upgradeDispatch

public abstract AbstractEndpoint.Handler.SocketState upgradeDispatch()
                                                              throws IOException
Processes data received on a connection that has been through an HTTP upgrade.

Specified by:
upgradeDispatch in interface Processor<S>
Throws:
IOException

getUpgradeInbound

public abstract UpgradeInbound getUpgradeInbound()
Specified by:
getUpgradeInbound in interface Processor<S>

Apache Tomcat 7.0.28

Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.