File tree Expand file tree Collapse file tree 5 files changed +51
-0
lines changed Expand file tree Collapse file tree 5 files changed +51
-0
lines changed Original file line number Diff line number Diff line change @@ -428,6 +428,16 @@ private static void pipeRequest(final SimplePipeRunnable runnable) {
428
428
serialize = null ;
429
429
}
430
430
final HttpRequest request = getRequest ();
431
+ if (!runnable .supportsKeepAlive ()) {
432
+ request .setRequestHeader ("Connection" , "close" );
433
+ }
434
+ if (runnable instanceof ISimpleRequestInfo ) {
435
+ ISimpleRequestInfo reqInfo = (ISimpleRequestInfo ) runnable ;
436
+ String ua = reqInfo .getRemoteUserAgent ();
437
+ if (ua != null ) {
438
+ request .setRequestHeader ("User-Agent" , ua );
439
+ }
440
+ }
431
441
request .open (method , url , true );
432
442
request .registerOnReadyStateChange (new XHRCallbackAdapter () {
433
443
public void onLoaded () {
Original file line number Diff line number Diff line change @@ -141,6 +141,16 @@ private static void ajaxRequest(final SimpleRPCRunnable runnable) {
141
141
}
142
142
143
143
final HttpRequest request = getRequest ();
144
+ if (!runnable .supportsKeepAlive ()) {
145
+ request .setRequestHeader ("Connection" , "close" );
146
+ }
147
+ if (runnable instanceof ISimpleRequestInfo ) {
148
+ ISimpleRequestInfo reqInfo = (ISimpleRequestInfo ) runnable ;
149
+ String ua = reqInfo .getRemoteUserAgent ();
150
+ if (ua != null ) {
151
+ request .setRequestHeader ("User-Agent" , ua );
152
+ }
153
+ }
144
154
request .open (method , url , true );
145
155
request .registerOnReadyStateChange (new XHRCallbackAdapter () {
146
156
public void onLoaded () {
Original file line number Diff line number Diff line change @@ -75,4 +75,15 @@ public boolean supportsGZipEncoding() {
75
75
return true ;
76
76
}
77
77
78
+ /**
79
+ * Whether supporting HTTP Keep-Alive feature or not.
80
+ *
81
+ * This method will be called by server side.
82
+ *
83
+ * @return supported
84
+ */
85
+ public boolean supportsKeepAlive () {
86
+ return true ;
87
+ }
88
+
78
89
}
Original file line number Diff line number Diff line change @@ -174,6 +174,16 @@ private static void swtPipeRequest(final SimplePipeRunnable runnable) {
174
174
serialize = null ;
175
175
}
176
176
final HttpRequest request = getRequest ();
177
+ if (!runnable .supportsKeepAlive ()) {
178
+ request .setRequestHeader ("Connection" , "close" );
179
+ }
180
+ if (runnable instanceof ISimpleRequestInfo ) {
181
+ ISimpleRequestInfo reqInfo = (ISimpleRequestInfo ) runnable ;
182
+ String ua = reqInfo .getRemoteUserAgent ();
183
+ if (ua != null ) {
184
+ request .setRequestHeader ("User-Agent" , ua );
185
+ }
186
+ }
177
187
request .open (method , url , true );
178
188
request .registerOnReadyStateChange (new XHRCallbackSWTAdapter () {
179
189
public void swtOnLoaded () {
Original file line number Diff line number Diff line change @@ -72,6 +72,16 @@ private static void swtAJAXRequest(final SimpleRPCRunnable runnable) {
72
72
serialize = null ;
73
73
}
74
74
final HttpRequest request = getRequest ();
75
+ if (!runnable .supportsKeepAlive ()) {
76
+ request .setRequestHeader ("Connection" , "close" );
77
+ }
78
+ if (runnable instanceof ISimpleRequestInfo ) {
79
+ ISimpleRequestInfo reqInfo = (ISimpleRequestInfo ) runnable ;
80
+ String ua = reqInfo .getRemoteUserAgent ();
81
+ if (ua != null ) {
82
+ request .setRequestHeader ("User-Agent" , ua );
83
+ }
84
+ }
75
85
request .open (method , url , true );
76
86
request .registerOnReadyStateChange (new XHRCallbackSWTAdapter () {
77
87
public void swtOnLoaded () {
You can’t perform that action at this time.
0 commit comments