public static IRoutingEntry Deserialize(string headerValue) { if (headerValue == null) { throw new ArgumentNullException("headerValue"); } RoutingEntryHeaderSerializer.RoutingEntryParts routingEntryParts; if (!RoutingEntryHeaderSerializer.TrySplitEntry(headerValue, out routingEntryParts)) { throw new ArgumentException("Value is incorrectly formatted", "headerValue"); } IRoutingKey key = RoutingEntryHeaderSerializer.DeserializeRoutingKey(routingEntryParts.KeyType, routingEntryParts.KeyValue); IRoutingDestination destination = RoutingEntryHeaderSerializer.DeserializeRoutingDestination(routingEntryParts.DestinationType, routingEntryParts.DestinationValue); return(RoutingEntryHeaderSerializer.AssembleRoutingEntry(key, destination, routingEntryParts.Timestamp)); }
public static bool IsValidHeaderString(string headerValue) { RoutingEntryHeaderSerializer.RoutingEntryParts routingEntryParts; return(headerValue != null && RoutingEntryHeaderSerializer.TrySplitEntry(headerValue, out routingEntryParts)); }