public void ProcessView(EventBean[] newData, EventBean[] oldData, bool isGenerateSynthetic) { object[] newDataMultiKey = _processor.GenerateGroupKeys(newData, true); object[] oldDataMultiKey = _processor.GenerateGroupKeys(oldData, false); if (newData != null) { // apply new data to aggregates int count = 0; foreach (EventBean aNewData in newData) { object mk = newDataMultiKey[count]; _processor.EventsPerStreamOneStream[0] = aNewData; _processor.AggregationService.ApplyEnter(_processor.EventsPerStreamOneStream, mk, _processor.AgentInstanceContext); count++; } } if (oldData != null) { // apply old data to aggregates int count = 0; foreach (EventBean anOldData in oldData) { _processor.EventsPerStreamOneStream[0] = anOldData; _processor.AggregationService.ApplyLeave(_processor.EventsPerStreamOneStream, oldDataMultiKey[count], _processor.AgentInstanceContext); count++; } } if (_processor.Prototype.IsSelectRStream) { _processor.GenerateOutputBatchedViewPerKey(oldData, oldDataMultiKey, false, isGenerateSynthetic, _outputLastUnordGroupOld, null); } _processor.GenerateOutputBatchedViewPerKey(newData, newDataMultiKey, false, isGenerateSynthetic, _outputLastUnordGroupNew, null); }
public void ProcessView( EventBean[] newData, EventBean[] oldData, bool isGenerateSynthetic) { var newDataMultiKey = processor.GenerateGroupKeyArrayView(newData, true); var oldDataMultiKey = processor.GenerateGroupKeyArrayView(oldData, false); var eventsPerStream = new EventBean[1]; if (newData != null) { // apply new data to aggregates var count = 0; foreach (var aNewData in newData) { var mk = newDataMultiKey[count]; eventsPerStream[0] = aNewData; processor.AggregationService.ApplyEnter(eventsPerStream, mk, processor.GetAgentInstanceContext()); count++; } } if (oldData != null) { // apply old data to aggregates var count = 0; foreach (var anOldData in oldData) { eventsPerStream[0] = anOldData; processor.AggregationService.ApplyLeave( eventsPerStream, oldDataMultiKey[count], processor.GetAgentInstanceContext()); count++; } } if (processor.IsSelectRStream) { processor.GenerateOutputBatchedViewPerKey( oldData, oldDataMultiKey, false, isGenerateSynthetic, outputLastUnordGroupOld, null, eventsPerStream); } processor.GenerateOutputBatchedViewPerKey( newData, newDataMultiKey, false, isGenerateSynthetic, outputLastUnordGroupNew, null, eventsPerStream); }