[WIP] Client distributor

So the translator could map eg sales1@machineA to sales

On Tuesday, November 11, 2014, John Simons <john.simons@particular.net>
wrote:

> Maybe is better to say that the translator maps an endpoint address to a
> logical group name of endpoints
>
> On Tuesday, November 11, 2014, Andreas Öhlund <notifications@github.com
> <javascript:_e(%7B%7D,'cvml','notifications@github.com');>> wrote:
>
>> In src/NServiceBus.Core/Unicast/Routing/IRouterDistributor.cs:
>>
>> > +{
>> > +    using NServiceBus.Config;
>> > +
>> > +    /// <summary>
>> > +    /// Base interface to implement to create different types of routing distributors.
>> > +    /// </summary>
>> > +    public interface IRouterDistributor
>> > +    {
>> > +        /// <summary>
>> > +        /// Returns the full address to send messages to based on the <paramref name="queueName"/> provided.
>> > +        /// If no routing distribution is available for the <paramref name="queueName"/>, the address specified in <see cref="UnicastBusConfig.MessageEndpointMappings"/> is used.
>> > +        /// </summary>
>> > +        /// <param name="queueName">The queue name the message is to be sent to.</param>
>> > +        /// <param name="address">The full address to send to. (The address needs to be able to be parsable by <see cref="Address.Parse"/>)</param>
>> > +        /// <returns><code>true</code> if route exists, otherwise <code>false</code>.</returns>
>> > +        bool TryGetRouteAddress(string queueName, out string address);
>>
>> Still not convinced that only the queue name is appropriate here. Eg.
>> azure has concepts of namespaces and rabbit virtual hosts, that info is in
>> the address and as I see it could be relevant to determine how to route?
>>
>> —
>> Reply to this email directly or view it on GitHub
>> <https://github.com/Particular/NServiceBus/pull/2565/files#r20140351>.
>>
>