public SubordIndexedTableLookupStrategySingleProp(int keyStreamNum, EventPropertyGetter propertyGetter, PropertyIndexedEventTableSingle index, LookupStrategyDesc strategyDesc) { this._keyStreamNum = keyStreamNum; this._propertyGetter = propertyGetter; this._index = index; this._strategyDesc = strategyDesc; }
public SubordInKeywordSingleTableLookupStrategyFactory(bool isNWOnTrigger, int streamCountOuter, ExprNode[] exprNodes) { StreamCountOuter = streamCountOuter; Evaluators = ExprNodeUtility.GetEvaluators(exprNodes); IsNWOnTrigger = isNWOnTrigger; StrategyDesc = new LookupStrategyDesc(LookupStrategyType.INKEYWORDSINGLEIDX, ExprNodeUtility.ToExpressionStringsMinPrecedence(exprNodes)); }
public SubordIndexedTableLookupStrategyProp(int[] keyStreamNums, EventPropertyGetter[] propertyGetters, PropertyIndexedEventTable index, LookupStrategyDesc strategyDesc) { _keyStreamNums = keyStreamNums; _propertyGetters = propertyGetters; _index = index; _strategyDesc = strategyDesc; }
/// <summary> /// Ctor. /// </summary> /// <param name="numStreamsOuter">The num streams outer.</param> /// <param name="evaluators">The evaluators.</param> /// <param name="index">is the table carrying the data to lookup into</param> /// <param name="strategyDesc">The strategy desc.</param> public SubordIndexedTableLookupStrategyExpr(int numStreamsOuter, ExprEvaluator[] evaluators, PropertyIndexedEventTable index, LookupStrategyDesc strategyDesc) { _evaluators = evaluators; _strategyDesc = strategyDesc; _events = new EventBean[numStreamsOuter + 1]; _index = index; }
public SubordInKeywordMultiTableLookupStrategyFactory(bool isNWOnTrigger, int streamCountOuter, ExprNode exprNode) { StreamCountOuter = streamCountOuter; Evaluator = exprNode.ExprEvaluator; IsNWOnTrigger = isNWOnTrigger; StrategyDesc = new LookupStrategyDesc(LookupStrategyType.INKEYWORDMULTIIDX, new String[] { ExprNodeUtility.ToExpressionStringMinPrecedenceSafe(exprNode) }); }
public SubordIndexedTableLookupStrategySingleExprFactory(bool isNWOnTrigger, int streamCountOuter, SubordPropHashKey hashKey) { StreamCountOuter = streamCountOuter; Evaluator = hashKey.HashKey.KeyExpr.ExprEvaluator; IsNWOnTrigger = isNWOnTrigger; StrategyDesc = new LookupStrategyDesc(LookupStrategyType.SINGLEEXPR, new String[] { hashKey.HashKey.KeyExpr.ToExpressionStringMinPrecedenceSafe() }); }
/// <summary> /// Ctor. /// </summary> /// <param name="isNWOnTrigger">if set to <c>true</c> [is NW on trigger].</param> /// <param name="eventTypes">is the event types per stream</param> /// <param name="keyStreamNumbers">is the stream number per property</param> /// <param name="properties">is the key properties</param> public SubordIndexedTableLookupStrategyPropFactory(bool isNWOnTrigger, EventType[] eventTypes, int[] keyStreamNumbers, String[] properties) { _keyStreamNums = keyStreamNumbers; _properties = properties; _strategyDesc = new LookupStrategyDesc(LookupStrategyType.MULTIPROP, properties); _propertyGetters = new EventPropertyGetter[properties.Length]; for (int i = 0; i < keyStreamNumbers.Length; i++) { int streamNumber = keyStreamNumbers[i]; String property = properties[i]; EventType eventType = eventTypes[streamNumber]; _propertyGetters[i] = eventType.GetGetter(property); if (_propertyGetters[i] == null) { throw new ArgumentException("Property named '" + properties[i] + "' is invalid for type " + eventType); } } for (int i = 0; i < _keyStreamNums.Length; i++) { _keyStreamNums[i] += (isNWOnTrigger ? 1 : 0); // for on-trigger the key will be provided in a {1,2,...} stream and not {0,...} } }
public SubordInKeywordSingleTableLookupStrategy(int streamCountOuter, ExprEvaluator[] evaluators, PropertyIndexedEventTableSingle index, LookupStrategyDesc strategyDesc) { Evaluators = evaluators; _index = index; _events = new EventBean[streamCountOuter + 1]; _strategyDesc = strategyDesc; }
public SubordIndexedTableLookupStrategySinglePropUnique(int keyStreamNum, EventPropertyGetter propertyGetter, PropertyIndexedEventTableSingleUnique index, LookupStrategyDesc strategyDesc) { _keyStreamNum = keyStreamNum; _propertyGetter = propertyGetter; _index = index; _strategyDesc = strategyDesc; }
public SubordIndexedTableLookupStrategySingleExpr(int streamCountOuter, ExprEvaluator evaluator, PropertyIndexedEventTableSingle index, LookupStrategyDesc strategyDesc) { Evaluator = evaluator; Index = index; _events = new EventBean[streamCountOuter + 1]; _strategyDesc = strategyDesc; }
/// <summary>Ctor. </summary> public SubordInKeywordMultiTableLookupStrategyNW(ExprEvaluator evaluator, EventTable[] tables, LookupStrategyDesc strategyDesc) { Evaluator = evaluator; Indexes = new PropertyIndexedEventTableSingle[tables.Length]; for (int i = 0; i < tables.Length; i++) { Indexes[i] = (PropertyIndexedEventTableSingle)tables[i]; } StrategyDesc = strategyDesc; }
public SubordTableLookupStrategy MakeStrategy(EventTable[] eventTable, VirtualDWView vdw) { if (eventTable[0] is PropertyIndexedEventTableSingleUnique) { return(new SubordIndexedTableLookupStrategySinglePropUnique(_keyStreamNum, _propertyGetter, (PropertyIndexedEventTableSingleUnique)eventTable[0], new LookupStrategyDesc(LookupStrategyType.SINGLEPROPUNIQUE, new String[] { _property }))); } LookupStrategyDesc desc = new LookupStrategyDesc(LookupStrategyType.SINGLEPROPNONUNIQUE, new String[] { _property }); return(new SubordIndexedTableLookupStrategySingleProp(_keyStreamNum, _propertyGetter, (PropertyIndexedEventTableSingle)eventTable[0], desc)); }
/// <summary>Ctor. </summary> public SubordInKeywordMultiTableLookupStrategy(int numStreamsOuter, ExprEvaluator evaluator, EventTable[] tables, LookupStrategyDesc strategyDesc) { Evaluator = evaluator; _strategyDesc = strategyDesc; _events = new EventBean[numStreamsOuter + 1]; Indexes = new PropertyIndexedEventTableSingle[tables.Length]; for (int i = 0; i < tables.Length; i++) { Indexes[i] = (PropertyIndexedEventTableSingle)tables[i]; } }
public SubordIndexedTableLookupStrategyExprFactory(bool isNWOnTrigger, int numStreamsOuter, IList <SubordPropHashKey> hashKeys) { _evaluators = new ExprEvaluator[hashKeys.Count]; var expressions = new String[_evaluators.Length]; for (int i = 0; i < hashKeys.Count; i++) { _evaluators[i] = hashKeys[i].HashKey.KeyExpr.ExprEvaluator; expressions[i] = hashKeys[i].HashKey.KeyExpr.ToExpressionStringMinPrecedenceSafe(); } _isNWOnTrigger = isNWOnTrigger; _numStreamsOuter = numStreamsOuter; _strategyDesc = new LookupStrategyDesc(LookupStrategyType.MULTIEXPR, expressions); }
public SubordCompositeTableLookupStrategyFactory( bool isNWOnTrigger, int numStreams, ICollection <SubordPropHashKey> keyExpr, Type[] coercionKeyTypes, ICollection <SubordPropRangeKey> rangeProps, Type[] coercionRangeTypes) { _rangeDescs = rangeProps; var expressionTexts = new List <String>(); _innerIndexQuery = CompositeIndexQueryFactory.MakeSubordinate( isNWOnTrigger, numStreams, keyExpr, coercionKeyTypes, rangeProps, coercionRangeTypes, expressionTexts); _strategyDesc = new LookupStrategyDesc(LookupStrategyType.COMPOSITE, expressionTexts.ToArray()); }
public SubordIndexedTableLookupStrategyCoercingNW(ExprEvaluator[] evaluators, PropertyIndexedEventTable index, Type[] coercionTypes, LookupStrategyDesc strategyDesc) : base(evaluators, index, strategyDesc) { _coercionTypes = coercionTypes; }
public SubordSortedTableLookupStrategyFactory(bool isNWOnTrigger, int numStreams, SubordPropRangeKey rangeKey) { _rangeKey = rangeKey; _strategy = SortedAccessStrategyFactory.Make(isNWOnTrigger, -1, numStreams, rangeKey); _strategyDesc = new LookupStrategyDesc(LookupStrategyType.RANGE, ExprNodeUtility.ToExpressionStringsMinPrecedence(rangeKey.RangeInfo.Expressions)); }
public SubordInKeywordSingleTableLookupStrategyNW(ExprEvaluator[] evaluators, PropertyIndexedEventTableSingle index, LookupStrategyDesc strategyDesc) { _evaluators = evaluators; _index = index; _strategyDesc = strategyDesc; }
public SubordIndexedTableLookupStrategyCoercing(int numStreamsOuter, ExprEvaluator[] evaluators, PropertyIndexedEventTable index, Type[] coercionTypes, LookupStrategyDesc strategyDesc) : base(numStreamsOuter, evaluators, index, strategyDesc) { _coercionTypes = coercionTypes; }
public SubordSortedTableLookupStrategy(SortedAccessStrategy strategy, PropertySortedEventTable index, LookupStrategyDesc strategyDesc) { _strategy = strategy; _index = index; _strategyDesc = strategyDesc; }
public SubordIndexedTableLookupStrategySingleExprNW(ExprEvaluator evaluator, PropertyIndexedEventTableSingle index, LookupStrategyDesc strategyDesc) { Evaluator = evaluator; _index = index; _strategyDesc = strategyDesc; }
public SubordCompositeTableLookupStrategy(CompositeIndexQuery innerIndexQuery, PropertyCompositeEventTable index, LookupStrategyDesc strategyDesc) { this._innerIndexQuery = innerIndexQuery; this._index = index; this._strategyDesc = strategyDesc; }
public SubordIndexedTableLookupStrategySingleCoercing(int streamCountOuter, ExprEvaluator evaluator, PropertyIndexedEventTableSingle index, Type coercionType, LookupStrategyDesc strategyDesc) : base(streamCountOuter, evaluator, index, strategyDesc) { _coercionType = coercionType; }
public SubordIndexedTableLookupStrategySingleCoercingNW(ExprEvaluator evaluator, PropertyIndexedEventTableSingle index, Type coercionType, LookupStrategyDesc strategyDesc) : base(evaluator, index, strategyDesc) { _coercionType = coercionType; }