public void Failed(Exception e) { try { if (CanRetry(e)) { _sender.Send(this); return; } Logger.Info(e, "Send message failed"); if (_messageStore != null) { if (_message.StoreAtFailed) { _messageStore.Save(this); } else { _messageStore.Error(this, -100); } } OnFailed(); } catch (Exception ex) { Logger.Error(ex); } finally { } }