Skip to content

Commit 15129da

Browse files
committed
Pull up more common code in Processor constructors
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1137381 13f79535-47bb-0310-9956-ffa450edef68
1 parent d177a3d commit 15129da

9 files changed

Lines changed: 35 additions & 99 deletions

java/org/apache/coyote/AbstractProcessor.java

Lines changed: 35 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,26 @@
2626
*/
2727
public abstract class AbstractProcessor implements ActionHook, Processor {
2828

29-
protected AbstractEndpoint endpoint;
30-
protected Request request = null;
31-
protected Response response = null;
29+
protected Adapter adapter;
30+
protected final AsyncStateMachine asyncStateMachine;
31+
protected final AbstractEndpoint endpoint;
32+
protected final Request request;
33+
protected final Response response;
3234

3335

3436
public AbstractProcessor(AbstractEndpoint endpoint) {
3537
this.endpoint = endpoint;
38+
asyncStateMachine = new AsyncStateMachine(this);
39+
40+
request = new Request();
41+
42+
response = new Response();
43+
response.setHook(this);
44+
request.setResponse(response);
45+
3646
}
3747

48+
3849
/**
3950
* The endpoint receiving connections that are handled by this processor.
4051
*/
@@ -51,6 +62,27 @@ public Request getRequest() {
5162
}
5263

5364

65+
/**
66+
* Set the associated adapter.
67+
*
68+
* @param adapter the new adapter
69+
*/
70+
public void setAdapter(Adapter adapter) {
71+
this.adapter = adapter;
72+
}
73+
74+
75+
/**
76+
* Get the associated adapter.
77+
*
78+
* @return the associated adapter
79+
*/
80+
public Adapter getAdapter() {
81+
return adapter;
82+
}
83+
84+
85+
5486
/*
5587
* Expose selected endpoint attributes through the processor
5688
*/

java/org/apache/coyote/ajp/AbstractAjpProcessor.java

Lines changed: 0 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,10 @@
2828

2929
import org.apache.coyote.AbstractProcessor;
3030
import org.apache.coyote.ActionCode;
31-
import org.apache.coyote.Adapter;
3231
import org.apache.coyote.AsyncContextCallback;
33-
import org.apache.coyote.AsyncStateMachine;
3432
import org.apache.coyote.InputBuffer;
3533
import org.apache.coyote.Request;
3634
import org.apache.coyote.RequestInfo;
37-
import org.apache.coyote.Response;
3835
import org.apache.juli.logging.Log;
3936
import org.apache.tomcat.util.ExceptionUtils;
4037
import org.apache.tomcat.util.buf.ByteChunk;
@@ -117,12 +114,6 @@ public abstract class AbstractAjpProcessor extends AbstractProcessor {
117114
// ----------------------------------------------------- Instance Variables
118115

119116

120-
/**
121-
* Associated adapter.
122-
*/
123-
protected Adapter adapter = null;
124-
125-
126117
/**
127118
* AJP packet size.
128119
*/
@@ -209,12 +200,6 @@ public abstract class AbstractAjpProcessor extends AbstractProcessor {
209200
protected boolean finished = false;
210201

211202

212-
/**
213-
* Track changes in state for async requests.
214-
*/
215-
protected AsyncStateMachine asyncStateMachine = new AsyncStateMachine(this);
216-
217-
218203
/**
219204
* Bytes written to client for the current request
220205
*/
@@ -229,12 +214,8 @@ public AbstractAjpProcessor(int packetSize, AbstractEndpoint endpoint) {
229214

230215
this.packetSize = packetSize;
231216

232-
request = new Request();
233217
request.setInputBuffer(new SocketInputBuffer());
234218

235-
response = new Response();
236-
request.setResponse(response);
237-
238219
requestHeaderMessage = new AjpMessage(packetSize);
239220
responseHeaderMessage = new AjpMessage(packetSize);
240221
bodyMessage = new AjpMessage(packetSize);
@@ -509,29 +490,6 @@ public void recycle() {
509490
byteCount = 0;
510491
}
511492

512-
// ------------------------------------------------------ Connector Methods
513-
514-
515-
/**
516-
* Set the associated adapter.
517-
*
518-
* @param adapter the new adapter
519-
*/
520-
public void setAdapter(Adapter adapter) {
521-
this.adapter = adapter;
522-
}
523-
524-
525-
/**
526-
* Get the associated adapter.
527-
*
528-
* @return the associated adapter
529-
*/
530-
public Adapter getAdapter() {
531-
return adapter;
532-
}
533-
534-
535493
// ------------------------------------------------------ Protected Methods
536494

537495

java/org/apache/coyote/ajp/AjpAprProcessor.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,6 @@ public AjpAprProcessor(int packetSize, AprEndpoint endpoint) {
7070

7171
super(packetSize, endpoint);
7272

73-
response.setHook(this);
7473
response.setOutputBuffer(new SocketOutputBuffer());
7574

7675
// Set the get body message buffer

java/org/apache/coyote/ajp/AjpNioProcessor.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ public AjpNioProcessor(int packetSize, NioEndpoint endpoint) {
6363

6464
super(packetSize, endpoint);
6565

66-
response.setHook(this);
6766
response.setOutputBuffer(new SocketOutputBuffer());
6867

6968
pool = endpoint.getSelectorPool();

java/org/apache/coyote/ajp/AjpProcessor.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ public AjpProcessor(int packetSize, JIoEndpoint endpoint) {
6969

7070
super(packetSize, endpoint);
7171

72-
response.setHook(this);
7372
response.setOutputBuffer(new SocketOutputBuffer());
7473

7574
// Set the get body message buffer

java/org/apache/coyote/http11/AbstractHttp11Processor.java

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,7 @@
2323

2424
import org.apache.coyote.AbstractProcessor;
2525
import org.apache.coyote.ActionCode;
26-
import org.apache.coyote.Adapter;
2726
import org.apache.coyote.AsyncContextCallback;
28-
import org.apache.coyote.AsyncStateMachine;
2927
import org.apache.coyote.http11.filters.BufferedInputFilter;
3028
import org.apache.coyote.http11.filters.ChunkedInputFilter;
3129
import org.apache.coyote.http11.filters.ChunkedOutputFilter;
@@ -62,11 +60,6 @@ public abstract class AbstractHttp11Processor extends AbstractProcessor {
6260
* are skipped when looking for pluggable filters.
6361
*/
6462
private int pluggableFilterIndex = Integer.MAX_VALUE;
65-
66-
/**
67-
* Associated adapter.
68-
*/
69-
protected Adapter adapter = null;
7063

7164

7265
/**
@@ -219,12 +212,6 @@ public abstract class AbstractHttp11Processor extends AbstractProcessor {
219212
protected String server = null;
220213

221214

222-
/**
223-
* Track changes in state for async requests.
224-
*/
225-
protected AsyncStateMachine asyncStateMachine = new AsyncStateMachine(this);
226-
227-
228215
public AbstractHttp11Processor(AbstractEndpoint endpoint) {
229216
super(endpoint);
230217
}
@@ -499,26 +486,6 @@ public String getServer() {
499486
}
500487

501488

502-
/**
503-
* Set the associated adapter.
504-
*
505-
* @param adapter the new adapter
506-
*/
507-
public void setAdapter(Adapter adapter) {
508-
this.adapter = adapter;
509-
}
510-
511-
512-
/**
513-
* Get the associated adapter.
514-
*
515-
* @return the associated adapter
516-
*/
517-
public Adapter getAdapter() {
518-
return adapter;
519-
}
520-
521-
522489
/**
523490
* Check if the resource could be compressed, if the client supports it.
524491
*/

java/org/apache/coyote/http11/Http11AprProcessor.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,7 @@
2525
import java.util.Locale;
2626

2727
import org.apache.coyote.ActionCode;
28-
import org.apache.coyote.Request;
2928
import org.apache.coyote.RequestInfo;
30-
import org.apache.coyote.Response;
3129
import org.apache.coyote.http11.filters.BufferedInputFilter;
3230
import org.apache.juli.logging.Log;
3331
import org.apache.juli.logging.LogFactory;
@@ -70,15 +68,11 @@ public Http11AprProcessor(int headerBufferSize, AprEndpoint endpoint,
7068

7169
super(endpoint);
7270

73-
request = new Request();
7471
inputBuffer = new InternalAprInputBuffer(request, headerBufferSize);
7572
request.setInputBuffer(inputBuffer);
7673

77-
response = new Response();
78-
response.setHook(this);
7974
outputBuffer = new InternalAprOutputBuffer(response, headerBufferSize);
8075
response.setOutputBuffer(outputBuffer);
81-
request.setResponse(response);
8276

8377
initializeFilters(maxTrailerSize);
8478

java/org/apache/coyote/http11/Http11NioProcessor.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,7 @@
2525
import javax.net.ssl.SSLEngine;
2626

2727
import org.apache.coyote.ActionCode;
28-
import org.apache.coyote.Request;
2928
import org.apache.coyote.RequestInfo;
30-
import org.apache.coyote.Response;
3129
import org.apache.coyote.http11.filters.BufferedInputFilter;
3230
import org.apache.juli.logging.Log;
3331
import org.apache.juli.logging.LogFactory;
@@ -74,15 +72,11 @@ public Http11NioProcessor(int maxHttpHeaderSize, NioEndpoint endpoint,
7472

7573
super(endpoint);
7674

77-
request = new Request();
7875
inputBuffer = new InternalNioInputBuffer(request, maxHttpHeaderSize);
7976
request.setInputBuffer(inputBuffer);
8077

81-
response = new Response();
82-
response.setHook(this);
8378
outputBuffer = new InternalNioOutputBuffer(response, maxHttpHeaderSize);
8479
response.setOutputBuffer(outputBuffer);
85-
request.setResponse(response);
8680

8781
initializeFilters(maxTrailerSize);
8882

java/org/apache/coyote/http11/Http11Processor.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,7 @@
2525
import java.util.Locale;
2626

2727
import org.apache.coyote.ActionCode;
28-
import org.apache.coyote.Request;
2928
import org.apache.coyote.RequestInfo;
30-
import org.apache.coyote.Response;
3129
import org.apache.coyote.http11.filters.BufferedInputFilter;
3230
import org.apache.juli.logging.Log;
3331
import org.apache.juli.logging.LogFactory;
@@ -65,15 +63,11 @@ public Http11Processor(int headerBufferSize, JIoEndpoint endpoint,
6563

6664
super(endpoint);
6765

68-
request = new Request();
6966
inputBuffer = new InternalInputBuffer(request, headerBufferSize);
7067
request.setInputBuffer(inputBuffer);
7168

72-
response = new Response();
73-
response.setHook(this);
7469
outputBuffer = new InternalOutputBuffer(response, headerBufferSize);
7570
response.setOutputBuffer(outputBuffer);
76-
request.setResponse(response);
7771

7872
initializeFilters(maxTrailerSize);
7973

0 commit comments

Comments
 (0)