public override void Apply( EventBean matchingEvent, EventBean[] eventsPerStream, TableStateInstance tableStateInstance, TableOnMergeViewChangeHandler changeHandlerAdded, TableOnMergeViewChangeHandler changeHandlerRemoved, ExprEvaluatorContext exprEvaluatorContext) { var theEvent = _insertHelper.Process(eventsPerStream, true, true, exprEvaluatorContext); if (_internalEventRouter == null) { var aggs = _tableStateRowFactory.MakeAggs(exprEvaluatorContext.AgentInstanceId, null, null, tableStateInstance.AggregationServicePassThru); ((object[])theEvent.Underlying)[0] = aggs; tableStateInstance.AddEvent(theEvent); if (changeHandlerAdded != null) { changeHandlerAdded.Add(theEvent, eventsPerStream, true, exprEvaluatorContext); } return; } if (_audit) { AuditPath.AuditInsertInto(_internalEventRouteDest.EngineURI, _statementHandle.StatementName, theEvent); } _internalEventRouter.Route(theEvent, _statementHandle, _internalEventRouteDest, exprEvaluatorContext, false); }
public void Apply(EventBean matchingEvent, EventBean[] eventsPerStream, TableStateInstance stateInstance, TableOnMergeViewChangeHandler changeHandlerAdded, TableOnMergeViewChangeHandler changeHandlerRemoved, ExprEvaluatorContext context) { if (InstrumentationHelper.ENABLED) { InstrumentationHelper.Get().QInfraMergeWhenThenActions(actions.Count); } int count = -1; foreach (TableOnMergeAction action in actions) { count++; if (InstrumentationHelper.ENABLED) { InstrumentationHelper.Get().QInfraMergeWhenThenActionItem(count, action.Name); bool applies = action.IsApplies(eventsPerStream, context); if (applies) { action.Apply(matchingEvent, eventsPerStream, stateInstance, changeHandlerAdded, changeHandlerRemoved, context); } InstrumentationHelper.Get().AInfraMergeWhenThenActionItem(applies); continue; } if (action.IsApplies(eventsPerStream, context)) { action.Apply(matchingEvent, eventsPerStream, stateInstance, changeHandlerAdded, changeHandlerRemoved, context); } } if (InstrumentationHelper.ENABLED) { InstrumentationHelper.Get().AInfraMergeWhenThenActions(); } }
public override void Apply(EventBean matchingEvent, EventBean[] eventsPerStream, TableStateInstance tableStateInstance, TableOnMergeViewChangeHandler changeHandlerAdded, TableOnMergeViewChangeHandler changeHandlerRemoved, ExprEvaluatorContext exprEvaluatorContext) { if (changeHandlerRemoved != null) { changeHandlerRemoved.Add(matchingEvent, eventsPerStream, false, exprEvaluatorContext); } _tableUpdateStrategy.UpdateTable(Collections.SingletonList(matchingEvent), tableStateInstance, eventsPerStream, exprEvaluatorContext); if (changeHandlerAdded != null) { changeHandlerAdded.Add(matchingEvent, eventsPerStream, false, exprEvaluatorContext); } }
public override void Apply(EventBean matchingEvent, EventBean[] eventsPerStream, TableStateInstance tableStateInstance, TableOnMergeViewChangeHandler changeHandlerAdded, TableOnMergeViewChangeHandler changeHandlerRemoved, ExprEvaluatorContext exprEvaluatorContext) { tableStateInstance.DeleteEvent(matchingEvent); if (changeHandlerRemoved != null) { changeHandlerRemoved.Add(matchingEvent, eventsPerStream, false, exprEvaluatorContext); } }
public abstract void Apply(EventBean matchingEvent, EventBean[] eventsPerStream, TableStateInstance tableStateInstance, TableOnMergeViewChangeHandler changeHandlerAdded, TableOnMergeViewChangeHandler changeHandlerRemoved, ExprEvaluatorContext exprEvaluatorContext);