/// <summary>Processes batched events in case of output-rate limiting.</summary> /// <param name="joinEventsSet">the join results</param> /// <param name="generateSynthetic">flag to indicate whether synthetic events must be generated</param> /// <param name="outputLimitLimitType">the type of output rate limiting</param> /// <returns>results for dispatch</returns> public virtual UniformPair <EventBean[]> ProcessOutputLimitedJoin(IList <UniformPair <ISet <MultiKey <EventBean> > > > joinEventsSet, bool generateSynthetic, OutputLimitLimitType outputLimitLimitType) { if (outputLimitLimitType != OutputLimitLimitType.LAST) { var flattened = EventBeanUtility.FlattenBatchJoin(joinEventsSet); return(ProcessJoinResult(flattened.First, flattened.Second, generateSynthetic)); } throw new IllegalStateException("Output last is provided by " + typeof(OutputProcessViewConditionLastAllUnord).Name); }