13
13
14
14
import com .loopj .android .http .AsyncHttpClient ;
15
15
import com .loopj .android .http .AsyncHttpResponseHandler ;
16
+ import com .loopj .android .http .RequestHandle ;
16
17
17
18
import org .apache .http .Header ;
18
19
import org .apache .http .HttpEntity ;
23
24
import java .io .StringWriter ;
24
25
import java .io .UnsupportedEncodingException ;
25
26
import java .util .ArrayList ;
27
+ import java .util .LinkedList ;
26
28
import java .util .List ;
27
29
import java .util .Locale ;
28
30
@@ -31,6 +33,7 @@ public abstract class SampleParentActivity extends Activity {
31
33
private AsyncHttpClient asyncHttpClient = new AsyncHttpClient ();
32
34
private EditText urlEditText , headersEditText , bodyEditText ;
33
35
private LinearLayout responseLayout ;
36
+ private final List <RequestHandle > requestHandles = new LinkedList <>();
34
37
35
38
private static final int LIGHTGREEN = Color .parseColor ("#00FF66" );
36
39
private static final int LIGHTRED = Color .parseColor ("#FF3300" );
@@ -64,19 +67,31 @@ protected void onCreate(Bundle savedInstanceState) {
64
67
}
65
68
}
66
69
70
+ public List <RequestHandle > getRequestHandles () {
71
+ return requestHandles ;
72
+ }
73
+
74
+ protected void onRunButtonPressed () {
75
+ requestHandles .add (executeSample (getAsyncHttpClient (),
76
+ (urlEditText == null || urlEditText .getText () == null ) ? getDefaultURL () : urlEditText .getText ().toString (),
77
+ getRequestHeaders (),
78
+ getRequestEntity (),
79
+ getResponseHandler ()));
80
+ }
81
+
82
+ protected void onCancelButtonPressed () {
83
+ asyncHttpClient .cancelRequests (SampleParentActivity .this , true );
84
+ }
85
+
67
86
private View .OnClickListener onClickListener = new View .OnClickListener () {
68
87
@ Override
69
88
public void onClick (View v ) {
70
89
switch (v .getId ()) {
71
90
case R .id .button_run :
72
- executeSample (getAsyncHttpClient (),
73
- (urlEditText == null || urlEditText .getText () == null ) ? getDefaultURL () : urlEditText .getText ().toString (),
74
- getRequestHeaders (),
75
- getRequestEntity (),
76
- getResponseHandler ());
91
+ onRunButtonPressed ();
77
92
break ;
78
93
case R .id .button_cancel :
79
- asyncHttpClient . cancelRequests ( SampleParentActivity . this , true );
94
+ onCancelButtonPressed ( );
80
95
break ;
81
96
}
82
97
}
@@ -198,5 +213,5 @@ protected AsyncHttpClient getAsyncHttpClient() {
198
213
return this .asyncHttpClient ;
199
214
}
200
215
201
- protected abstract void executeSample (AsyncHttpClient client , String URL , Header [] headers , HttpEntity entity , AsyncHttpResponseHandler responseHandler );
216
+ protected abstract RequestHandle executeSample (AsyncHttpClient client , String URL , Header [] headers , HttpEntity entity , AsyncHttpResponseHandler responseHandler );
202
217
}
0 commit comments