public void HandleFailureMessage(string code, string message) { DequeueMessage(); var parts = code.Split('.'); var classification = parts[1].ToLowerInvariant(); switch (classification) { case "clienterror": Error = new ClientException(code, message); break; case "transienterror": Error = new TransientException(code, message); break; default: Error = new DatabaseException(code, message); break; } CurrentResultBuilder?.InvalidateResult(); // an error received, so the result is broken _logger?.Debug("S: ", new FailureMessage(code, message)); }
private void Interrupt() { // when receiving a reset, we will interrupt to not saving any incoming records by clean the result builder. CurrentResultBuilder?.InvalidateResult(); CurrentResultBuilder = null; }
public void HandleIgnoredMessage() { DequeueMessage(); CurrentResultBuilder?.InvalidateResult(); // the result is ignored _logger?.Debug("S: ", new IgnoredMessage()); }