public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new GroupedWindowPlanNode <TInput, TState, TOutput>( previous, this, typeof(TKey), typeof(TInput), typeof(TOutput), this.aggregate, this.keySelectorExpr, this.finalResultSelectorExpr, false, this.errorMessages, false)); }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new AlterLifetimePlanNode( previous, this, typeof(TKey), typeof(TPayload), this.startTimeSelector, this.startTimeDurationSelector, true)); }
internal PointAtEndPlanNode( PlanNode previous, IQueryObject pipe, Type keyType, Type payloadType, bool isGenerated, string errorMessages, bool withStateManager) : base(previous, pipe, keyType, payloadType, payloadType, isGenerated, errorMessages) { }
internal WherePlanNode( PlanNode previous, IQueryObject pipe, Type keyType, Type payloadType, Expression predicate, bool isGenerated, string errorMessages) : base(previous, pipe, keyType, payloadType, payloadType, isGenerated, errorMessages) => this.Predicate = predicate;
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new AlterLifetimePlanNode( previous, this, typeof(PartitionKey <TPartitionKey>), typeof(TPayload), this.startTimeSelector, this.durationSelector, false)); }
protected override void ProduceBinaryQueryPlan(PlanNode left, PlanNode right) { var node = new UnionPlanNode( left, right, this, typeof(TKey), typeof(TPayload), false, false, this.errorMessages, false); this.Observer.ProduceQueryPlan(node); }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new SelectPlanNode( previous, this, typeof(TKey), typeof(TPayload), typeof(TResult), this.selector, false, false, false, this.errorMessages)); }
public override void ProduceQueryPlan(PlanNode previous) { var node = new SprayPlanNode( previous, this, typeof(TKey), typeof(TSpray), this.totalBranches, this.multicast, this.spraySortOrderComparer, false); this.Observers.ForEach(o => o.ProduceQueryPlan(node)); }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new ExtendLifetimePlanNode( previous, this, typeof(TKey), typeof(TPayload), false, this.errorMessages, true)); }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new QuantizeLifetimePlanNode( previous, this, typeof(TKey), typeof(TPayload), this.width, this.skip, this.offset, false, this.errorMessages, false)); }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new PointAtEndPlanNode( previous, this, typeof(TKey), typeof(TPayload), false, this.errorMessages, false)); }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new SessionWindowPlanNode( previous, this, typeof(TKey), typeof(TPayload), this.sessionTimeout, this.maximumDuration, false, this.errorMessages, false)); }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new ClipByConstantPlanNode( previous, this, typeof(TKey), typeof(TPayload), false, this.errorMessages)); }
internal ClipByConstantPlanNode( PlanNode previous, IQueryObject pipe, Type keyType, Type payloadType, bool isGenerated, string errorMessages) : base(previous, pipe, keyType, payloadType, payloadType, isGenerated, errorMessages) { }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new WherePlanNode( previous, this, typeof(TKey), typeof(TPayload), this.predicate, false, this.errorMessages)); }
internal QuantizeLifetimePlanNode( PlanNode previous, IQueryObject pipe, Type keyType, Type payloadType, long width, long skip, long offset, bool isGenerated, string errorMessages, bool withStateManager) : base(previous, pipe, keyType, payloadType, payloadType, isGenerated, errorMessages) { }
internal ExtendLifetimePlanNode( PlanNode previous, IQueryObject pipe, Type keyType, Type payloadType, bool isGenerated, string errorMessages, bool negative) : base(previous, pipe, keyType, payloadType, payloadType, isGenerated, errorMessages) { this.negative = negative; }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new AlterLifetimePlanNode( previous, this, typeof(TKey), typeof(TPayload), null, Expression.Constant(this.constantDurationSelector), true)); }
public override void ProduceQueryPlan(PlanNode previous) { this.Observer.ProduceQueryPlan(new PartitionPlanNode( previous, this, typeof(PartitionKey <TPartitionKey>), typeof(TPayload), this.keySelector, this.partitionLag)); }
internal SessionWindowPlanNode( PlanNode previous, IQueryObject pipe, Type keyType, Type payloadType, long sessionTimeout, long maximumDuration, bool isGenerated, string errorMessages) : base(previous, pipe, keyType, payloadType, payloadType, isGenerated, errorMessages) { this.SessionTimeout = sessionTimeout; this.MaximumDuration = maximumDuration; }
internal JoinPlanNode( PlanNode left, PlanNode right, IBinaryObserver pipe, Type leftPayloadType, Type rightPayloadType, Type payloadType, Type keyType, JoinKind joinKind, bool isGenerated, string errorMessages, bool withStateManager) : base(left, right, pipe, keyType, leftPayloadType, rightPayloadType, payloadType, isGenerated, errorMessages) { this.leftPayloadType = leftPayloadType; this.rightPayloadType = rightPayloadType; this.JoinKind = joinKind; }
protected BinaryPlanNode( PlanNode left, PlanNode right, IBinaryObserver pipe, Type keyType, Type leftType, Type rightType, Type payloadType, bool isGenerated, string errorMessages) : base(pipe, keyType, payloadType, isGenerated, errorMessages) { this.LeftPlanNode = left; this.RightPlanNode = right; this.pipe = pipe; this.LeftPayloadType = leftType; this.RightPayloadType = rightType; }
internal PartitionPlanNode( PlanNode previous, IQueryObject pipe, Type outputKey, Type payloadType, Expression keySelector, long punctuationLag) : base(pipe, outputKey, payloadType, false, string.Empty) { this.Previous = previous; this.GroupingExpression = keySelector; this.PunctuationLag = punctuationLag; }
protected override void ProduceBinaryQueryPlan(PlanNode left, PlanNode right) { var node = new JoinPlanNode( left, right, this, typeof(TLeft), typeof(TRight), typeof(TLeft), typeof(TKey), JoinKind.Clip, false, null); node.AddJoinExpression("key comparer", this.keyComparer); node.AddJoinExpression("left key comparer", this.leftComparer); this.Observer.ProduceQueryPlan(node); }
internal SelectManyPlanNode(PlanNode previous, IQueryObject pipe, Type keyType, Type inputType, Type payloadType, LambdaExpression selector, bool includesKey, bool includesStartEdge, bool isGenerated, string errorMessages) : base(previous, pipe, keyType, payloadType, inputType, isGenerated, errorMessages) { this.Selector = selector; this.IncludesStartEdge = includesStartEdge; this.IncludesKey = includesKey; }
public override void ProduceQueryPlan(PlanNode previous) => Observer.ProduceQueryPlan(new UngroupPlanNode( previous, this, typeof(CompoundGroupKey <TOuterKey, TInnerKey>), typeof(TOuterKey), typeof(TInnerResult), typeof(TResult), resultSelectorExpr, false, errorMessages));
internal QuantizeLifetimePlanNode( PlanNode previous, IQueryObject pipe, Type keyType, Type payloadType, long width, long skip, long progress, long offset, bool isGenerated, string errorMessages, bool withStateManager) : base(previous, pipe, keyType, payloadType, payloadType, isGenerated, errorMessages) { this.Width = width; this.Skip = skip; this.Progress = progress; this.Offset = offset; }
internal SprayPlanNode(PlanNode previous, IQueryObject pipe, Type keyType, Type payloadType, int totalBranches, bool multicast, Expression spraySortOrderComparer, bool isGenerated) : base(previous, pipe, keyType, payloadType, payloadType, isGenerated, null) { this.TotalBranches = totalBranches; this.Multicast = multicast; this.SpraySortOrderComparer = spraySortOrderComparer; }
private void ReceiveRightQueryPlan(PlanNode right) { this.rightPlans.Enqueue(right); lock (this.leftPlans) { if (this.leftPlans.Count > 0) { ProduceBinaryQueryPlan(this.leftPlans.Dequeue(), this.rightPlans.Dequeue()); } } }
protected override void ProduceBinaryQueryPlan(PlanNode left, PlanNode right) { var node = new JoinPlanNode( left, right, this, typeof(TLeft), typeof(TRight), typeof(TLeft), typeof(PartitionKey <TPartitionKey>), JoinKind.FixedIntervalEquiJoin, false, null); node.AddJoinExpression("key comparer", this.keyComparer); this.Observer.ProduceQueryPlan(node); }