private void Receiver_ResponseReceived(object sender, ResponseFromServerEventArgs e) { StaticFileLogger.Current.LogEvent(GetType().Name, "Receiver_ResponseReceived", $"Response received: {((object)e.Receipt).ToString()}", EventLogEntryType.Information); if (e.Receipt.Status.HasValue) { switch (e.Receipt.Status.Value) { case 1: CurrentStatus = WorkflowStatus.SignedInButNotCollecting; break; case 10: case 11: CurrentStatus = WorkflowStatus.StoppedAndPreparingToExit; _heartbeatTimerAndWorker.Timer.Stop(); break; } OnEventFromServer(e); } if (e.Receipt.Status.HasValue) { ChangeSecondsToStart(e.Receipt.Status.Value); } if (e.Receipt.Status.HasValue) { ChangeSecondsToStop(e.Receipt.Status.Value); } }
private void _communicationsManager_EventFromServer(object sender, ResponseFromServerEventArgs e) { InvokeUI(delegate { ResponseFromServerEventArgs.ServerResponseStatus status = e.Status; switch (status) { case ResponseFromServerEventArgs.ServerResponseStatus.Empty: break; default: if ((uint)(status - 10) <= 1u) { _frmUser.SpinnerEnabled = false; if (_communicationsManager.CurrentStatus != WorkflowStatus.SignOutSent) { MessageBox.Show(this, e.Receipt.Text, "Fejl i elev ID", MessageBoxButtons.OK, MessageBoxIcon.Hand); CreateContextMenu(); _communicationsManager = new CommunicationsManager(); _communicationsManager.EventFromServer += _communicationsManager_EventFromServer; _communicationsManager.TimeToStop += _communicationsManager_TimeToStop; StudentId = null; } } else { MessageBox.Show(this, e.Receipt.Text, "Message from server", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } break; case ResponseFromServerEventArgs.ServerResponseStatus.SuccessfulLogin: _frmUser.SpinnerEnabled = false; _frmUser.ClosingFromExternalSource = true; _frmUser.Close(); _statusbar.StudentId = "Eksamenskode: " + StudentId; SubscribeToActiveWindowChangedTool(); if (_communicationsManager.Receiver.IsInternalCGITestMode) { MessageBox.Show(this, e.Receipt.Text, "Message from server", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } break; } }); }
protected void OnEventFromServer(ResponseFromServerEventArgs e) { this.EventFromServer?.Invoke(this, e); }