NServiceBus.AuditConfigReader.GetConfiguredAuditQueue C# (CSharp) Method

GetConfiguredAuditQueue() static private method

static private GetConfiguredAuditQueue ( ReadOnlySettings settings, System.Result &result ) : bool
settings ReadOnlySettings
result System.Result
return bool
        internal static bool GetConfiguredAuditQueue(ReadOnlySettings settings, out Result result)
        {
            if (settings.TryGet(out result))
            {
                return true;
            }

            var auditConfig = settings.GetConfigSection<AuditConfig>();
            string address;
            TimeSpan? timeToBeReceived = null;
            if (auditConfig == null)
            {
                address = ReadAuditQueueNameFromRegistry();
            }
            else
            {
                var ttbrOverride = auditConfig.OverrideTimeToBeReceived;

                if (ttbrOverride > TimeSpan.Zero)
                {
                    timeToBeReceived = ttbrOverride;
                }
                if (string.IsNullOrWhiteSpace(auditConfig.QueueName))
                {
                    address = ReadAuditQueueNameFromRegistry();
                }
                else
                {
                    address = auditConfig.QueueName;
                }
            }
            if (address == null)
            {
                result = null;
                return false;
            }
            result = new Result
            {
                Address = address,
                TimeToBeReceived = timeToBeReceived
            };
            return true;
        }