public static SystemTrackerHeader Read(MessageHeaders messageHeaders) { SystemTrackerHeader systemTrackerHeader; if (!SystemTrackerHeader.TryRead(messageHeaders, out systemTrackerHeader)) { throw new ArgumentException(SRClient.SystemTrackerHeaderMissing, "messageHeaders"); } return(systemTrackerHeader); }
private static string GetSystemTracker(MessageProperties messageProperties, MessageHeaders messageHeaders) { string tracker; SystemTrackerMessageProperty systemTrackerMessageProperty; SystemTrackerHeader systemTrackerHeader; if (!SystemTrackerMessageProperty.TryGet <SystemTrackerMessageProperty>(messageProperties, out systemTrackerMessageProperty)) { tracker = (!SystemTrackerHeader.TryRead(messageHeaders, out systemTrackerHeader) ? string.Empty : systemTrackerHeader.Tracker); } else { tracker = systemTrackerMessageProperty.Tracker; } return(tracker); }
public static bool TryRead(MessageHeaders messageHeaders, out SystemTrackerHeader systemTrackerHeader) { systemTrackerHeader = null; if (messageHeaders == null) { return(false); } int num = messageHeaders.FindHeader("SystemTracker", "http://schemas.microsoft.com/servicebus/2010/08/protocol/"); if (num >= 0) { using (XmlDictionaryReader readerAtHeader = messageHeaders.GetReaderAtHeader(num)) { readerAtHeader.ReadStartElement(); systemTrackerHeader = new SystemTrackerHeader(readerAtHeader.ReadString()); } } return(systemTrackerHeader != null); }