private Broker Register(MessageUnit unit, Address address) { if (!this.units.ContainsKey(address)) { this.units.Add(address, new List<MessageUnit>()); unit.SetOutgoing(this.Outgoing); this.units[address].Add(unit); } return this; }
private async Task Outgoing(TransportMessage message) { var address = message.Headers[AcceptanceTestHeaders.Destination].Parse(); IList<MessageUnit> destinations; if (!this.units.TryGetValue(address, out destinations)) { destinations = new MessageUnit[] { }; } foreach (MessageUnit unit in destinations) { await unit.HandOver(message) .ConfigureAwait(false); } }
public Broker Register(MessageUnit unit, Topic topic) { return this.Register(unit, (Address)topic); }
public Broker Register(MessageUnit unit) { return this.Register(unit, unit.Endpoint); }
public Broker Register(MessageUnit unit, Topic topic) { return(this.Register(unit, (Address)topic)); }
public Broker Register(MessageUnit unit) { return(this.Register(unit, unit.Endpoint)); }