public object EvaluateEnumMethod( EventBean[] eventsLambda, ICollection<object> enumcoll, bool isNewData, ExprEvaluatorContext context) { if (enumcoll.IsEmpty()) { return null; } IDictionary<object, int> items = new LinkedHashMap<object, int>(); var values = (ICollection<object>) enumcoll; var resultEvent = new ObjectArrayEventBean(new object[1], _forge.resultEventType); eventsLambda[_forge.StreamNumLambda] = resultEvent; var props = resultEvent.Properties; foreach (var next in values) { props[0] = next; var item = _innerExpression.Evaluate(eventsLambda, isNewData, context); int? existing = items.Get(item); if (existing == null) { existing = 1; } else { existing++; } items.Put(item, existing.Value); } return EnumMostLeastFrequentEventForgeEval.GetEnumMostLeastFrequentResult(items, _forge.isMostFrequent); }
public object EvaluateEnumMethod( EventBean[] eventsLambda, ICollection<object> enumcoll, bool isNewData, ExprEvaluatorContext context) { if (enumcoll.IsEmpty()) { return null; } IDictionary<object, int> items = new LinkedHashMap<object, int>(); foreach (var next in enumcoll) { int? existing = items.Get(next); if (existing == null) { existing = 1; } else { existing++; } items.Put(next, existing.Value); } return EnumMostLeastFrequentEventForgeEval.GetEnumMostLeastFrequentResult(items, _isMostFrequent); }