public static void SafeAbandonAsync(this BrokeredMessage message, string subscription, Action <bool> callback, long processingElapsedMilliseconds, long schedulingElapsedMilliseconds, Stopwatch roundtripStopwatch) { SafeMessagingActionAsync( ac => message.BeginAbandon(ac, null), message.EndAbandon, message, callback, "An error occurred while abandoning message {0} in subscription {1} with processing time {3} (scheduling {4} request {5} roundtrip {6}). Error message: {2}", message.MessageId, subscription, processingElapsedMilliseconds, schedulingElapsedMilliseconds, roundtripStopwatch); }