public static IEnumerable<KCVDBApiItem> CreateInstance(FatalErrorEventArgs fatalArgs) { var item = new KCVDBApiItem(); item.Date = DateTime.Now; item.SendStatus = KCVDBSendStatus.FatalError; item.ErrorMessage = fatalArgs.Message; yield return item; }
public static IEnumerable<KCVDBApiItem> CreateInstance(ApiDataSentEventArgs sentArgs) { if (sentArgs.ApiData == null || sentArgs.TrackingIds == null) yield break; var n = Math.Min(sentArgs.ApiData.Length, sentArgs.TrackingIds.Length); foreach (var i in Enumerable.Range(0, n)) { var item = new KCVDBApiItem(); if (sentArgs.ApiData[i] != null) { item.Date = DateConverter(sentArgs.ApiData[i].HttpDateHeaderValue); item.Url = sentArgs.ApiData[i].RequestUri; item.HttpStatusCode = sentArgs.ApiData[i].StatusCode; } item.SendStatus = KCVDBSendStatus.Success; item.TrackingId = sentArgs.TrackingIds[i]; if (i == n - 1) { item.Size = sentArgs.SentApiData.PayloadByteCount / 1024;//最後のやつだけ値を与える、それ以外は0KBとみなす } yield return item; } }
public static IEnumerable<KCVDBApiItem> CreateInstance(ApiDataSendingEventArgs sendingArgs) { if (sendingArgs.ApiData == null || sendingArgs.TrackingIds == null) yield break; foreach (var i in Enumerable.Range(0, Math.Min(sendingArgs.ApiData.Length, sendingArgs.TrackingIds.Length))) { var item = new KCVDBApiItem(); if (sendingArgs.ApiData[i] != null) { item.Date = DateConverter(sendingArgs.ApiData[i].HttpDateHeaderValue); item.Url = sendingArgs.ApiData[i].RequestUri; item.HttpStatusCode = sendingArgs.ApiData[i].StatusCode; } item.SendStatus = KCVDBSendStatus.Sending; item.TrackingId = sendingArgs.TrackingIds[i]; yield return item; } }
public static IEnumerable<KCVDBApiItem> CreateInstance(InternalErrorEventArgs internalErrorArgs) { if (internalErrorArgs.ApiData == null || internalErrorArgs.TrackingIds == null) yield break; foreach (var i in Enumerable.Range(0, Math.Min(internalErrorArgs.ApiData.Length, internalErrorArgs.TrackingIds.Length))) { var item = new KCVDBApiItem(); if (internalErrorArgs.ApiData[i] != null) { item.Date = DateConverter(internalErrorArgs.ApiData[i].HttpDateHeaderValue); item.Url = internalErrorArgs.ApiData[i].RequestUri; item.HttpStatusCode = internalErrorArgs.ApiData[i].StatusCode; } item.SendStatus = KCVDBSendStatus.InternalError; item.TrackingId = internalErrorArgs.TrackingIds[i]; item.ErrorMessage = internalErrorArgs.Message; yield return item; } }