using System;
using System.Collections.Generic;
using System.Text;
namespace Edge.Core.UniversalApi.CommunicationProvider
{
internal interface IEventThrottler
{
///
/// mute an event from a processor instance for a while, mostly used for limit the frequently firing events.
///
/// used for identify a processor's instance
///
/// only the event data contains the batch id can support throttling
/// null for remove the throttle for target event
void Throttle(string processorMetaConfigName, string eventName, string eventBatchId, TimeSpan? period);
}
}