internal static ConfigurationHostSettings GetConfigurationHostSettings(this Uri address) { if (string.Compare("rabbitmq", address.Scheme, StringComparison.OrdinalIgnoreCase) != 0) { throw new RabbitMqAddressException("The invalid scheme was specified: " + address.Scheme); } var hostSettings = new ConfigurationHostSettings { Host = address.Host, Username = "", Password = "", Port = address.IsDefaultPort ? 5672 : address.Port }; if (!string.IsNullOrEmpty(address.UserInfo)) { string[] parts = address.UserInfo.Split(':'); hostSettings.Username = parts[0]; if (parts.Length >= 2) { hostSettings.Password = parts[1]; } } string name = address.AbsolutePath.Substring(1); string[] pathSegments = name.Split('/'); hostSettings.VirtualHost = pathSegments.Length == 2 ? Uri.UnescapeDataString(pathSegments[0]) : "/"; hostSettings.Heartbeat = address.Query.GetValueFromQueryString("heartbeat", (ushort)0); return(hostSettings); }
internal static ConfigurationHostSettings GetConfigurationHostSettings(this Uri address) { var hostAddress = new RabbitMqHostAddress(address); var hostSettings = new ConfigurationHostSettings { Host = hostAddress.Host, VirtualHost = hostAddress.VirtualHost, Username = "", Password = "", }; if (hostAddress.Port.HasValue) { hostSettings.Port = hostAddress.Port.Value; } if (!string.IsNullOrEmpty(address.UserInfo)) { string[] parts = address.UserInfo.Split(':'); hostSettings.Username = parts[0]; if (parts.Length >= 2) { hostSettings.Password = parts[1]; } } hostSettings.Heartbeat = hostAddress.Heartbeat ?? (ushort)0; return(hostSettings); }
public RabbitMqHostBusFactory(ISettingsProvider settingsProvider) { if (!settingsProvider.TryGetSettings("RabbitMQ", out RabbitMqSettings settings)) { throw new ConfigurationException("The RabbitMQ settings were not available"); } _hostSettings = new ConfigurationHostSettings { Host = settings.Host ?? "[::1]", Port = settings.Port ?? 5672, VirtualHost = string.IsNullOrWhiteSpace(settings.VirtualHost) ? "/" : settings.VirtualHost.Trim('/'), Username = settings.Username ?? "guest", Password = settings.Password ?? "guest", Heartbeat = settings.Heartbeat ?? 0, }; if (!string.IsNullOrWhiteSpace(settings.ClusterMembers)) { var configurator = new RabbitMqClusterConfigurator(); foreach (var nodeAddress in settings.ClusterMembers.Split(',')) { configurator.Node(nodeAddress); } _hostSettings.EndpointResolver = configurator.GetEndpointResolver(); } }
internal static ConfigurationHostSettings GetConfigurationHostSettings(this Uri address) { var hostAddress = new RabbitMqHostAddress(address); var hostSettings = new ConfigurationHostSettings { Host = hostAddress.Host, VirtualHost = hostAddress.VirtualHost, Username = "", Password = "" }; if (hostAddress.Port.HasValue) { hostSettings.Port = hostAddress.Port.Value; } if (!string.IsNullOrEmpty(address.UserInfo)) { var parts = address.UserInfo.Split(':'); hostSettings.Username = UriDecode(parts[0]); if (parts.Length >= 2) { hostSettings.Password = UriDecode(parts[1]); } } hostSettings.Heartbeat = TimeSpan.FromSeconds(hostAddress.Heartbeat ?? 0); return(hostSettings); }
public void IgnoreReply_Https() { HttpHostSettings x = new ConfigurationHostSettings("replys", "localhost", 80, HttpMethod.Post); HttpHostSettings y = new ConfigurationHostSettings("https", "localhost", 80, HttpMethod.Post); var result = HttpHostEqualityComparer.Default.Equals(x, y); Assert.That(result, Is.EqualTo(true)); }
public ActiveMqOptionSet() { _hostSettings = new ConfigurationHostSettings(new Uri("activemq://localhost")); Add <string>("h|host:", "The host name of the broker", x => _hostSettings.Host = x); Add <int>("port:", "The virtual host to use", value => _hostSettings.Port = value); Add <string>("u|username:"******"Username (if using basic credentials)", value => _hostSettings.Username = value); Add <string>("p|password:"******"Password (if using basic credentials)", value => _hostSettings.Password = value); }
public HttpHostConfigurator(string scheme, string host, int port) { _settings = new ConfigurationHostSettings { Scheme = scheme, Host = host, Port = port, Method = HttpMethod.Post }; }
public void Failover_should_take_precendence_in_uri_construction() { var settings = new ConfigurationHostSettings(new Uri("activemq://fake-host")) { Port = 61616, FailoverHosts = new[] { "failover1", "failover2" } }; Assert.That(settings.BrokerAddress, Is.EqualTo(new Uri( "activemq:failover:(tcp://failover1:61616/,tcp://failover2:61616/)?wireFormat.tightEncodingEnabled=true&nms.AsyncSend=true"))); }
public void Failover_should_take_precendence_in_uri_construction() { var settings = new ConfigurationHostSettings() { Host = "fake-host", Port = 61616, FailoverHosts = new [] { "failover1", "failover2" } }; Assert.That(settings.BrokerAddress, Is.EqualTo(new Uri("activemq:failover:(tcp://failover1:61616/,tcp://failover2:61616/)"))); }
internal static ConfigurationHostSettings GetConfigurationHostSettings(this Uri address) { short defaultPort = 0; switch (address.Scheme.ToLowerInvariant()) { case "rabbitmq": case "amqp": defaultPort = 5672; break; case "rabbitmqs": case "amqps": defaultPort = 5671; break; default: throw new RabbitMqAddressException("The invalid scheme was specified: " + address.Scheme); } var hostSettings = new ConfigurationHostSettings { Host = address.Host, Username = "", Password = "", Port = address.IsDefaultPort ? defaultPort : address.Port }; if (!string.IsNullOrEmpty(address.UserInfo)) { string[] parts = address.UserInfo.Split(':'); hostSettings.Username = parts[0]; if (parts.Length >= 2) { hostSettings.Password = parts[1]; } } string name = address.AbsolutePath.Substring(1); string[] pathSegments = name.Split('/'); hostSettings.VirtualHost = pathSegments.Length == 2 ? Uri.UnescapeDataString(pathSegments[0]) : "/"; hostSettings.Heartbeat = address.Query.GetValueFromQueryString("heartbeat", (ushort)0); return(hostSettings); }
public HttpHostConfigurator(string scheme, string host, int port) { _settings = new ConfigurationHostSettings(scheme, host, port, HttpMethod.Post); }
internal static ConfigurationHostSettings GetConfigurationHostSettings(this Uri address) { if (string.Compare("rabbitmq", address.Scheme, StringComparison.OrdinalIgnoreCase) != 0) throw new RabbitMqAddressException("The invalid scheme was specified: " + address.Scheme); var hostSettings = new ConfigurationHostSettings { Host = address.Host, Username = "", Password = "", Port = address.IsDefaultPort ? 5672 : address.Port }; if (!string.IsNullOrEmpty(address.UserInfo)) { string[] parts = address.UserInfo.Split(':'); hostSettings.Username = parts[0]; if (parts.Length >= 2) hostSettings.Password = parts[1]; } string name = address.AbsolutePath.Substring(1); string[] pathSegments = name.Split('/'); hostSettings.VirtualHost = pathSegments.Length == 2 ? pathSegments[0] : "/"; hostSettings.Heartbeat = address.Query.GetValueFromQueryString("heartbeat", (ushort)0); return hostSettings; }