442
442
static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
443
443
static Application application;
444
444
static Interceptor interceptor = null;
445
- static Long defaultTimeout = 30000L ;
445
+ static Long defaultTimeout = 60000L ;
446
446
447
447
static {
448
448
dateTimeFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
472
472
if (interceptor != null)
473
473
builder.addNetworkInterceptor(interceptor);
474
474
475
+ builder.connectTimeout(defaultTimeout, TimeUnit.MILLISECONDS)
476
+ .readTimeout(defaultTimeout, TimeUnit.MILLISECONDS)
477
+ .writeTimeout(defaultTimeout, TimeUnit.MILLISECONDS)
478
+ .callTimeout(defaultTimeout, TimeUnit.MILLISECONDS);
479
+
475
480
http = builder.build();
476
481
return;
477
482
}
509
514
.connectionPool(connectionPool)
510
515
.dispatcher(dispatcher)
511
516
.sslSocketFactory(sslSocketFactory, trustManager)
512
- .readTimeout(60, TimeUnit.SECONDS)
517
+ .connectTimeout(defaultTimeout, TimeUnit.MILLISECONDS)
518
+ .writeTimeout(defaultTimeout, TimeUnit.MILLISECONDS)
519
+ .readTimeout(defaultTimeout, TimeUnit.MILLISECONDS)
520
+ .callTimeout(defaultTimeout, TimeUnit.MILLISECONDS)
513
521
.retryOnConnectionFailure(false);
514
522
515
523
if (interceptor != null)
759
767
760
768
static void makeRequest(String name, JSONObject args, final RequestCallback callback, Long timeout) {
761
769
initialize();
762
- final Timer httpTimer = new Timer();
763
770
JSONObject body = new JSONObject();
764
771
try {
765
772
body.put("id", randomBytesHex(8));
@@ -778,10 +785,14 @@ END
778
785
.build();
779
786
780
787
final Call call = http.newCall(request);
788
+
789
+ if (timeout != null) {
790
+ call.timeout().timeout(timeout, TimeUnit.MILLISECONDS);
791
+ }
792
+
781
793
call.enqueue(new okhttp3.Callback() {
782
794
@Override
783
795
public void onFailure(Call call, final IOException e) {
784
- httpTimer.cancel();
785
796
new Handler(Looper.getMainLooper()).post(new Runnable() {
786
797
@Override
787
798
public void run() {
793
804
794
805
@Override
795
806
public void onResponse(Call call, final Response response) throws IOException {
796
- httpTimer.cancel();
797
807
if (response.code() == 502) {
798
808
Log.e("API", "HTTP " + response.code());
799
809
new Handler(Looper.getMainLooper()).post(new Runnable() {
832
842
});
833
843
}
834
844
});
835
- final TimerTask task = new TimerTask() {
836
- @Override
837
- public void run() {
838
- call.cancel();
839
- new Handler(Looper.getMainLooper()).post(new Runnable() {
840
- @Override
841
- public void run() {
842
- callback.onResult(new Error() {{type = ErrorType.Connection ; message = "Timeout" ;}}, null);
843
- }
844
- });
845
- return;
846
- }
847
- };
848
- httpTimer.schedule(task, timeout != null ? timeout : defaultTimeout);
849
845
}
850
846
851
847
static Calendar toCalendar(Date date){
0 commit comments