/// <summary> /// Public ctor /// </summary> /// <param name="messageDeduplicationPersistor"></param> public OutgoingFilter(IMessageDeduplicationPersistor messageDeduplicationPersistor) { // get instance of the global settings object _settings = DeduplicationFilterSettings.Instance; // setup persistance store if (_messageDeduplicationPersistor == null) { _messageDeduplicationPersistor = messageDeduplicationPersistor; } // setup timer for cleaning up expired messages lock (Padlock) { // note: no need to timer with Redis persistor if (_timer == null && !_settings.DisableMsgExpiry && messageDeduplicationPersistor.GetType() != typeof(MessageDeduplicationPersistorRedis)) { _timer = new Timer(Callback, null, 0, _settings.MsgCleanupIntervalMinutes * 60 * 1000); } } }
/// <summary> /// Public ctor /// </summary> /// <param name="messageDeduplicationPersistor"></param> public OutgoingFilter(IMessageDeduplicationPersistor messageDeduplicationPersistor) { // get instance of the global settings object _settings = DeduplicationFilterSettings.Instance; // setup persistance store if (_messageDeduplicationPersistor == null) { _messageDeduplicationPersistor = messageDeduplicationPersistor; } // setup timer for cleaning up expired messages lock (Padlock) { if (_timer == null && !_settings.DisableMsgExpiry) { _timer = new Timer(_settings.MsgCleanupIntervalMinutes*60*1000); _timer.Elapsed += TimerElapsed; _timer.Start(); } } }
/// <summary> /// Public ctor /// </summary> /// <param name="messageDeduplicationPersistor"></param> public IncomingFilter(IMessageDeduplicationPersistor messageDeduplicationPersistor) { // setup persistance store _messageDeduplicationPersistor = messageDeduplicationPersistor; }