示例#1
0
        private TasksConfig(Builder builder)
        {
            _activeInterval        = builder.activeInterval;
            _workOnUsersOnly       = builder.workOnUsersOnly ?? new List <string>();
            _aggregateMode         = builder.aggregateMode;
            _enableSignalr         = builder.enableSignalr;
            _chunkOfUidl           = builder.chunkOfUidl > 0 ? builder.chunkOfUidl : 100;
            _maxMessagesPerSession = builder.maxMessagesPerSession > 0 ? builder.maxMessagesPerSession : 1;
            _maxTasksAtOnce        = builder.maxTasksAtOnce > 0 ? builder.maxTasksAtOnce : 1;
            _overdueAccountDelay   = builder.overdueAccountDelay;
            _quotaEndedDelay       = builder.quotaEndedDelay;
            _tenantCachingPeriod   = builder.tenantCachingPeriod;
            _queueLifetimeInteravl = builder.queueLifetime == TimeSpan.MinValue ? TimeSpan.FromSeconds(30) : builder.queueLifetime;
            _showActiveUpLogs      = builder.showActiveUpLogs;

            if (builder.inactiveMailboxesRatio < 0)
            {
                builder.inactiveMailboxesRatio = 0;
            }
            if (builder.inactiveMailboxesRatio > 100)
            {
                builder.inactiveMailboxesRatio = 100;
            }

            _inactiveMailboxesRatio         = builder.inactiveMailboxesRatio;
            _authErrorWarningTimeout        = builder.authErrorWarningTimeout;
            _authErrorDisableMailboxTimeout = builder.authErrorDisableMailboxTimeout;
            _tenantOverdueDays   = builder.tenantOverdueDays;
            _minQuotaBalance     = builder.minQuotaBalance;
            _saveOriginalMessage = builder.saveOriginalMessage;
        }
示例#2
0
            public virtual Builder SetAggregateMode(string aggregateModeObj)
            {
                switch (aggregateModeObj)
                {
                case "external":
                    aggregateMode = AggregateModeType.External;
                    break;

                case "internal":
                    aggregateMode = AggregateModeType.Internal;
                    break;

                default:
                    aggregateMode = AggregateModeType.All;
                    break;
                }
                return(this);
            }