Commit f6dd3d4d by Kazuyuki Hida

API呼び出し失敗時にリトライするようにした。

parent 252457ed
...@@ -832,11 +832,15 @@ public class AcmsClient implements AcmsClientResponseListener { ...@@ -832,11 +832,15 @@ public class AcmsClient implements AcmsClientResponseListener {
Logger.d(TAG, "[url : %s], [param : %s]", apiUrl, param==null?"":param.toHttpParameterString()); Logger.d(TAG, "[url : %s], [param : %s]", apiUrl, param==null?"":param.toHttpParameterString());
HttpTaskWorker<HttpParameterObject> httpTaskThread = new HttpTaskWorker<HttpParameterObject>(methodName, apiUrl, param); HttpTaskWorker<HttpParameterObject> httpTaskThread = null;
try { try {
httpTaskThread.start(); long t = HttpRequestSender.DefaultConnectionTimeout * 2;
httpTaskThread.join(HttpRequestSender.DefaultConnectionTimeout); for (int i = 0; i < 3; i++, t *= 2) {
httpTaskThread = new HttpTaskWorker<HttpParameterObject>(methodName, apiUrl, param);
httpTaskThread.start();
httpTaskThread.join(t);
}
} catch (Exception e) { } catch (Exception e) {
Logger.e(TAG, e); Logger.e(TAG, e);
Logger.d(TAG, ExceptionDetailMessage.SERVER_IS_DISCONNECTED); Logger.d(TAG, ExceptionDetailMessage.SERVER_IS_DISCONNECTED);
...@@ -880,12 +884,14 @@ public class AcmsClient implements AcmsClientResponseListener { ...@@ -880,12 +884,14 @@ public class AcmsClient implements AcmsClientResponseListener {
} }
String apiUrl = url; String apiUrl = url;
HttpMultipartTaskWorker<HttpMultipart> httpTaskThread = null;
HttpMultipartTaskWorker<HttpMultipart> httpTaskThread = new HttpMultipartTaskWorker<HttpMultipart>(apiUrl, param);
try{ try{
httpTaskThread.start(); long t = HttpRequestSender.DefaultConnectionTimeout * 2;
httpTaskThread.join(HttpRequestSender.DefaultConnectionTimeout); for (int i = 0; i < 3; i++, t *= 2) {
httpTaskThread = new HttpMultipartTaskWorker<HttpMultipart>(apiUrl, param);
httpTaskThread.start();
httpTaskThread.join(t);
}
} catch (Exception e) { } catch (Exception e) {
Logger.d(TAG, ExceptionDetailMessage.SERVER_IS_DISCONNECTED); Logger.d(TAG, ExceptionDetailMessage.SERVER_IS_DISCONNECTED);
// サーバとの通信中、予期せぬ問題が発生しました。(1) // サーバとの通信中、予期せぬ問題が発生しました。(1)
......
...@@ -42,10 +42,10 @@ public class HttpRequestSender { ...@@ -42,10 +42,10 @@ public class HttpRequestSender {
/** /**
* ホストに接続するまでのタイムアウト時間をミリ秒で設定します。<br> * ホストに接続するまでのタイムアウト時間をミリ秒で設定します。<br>
* デフォルトは20,000ミリ秒(20秒)です。 * デフォルトは5,000ミリ秒(5秒)です。
* @since 1.0.0 * @since 1.0.0
*/ */
public static final int DefaultConnectionTimeout = 20 * 1000; public static final int DefaultConnectionTimeout = 5 * 1000;
/** /**
* 通信に利用する既定の文字セットです。UTF-8となります。 * 通信に利用する既定の文字セットです。UTF-8となります。
* @since 1.0.0 * @since 1.0.0
......
...@@ -1462,4 +1462,5 @@ ...@@ -1462,4 +1462,5 @@
<string name="msg_permission_dialog_bluetooth">Bluetooth利用権限が必要です。\nアプリ設定画面へ遷移します。</string> <string name="msg_permission_dialog_bluetooth">Bluetooth利用権限が必要です。\nアプリ設定画面へ遷移します。</string>
<string name="dashboard">ダッシュボード</string> <string name="dashboard">ダッシュボード</string>
<string name="failed_get_master_data">マスタデータの取得に失敗しました。画面を更新してください。</string>
</resources> </resources>
...@@ -1475,4 +1475,5 @@ ...@@ -1475,4 +1475,5 @@
<string name="msg_permission_dialog_bluetooth">Bluetooth usage authority is required. \n To transition to the application setting screen.</string> <string name="msg_permission_dialog_bluetooth">Bluetooth usage authority is required. \n To transition to the application setting screen.</string>
<string name="dashboard">Dashboard</string> <string name="dashboard">Dashboard</string>
<string name="failed_get_master_data">Failed to get master data. Refresh Home screen.</string>
</resources> </resources>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment