}
/* Copied from the AjpProcessor.java */
- public SocketState asyncDispatch(long socket, SocketStatus status) throws IOException {
+ public SocketState asyncDispatch(long socket, SocketStatus status) {
// Setting up the socket
this.socket = socket;
* @param actionCode Type of the action
* @param param Action parameter
*/
+ @Override
public void action(ActionCode actionCode, Object param) {
if (actionCode == ActionCode.ACTION_COMMIT) {
new ConcurrentHashMap<Long, Http11AprProcessor>();
protected ConcurrentLinkedQueue<Http11AprProcessor> recycledProcessors =
new ConcurrentLinkedQueue<Http11AprProcessor>() {
+ private static final long serialVersionUID = 1L;
protected AtomicInteger size = new AtomicInteger(0);
@Override
public boolean offer(Http11AprProcessor processor) {
// Call the appropriate event
try {
state = result.asyncDispatch(socket, status);
- } catch (java.net.SocketException e) {
- // SocketExceptions are normal
- Http11AprProtocol.log.debug
- (sm.getString
- ("http11protocol.proto.socketexception.debug"), e);
- } catch (java.io.IOException e) {
- // IOExceptions are normal
- Http11AprProtocol.log.debug
- (sm.getString
- ("http11protocol.proto.ioexception.debug"), e);
- }
- // Future developers: if you discover any other
- // rare-but-nonfatal exceptions, catch them here, and log as
+ // Future developers: if you discover any rare-but-nonfatal
+ // exceptions, catch them here, and log as per {@link #event()}
// above.
- catch (Throwable e) {
+ } catch (Throwable e) {
// any other exception or error is odd. Here we log it
// with "ERROR" level, so it will show up even on
// less-than-verbose logs.
* @param actionCode Type of the action
* @param param Action parameter
*/
+ @Override
public void action(ActionCode actionCode, Object param) {
if (actionCode == ActionCode.ACTION_COMMIT) {
* When committing the response, we have to validate the set of headers, as
* well as setup the response filters.
*/
- protected void prepareResponse() throws IOException {
+ protected void prepareResponse() {
boolean entityBody = true;
contentDelimitation = false;