• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
Aucun tag

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

OmegaChartのソースコードの保守


Commit MetaInfo

Révisiona598a7692389b27c2f0867c8a71f7303c510b840 (tree)
l'heure2014-08-19 00:07:36
Auteurpanacoran <panacoran@user...>
Commiterpanacoran

Message de Log

Yahoo.csのエラー処理を修正する

- ステータスコード999のエラーもリトライの対象にする
- 日経平均の取得に失敗したときにArgumentOutOfRangeExceptionになるのを直す

Change Summary

Modification

--- a/Yahoo.cs
+++ b/Yahoo.cs
@@ -72,7 +72,7 @@ namespace Zanetti.DataSource.Specialized
7272 var nikkei225 = FetchPrices((int)BuiltInIndex.Nikkei225, original);
7373 if (nikkei225.ReturnStatus != FetchResult.Status.Success)
7474 throw new Exception(string.Format("株価の取得に失敗しました。時間を置いて再試行してください。: {0}~{1}",
75- _series[0], _series[_series.Count - 1]));
75+ original[0], original[original.Count - 1]));
7676 dates.RemoveRange(0, n);
7777 _series.Clear();
7878 foreach (var date in original)
@@ -214,9 +214,13 @@ namespace Zanetti.DataSource.Specialized
214214 switch (e.Status)
215215 {
216216 case WebExceptionStatus.ProtocolError:
217- var c = ((HttpWebResponse)e.Response).StatusCode;
218- if (c == HttpStatusCode.BadGateway || c == HttpStatusCode.InternalServerError)
219- goto case WebExceptionStatus.Timeout;
217+ switch (((HttpWebResponse)e.Response).StatusCode)
218+ {
219+ case (HttpStatusCode)999:
220+ case HttpStatusCode.InternalServerError:
221+ case HttpStatusCode.BadGateway:
222+ return FetchResult.Status.Retry;
223+ }
220224 throw;
221225 case WebExceptionStatus.Timeout:
222226 case WebExceptionStatus.ConnectionClosed: