private OnTriggerActivatorDesc ActivatorNamedWindow( NamedWindowConsumerStreamSpec namedSpec, StatementCompileTimeServices services) { NamedWindowMetaData namedWindow = namedSpec.NamedWindow; string triggerEventTypeName = namedSpec.NamedWindow.EventType.Name; var typesFilterValidation = new StreamTypeServiceImpl( namedWindow.EventType, namedSpec.OptionalStreamName, false); var filterSingle = ExprNodeUtilityMake.ConnectExpressionsByLogicalAndWhenNeeded(namedSpec.FilterExpressions); QueryGraphForge filterQueryGraph = EPLValidationUtil.ValidateFilterGetQueryGraphSafe( filterSingle, typesFilterValidation, @base.StatementRawInfo, services); var activator = new ViewableActivatorNamedWindowForge( namedSpec, namedWindow, filterSingle, filterQueryGraph, false, namedSpec.OptPropertyEvaluator); var activatorResultEventType = namedWindow.EventType; if (namedSpec.OptPropertyEvaluator != null) { activatorResultEventType = namedSpec.OptPropertyEvaluator.FragmentEventType; } return new OnTriggerActivatorDesc(activator, triggerEventTypeName, activatorResultEventType); }
public SubSelectStrategyFactoryLocalViewPreloadedForge( IList <ViewFactoryForge> viewForges, ViewResourceDelegateDesc viewResourceDelegateDesc, Pair <EventTableFactoryFactoryForge, SubordTableLookupStrategyFactoryForge> lookupStrategy, ExprNode filterExprNode, bool correlatedSubquery, AggregationServiceForgeDesc aggregationServiceForgeDesc, int subqueryNumber, ExprNode[] groupKeys, NamedWindowMetaData namedWindow, ExprNode namedWindowFilterExpr, QueryGraphForge namedWindowFilterQueryGraph, MultiKeyClassRef groupByMultiKeyClasses) { _viewForges = viewForges; _viewResourceDelegateDesc = viewResourceDelegateDesc; _lookupStrategy = lookupStrategy; _filterExprNode = filterExprNode; _correlatedSubquery = correlatedSubquery; _aggregationServiceForgeDesc = aggregationServiceForgeDesc; _subqueryNumber = subqueryNumber; _groupKeys = groupKeys; _namedWindow = namedWindow; _namedWindowFilterExpr = namedWindowFilterExpr; _namedWindowFilterQueryGraph = namedWindowFilterQueryGraph; _groupByMultiKeyClasses = groupByMultiKeyClasses; }