public override void NotifyFailed(string deviceId, LoRaDeviceRequestFailedReason reason, Exception exception = null) { base.NotifyFailed(deviceId, reason, exception); this.ProcessingFailed = true; this.ProcessingFailedReason = reason; this.complete.Release(); }
private void NotifyQueueItemsDueToError(LoRaDeviceRequestFailedReason loRaDeviceRequestFailedReason = LoRaDeviceRequestFailedReason.ApplicationError) { List <LoRaRequest> failedRequests; lock (this.queueLock) { failedRequests = this.queuedRequests; this.queuedRequests = new List <LoRaRequest>(); LoadingDevicesFailed = true; } failedRequests.ForEach(x => x.NotifyFailed(loRaDeviceRequestFailedReason)); }
private void LogRequestFailed(LoRaRequest request, LoRaDeviceRequestFailedReason failedReason) { var deviceId = ConversionHelper.ByteArrayToString(request.Payload.DevAddr); switch (failedReason) { case LoRaDeviceRequestFailedReason.NotMatchingDeviceByMicCheck: Logger.Log(deviceId, $"with devAddr {ConversionHelper.ByteArrayToString(request.Payload.DevAddr)} check MIC failed", LogLevel.Debug); break; case LoRaDeviceRequestFailedReason.NotMatchingDeviceByDevAddr: Logger.Log(deviceId, $"device is not our device, ignore message", LogLevel.Debug); break; case LoRaDeviceRequestFailedReason.ApplicationError: Logger.Log(deviceId, "problem resolving device", LogLevel.Error); break; } }
private void LogRequestFailed(LoRaRequest request, LoRaDeviceRequestFailedReason failedReason) { switch (failedReason) { case LoRaDeviceRequestFailedReason.NotMatchingDeviceByMicCheck: this.logger.LogDebug($"with devAddr {request.Payload.DevAddr} check MIC failed"); break; case LoRaDeviceRequestFailedReason.BelongsToAnotherGateway: case LoRaDeviceRequestFailedReason.NotMatchingDeviceByDevAddr: this.logger.LogDebug("device is not our device, ignore message"); break; case LoRaDeviceRequestFailedReason.ApplicationError: this.logger.LogError("problem resolving device"); break; case LoRaDeviceRequestFailedReason.InvalidNetId: case LoRaDeviceRequestFailedReason.InvalidUpstreamMessage: case LoRaDeviceRequestFailedReason.InvalidRegion: case LoRaDeviceRequestFailedReason.UnknownDevice: case LoRaDeviceRequestFailedReason.InvalidJoinRequest: case LoRaDeviceRequestFailedReason.HandledByAnotherGateway: case LoRaDeviceRequestFailedReason.JoinDevNonceAlreadyUsed: case LoRaDeviceRequestFailedReason.JoinMicCheckFailed: case LoRaDeviceRequestFailedReason.ReceiveWindowMissed: case LoRaDeviceRequestFailedReason.ConfirmationResubmitThresholdExceeded: case LoRaDeviceRequestFailedReason.InvalidFrameCounter: case LoRaDeviceRequestFailedReason.IoTHubProblem: case LoRaDeviceRequestFailedReason.DeduplicationDrop: case LoRaDeviceRequestFailedReason.DeviceClientConnectionFailed: default: this.logger.LogDebug("device request failed"); break; } }
public virtual void NotifyFailed(string deviceId, LoRaDeviceRequestFailedReason reason, Exception exception = null) { }
internal virtual void NotifyFailed(LoRaDeviceRequestFailedReason reason, Exception exception = null) => NotifyFailed((string)null, reason, exception);
internal void NotifyFailed(LoRaDevice loRaDevice, LoRaDeviceRequestFailedReason reason, Exception exception = null) => NotifyFailed(loRaDevice?.DevEUI.ToString(), reason, exception);
public override void NotifyFailed(string deviceId, LoRaDeviceRequestFailedReason reason, Exception exception = null) { this.wrappedRequest.NotifyFailed(deviceId, reason, exception); this.LogProcessingTime(deviceId); }
public LoRaDeviceRequestProcessResult(LoRaDevice loRaDevice, LoRaRequest request, LoRaDeviceRequestFailedReason failedReason) { this.LoRaDevice = loRaDevice; this.Request = request; this.FailedReason = failedReason; }
internal void NotifyFailed(LoRaDevice loRaDevice, LoRaDeviceRequestFailedReason reason, Exception exception = null) => this.NotifyFailed(loRaDevice?.DevEUI, reason, exception);