Skip to content

Commit 71603c2

Browse files
Travis Nickelsbording
authored andcommitted
Change connection string option to ValidateDeliveryLimit
1 parent 62b6153 commit 71603c2

File tree

3 files changed

+18
-42
lines changed

3 files changed

+18
-42
lines changed

src/ServiceControl.Transports.RabbitMQ/RabbitMQConventionalRoutingTransportCustomization.cs

Lines changed: 8 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -30,36 +30,24 @@ protected override RabbitMQTransport CreateTransport(TransportSettings transport
3030
var connectionConfiguration = ConnectionConfiguration.Create(transportSettings.ConnectionString, string.Empty);
3131
var connectionStringDictionary = ConnectionConfiguration.ParseNServiceBusConnectionString(transportSettings.ConnectionString, new StringBuilder());
3232

33-
var disableManagementApiString = GetValue(connectionStringDictionary, "DisableManagementApi", "false");
34-
if (!bool.TryParse(disableManagementApiString, out var disableManagementApi))
33+
var ValidateDeliveryLimitsString = GetValue(connectionStringDictionary, "ValidateDeliveryLimit", "false");
34+
if (!bool.TryParse(ValidateDeliveryLimitsString, out var validateDeliveryLimits))
3535
{
36-
throw new ArgumentException("The value for 'DisableManagementApi' must be either 'true' or 'false'");
36+
throw new ArgumentException("The value for 'ValidateDeliveryLimit' must be either 'true' or 'false'");
3737
}
3838

3939
var transport = new RabbitMQTransport(RoutingTopology.Conventional(queueType), transportSettings.ConnectionString, enableDelayedDelivery: false);
4040
transport.TransportTransactionMode = transport.GetSupportedTransactionModes().Contains(preferredTransactionMode) ? preferredTransactionMode : TransportTransactionMode.ReceiveOnly;
41-
transport.UseManagementApi = !disableManagementApi;
42-
43-
if (!transport.UseManagementApi)
44-
{
45-
rabbitMQTransport = transport;
46-
return transport;
47-
}
41+
transport.ValidateDeliveryLimits = validateDeliveryLimits;
4842

4943
var url = GetValue(connectionStringDictionary, "ManagementApiUrl", string.Empty);
50-
var username = GetValue(connectionStringDictionary, "ManagementApiUserName", connectionConfiguration.UserName);
51-
var password = GetValue(connectionStringDictionary, "ManagementApiPassword", connectionConfiguration.Password);
5244

5345
if (!string.IsNullOrEmpty(url))
5446
{
55-
if (!string.IsNullOrEmpty(username) && !string.IsNullOrEmpty(password))
56-
{
57-
transport.ManagementApiConfiguration = new ManagementApiConfiguration(url, username, password);
58-
}
59-
else
60-
{
61-
transport.ManagementApiConfiguration = new ManagementApiConfiguration(url);
62-
}
47+
var username = GetValue(connectionStringDictionary, "ManagementApiUserName", connectionConfiguration.UserName);
48+
var password = GetValue(connectionStringDictionary, "ManagementApiPassword", connectionConfiguration.Password);
49+
transport.ManagementApiConfiguration = !string.IsNullOrEmpty(username) && !string.IsNullOrEmpty(password)
50+
? new ManagementApiConfiguration(url, username, password) : new ManagementApiConfiguration(url);
6351
}
6452

6553
rabbitMQTransport = transport;

src/ServiceControl.Transports.RabbitMQ/RabbitMQDirectRoutingTransportCustomization.cs

Lines changed: 8 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -28,36 +28,24 @@ protected override RabbitMQTransport CreateTransport(TransportSettings transport
2828
var connectionConfiguration = ConnectionConfiguration.Create(transportSettings.ConnectionString, string.Empty);
2929
var connectionStringDictionary = ConnectionConfiguration.ParseNServiceBusConnectionString(transportSettings.ConnectionString, new StringBuilder());
3030

31-
var disableManagementApiString = GetValue(connectionStringDictionary, "DisableManagementApi", "false");
32-
if (!bool.TryParse(disableManagementApiString, out var disableManagementApi))
31+
var ValidateDeliveryLimitsString = GetValue(connectionStringDictionary, "ValidateDeliveryLimits", "true");
32+
if (!bool.TryParse(ValidateDeliveryLimitsString, out var validateDeliveryLimits))
3333
{
34-
throw new ArgumentException("The value for 'DisableManagementApi' must be either 'true' or 'false'");
34+
throw new ArgumentException("The value for 'ValidateDeliveryLimit' must be either 'true' or 'false'");
3535
}
3636

3737
var transport = new RabbitMQTransport(RoutingTopology.Direct(queueType, routingKeyConvention: type => type.FullName.Replace(".", "-")), transportSettings.ConnectionString, enableDelayedDelivery: false);
3838
transport.TransportTransactionMode = transport.GetSupportedTransactionModes().Contains(preferredTransactionMode) ? preferredTransactionMode : TransportTransactionMode.ReceiveOnly;
39-
transport.UseManagementApi = !disableManagementApi;
40-
41-
if (!transport.UseManagementApi)
42-
{
43-
rabbitMQTransport = transport;
44-
return transport;
45-
}
39+
transport.ValidateDeliveryLimits = validateDeliveryLimits;
4640

4741
var url = GetValue(connectionStringDictionary, "ManagementApiUrl", string.Empty);
48-
var username = GetValue(connectionStringDictionary, "ManagementApiUserName", connectionConfiguration.UserName);
49-
var password = GetValue(connectionStringDictionary, "ManagementApiPassword", connectionConfiguration.Password);
5042

5143
if (!string.IsNullOrEmpty(url))
5244
{
53-
if (!string.IsNullOrEmpty(username) && !string.IsNullOrEmpty(password))
54-
{
55-
transport.ManagementApiConfiguration = new ManagementApiConfiguration(url, username, password);
56-
}
57-
else
58-
{
59-
transport.ManagementApiConfiguration = new ManagementApiConfiguration(url);
60-
}
45+
var username = GetValue(connectionStringDictionary, "ManagementApiUserName", connectionConfiguration.UserName);
46+
var password = GetValue(connectionStringDictionary, "ManagementApiPassword", connectionConfiguration.Password);
47+
transport.ManagementApiConfiguration = !string.IsNullOrEmpty(username) && !string.IsNullOrEmpty(password)
48+
? new ManagementApiConfiguration(url, username, password) : new ManagementApiConfiguration(url);
6149
}
6250

6351
rabbitMQTransport = transport;

src/ServiceControl.Transports.RabbitMQ/transport.manifest

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
"DisplayName": "RabbitMQ - Conventional routing topology (quorum queues)",
2828
"AssemblyName": "ServiceControl.Transports.RabbitMQ",
2929
"TypeName": "ServiceControl.Transports.RabbitMQ.RabbitMQQuorumConventionalRoutingTransportCustomization, ServiceControl.Transports.RabbitMQ",
30-
"SampleConnectionString": "host=<HOSTNAME>;username=<USERNAME>;password=<PASSWORD>;DisableRemoteCertificateValidation=<true|false(default)>;UseExternalAuthMechanism=<true|false(default)>;DisableManagementApi=<true|false(default)>;ManagementApiUrl=<SCHEME://USERNAME:PASSWORD@HOST:PORT>",
30+
"SampleConnectionString": "host=<HOSTNAME>;username=<USERNAME>;password=<PASSWORD>;DisableRemoteCertificateValidation=<true|false(default)>;UseExternalAuthMechanism=<true|false(default)>;ValidateDeliveryLimits=<true|false(default)>;ManagementApiUrl=<SCHEME://HOST:PORT;ManagementApiUserName=<USERNAME>;ManagementApiPassword=<Password>",
3131
"AvailableInSCMU": true,
3232
"Aliases": [
3333
"ServiceControl.Transports.RabbitMQ.QuorumConventialRoutingTopologyRabbitMQTransport, ServiceControl.Transports.RabbitMQ"
@@ -38,7 +38,7 @@
3838
"DisplayName": "RabbitMQ - Direct routing topology (quorum queues)",
3939
"AssemblyName": "ServiceControl.Transports.RabbitMQ",
4040
"TypeName": "ServiceControl.Transports.RabbitMQ.RabbitMQQuorumDirectRoutingTransportCustomization, ServiceControl.Transports.RabbitMQ",
41-
"SampleConnectionString": "host=<HOSTNAME>;username=<USERNAME>;password=<PASSWORD>;DisableRemoteCertificateValidation=<true|false(default)>;UseExternalAuthMechanism=<true|false(default)>;DisableManagementApi=<true|false(default)>;ManagementApiUrl=<SCHEME://USERNAME:PASSWORD@HOST:PORT>",
41+
"SampleConnectionString": "host=<HOSTNAME>;username=<USERNAME>;password=<PASSWORD>;DisableRemoteCertificateValidation=<true|false(default)>;UseExternalAuthMechanism=<true|false(default)>;ValidateDeliveryLimits=<true|false(default)>ManagementApiUrl=<SCHEME://HOST:PORT;ManagementApiUserName=<USERNAME>;ManagementApiPassword=<Password>",
4242
"AvailableInSCMU": true,
4343
"Aliases": [
4444
"ServiceControl.Transports.RabbitMQ.QuorumDirectRoutingTopologyRabbitMQTransport, ServiceControl.Transports.RabbitMQ"

0 commit comments

Comments
 (0)