public AggregateTimeWindowQueueBase(AggregationSettings settings, Queue <MetricEvent> outputEventQueue) { /* * this.TimeWindowList = new List<T>(); * this.EndTimeLastProducedEvent = DateTime.MinValue; * this.NewestEventTimeCreated = DateTime.MinValue; * this.Settings = settings; * this.OutputEventQueue = outputEventQueue; */ }
public AggregationSynopsisBase(ProcessMetricEvent outputEventCallback, AggregationSettings settings) { this.outputEventCallback = outputEventCallback; this.timeWindowQueueMap = new Dictionary <AggregateGroupKey, TQueue>(); this.OutputEventQueue = new Queue <MetricEvent>(); this.Settings = settings; this.ThisLock = new object(); if (this.Settings.EnableExpirationClock) { this.clockGenerator = new ClockEventGenerator(settings.ExtraExpirationWaitTime); this.clockGenerator.ClockNotfication += new EventHandler(this.ClockNotfication); } }
public void Start() { AggregationSettings settings = new AggregationSettings() { EnableExpirationClock = AggregationDefaults.FarmEnableExpirationClock, ExpireAggregationClockFrequency = this.ExpireAggregationClockFrequency, ExtraExpirationWaitTime = this.ExtraExpirationWaitTime, ClockExpirationWaitTime = this.ClockExpirationWaitTime }; this.synopsis = new RollupAggregationSynopsis( this.processEvent != null ? this.processEvent : this.ConsumeMetricEvent, settings); }
public RollupAggregationSynopsis(ProcessMetricEvent outputEventCallback, AggregationSettings settings) : base(outputEventCallback, settings) { }
public RollupAggregateTimeWindowQueue(AggregationSettings settings, Queue <MetricEvent> outputEventQueue) : base(settings, outputEventQueue) { }
public void Start() { AggregationSettings settings = new AggregationSettings() { EnableExpirationClock = this.EnableExpirationClock, ExpireAggregationClockFrequency = this.ExpireAggregationClockFrequency, ExtraExpirationWaitTime = this.ExtraExpirationWaitTime, ClockExpirationWaitTime = this.ClockExpirationWaitTime, TimeWindow = this.TimeWindow }; this.synopsis = new AggregationSynopsis( this.processEvent != null ? this.processEvent : this.ConsumeMetricEvent, settings); }