示例#1
0
        /// <summary>
        /// Ctor.
        /// </summary>
        /// <param name="isFirst">true for the first-where clause, false for all where-clauses</param>
        /// <param name="eventType">output type</param>
        /// <param name="epStatementHandle">handle</param>
        /// <param name="internalEventRouter">routining output events</param>
        /// <param name="tableStateInstance">The table state instance.</param>
        /// <param name="isNamedWindowInsert">The is named window insert.</param>
        /// <param name="processors">processors for select clauses</param>
        /// <param name="whereClauses">where expressions</param>
        /// <param name="agentInstanceContext">agent instance context</param>
        /// <exception cref="System.ArgumentException">Number of where-clauses and processors does not match</exception>
        public RouteResultView(
            bool isFirst,
            EventType eventType,
            EPStatementHandle epStatementHandle,
            InternalEventRouter internalEventRouter,
            TableStateInstance[] tableStateInstance,
            bool[] isNamedWindowInsert,
            ResultSetProcessor[] processors,
            ExprNode[] whereClauses,
            AgentInstanceContext agentInstanceContext)
        {
            if (whereClauses.Length != processors.Length)
            {
                throw new ArgumentException("Number of where-clauses and processors does not match");
            }

            _exprEvaluatorContext = agentInstanceContext;
            _eventType            = eventType;

            if (isFirst)
            {
                _handler = new RouteResultViewHandlerFirst(epStatementHandle, internalEventRouter, tableStateInstance, isNamedWindowInsert, processors, ExprNodeUtility.GetEvaluators(whereClauses), agentInstanceContext);
            }
            else
            {
                _handler = new RouteResultViewHandlerAll(epStatementHandle, internalEventRouter, tableStateInstance, isNamedWindowInsert, processors, ExprNodeUtility.GetEvaluators(whereClauses), agentInstanceContext);
            }
        }
示例#2
0
 public RouteResultView(
     bool isFirst,
     EventType eventType,
     EPStatementHandle epStatementHandle,
     InternalEventRouter internalEventRouter,
     TableInstance[] tableInstances,
     OnSplitItemEval[] items,
     ResultSetProcessor[] processors,
     AgentInstanceContext agentInstanceContext)
 {
     exprEvaluatorContext = agentInstanceContext;
     EventType = eventType;
     if (isFirst) {
         handler = new RouteResultViewHandlerFirst(
             epStatementHandle,
             internalEventRouter,
             tableInstances,
             items,
             processors,
             agentInstanceContext);
     }
     else {
         handler = new RouteResultViewHandlerAll(
             epStatementHandle,
             internalEventRouter,
             tableInstances,
             items,
             processors,
             agentInstanceContext);
     }
 }
示例#3
0
        public RouteResultView(
            bool isFirst,
            EventType eventType,
            EPStatementHandle epStatementHandle,
            InternalEventRouter internalEventRouter,
            TableStateInstance[] tableStateInstances,
            EPStatementStartMethodOnTriggerItem[] items,
            ResultSetProcessor[] processors,
            ExprEvaluator[] whereClauses,
            AgentInstanceContext agentInstanceContext)
        {
            if (whereClauses.Length != processors.Length)
            {
                throw new ArgumentException("Number of where-clauses and processors does not match");
            }

            _exprEvaluatorContext = agentInstanceContext;
            _eventType = eventType;
            if (isFirst)
            {
                _handler = new RouteResultViewHandlerFirst(
                    epStatementHandle, internalEventRouter, tableStateInstances, items, processors, whereClauses,
                    agentInstanceContext);
            }
            else
            {
                _handler = new RouteResultViewHandlerAll(
                    epStatementHandle, internalEventRouter, tableStateInstances, items, processors, whereClauses,
                    agentInstanceContext);
            }
        }