static bool HasReachedMaxTime(TransportMessage message) { var timestampHeader = TransportMessageHelpers.GetHeader(message, SecondLevelRetriesHeaders.RetriesTimestamp); if (String.IsNullOrEmpty(timestampHeader)) { return(false); } try { var handledAt = DateTimeExtensions.ToUtcDateTime(timestampHeader); if (DateTime.UtcNow > handledAt.AddDays(1)) { return(true); } } // ReSharper disable once EmptyGeneralCatchClause // this code won't usually throw but in case a user has decided to hack a message/headers and for some bizarre reason // they changed the date and that parse fails, we want to make sure that doesn't prevent the message from being // forwarded to the error queue. catch (Exception) { } return(false); }
public static bool HasTimedOut(TransportMessage message) { var timestampHeader = TransportMessageHelpers.GetHeader(message, SecondLevelRetriesHeaders.RetriesTimestamp); try { var handledAt = timestampHeader.ToUtcDateTime(); if (DateTime.UtcNow > handledAt.AddDays(1)) { return(true); } } catch (Exception) { return(false); } return(false); }
static bool HasReachedMaxTime(TransportMessage message) { var timestampHeader = TransportMessageHelpers.GetHeader(message, SecondLevelRetriesHeaders.RetriesTimestamp); if (String.IsNullOrEmpty(timestampHeader)) { return(false); } try { var handledAt = DateTimeExtensions.ToUtcDateTime(timestampHeader); if (DateTime.UtcNow > handledAt.AddDays(1)) { return(true); } } catch (Exception) { } return(false); }