/// <summary> /// Builds the outbound error transport; where to send messages that fail. /// </summary> /// <param name="settings"> using these settings </param> /// <returns> The outbound transport instance, non null </returns> public virtual IOutboundTransport BuildError([NotNull] ITransportSettings settings) { if (settings == null) { throw new ArgumentNullException("settings"); } EnsureProtocolIsCorrect(settings.Address.Uri); var address = _addresses.Retrieve(settings.Address.Uri, () => AzureServiceBusEndpointAddressImpl.Parse(settings.Address.Uri)); _logger.DebugFormat("building error transport for address '{0}'", address); var client = GetConnection(address); return(new OutboundTransportImpl(address, client, _senderSettings)); }
/// <summary> /// Builds the inbound transport for the service bus endpoint, /// </summary> /// <param name="settings"> using these settings </param> /// <returns> A non-null instance of the inbound transport. </returns> public virtual IInboundTransport BuildInbound([NotNull] ITransportSettings settings) { if (settings == null) { throw new ArgumentNullException("settings"); } EnsureProtocolIsCorrect(settings.Address.Uri); var address = _addresses.Retrieve(settings.Address.Uri, () => AzureServiceBusEndpointAddressImpl.Parse(settings.Address.Uri)); _logger.DebugFormat("building inbound transport for address '{0}'", address); var client = GetConnection(address); return(new InboundTransportImpl(address, client, new PurgeImpl(settings.PurgeExistingMessages, address), MessageNameFormatter, _receiverSettings)); }