private SecondaryFrameNode FormSecondaryOnFirst(PrimaryFrameNode node) { ParameterNames parameterNames; Query query; var getter = FormGetterByRelation(node.Relation, node.OrderedParameters, out parameterNames, out query); var secondary = new SecondaryFrameNode { Current = node.Current, Parent = node.Parent, Getter = getter, AllParameters = new ParameterNames(node.OrderedParameters.Select(k => k.Name)), UsingParameters = new ParametersMapping(parameterNames), Query = query }; return(secondary); }
private void MakePlanStepFromSecondary(FramingPlan plan, AccumulatorFactory accumulator, SecondaryFrameNode node) { plan.AddNewStep(node.Parent, node.Current, node.UsingParameters.ParameterNames, node.AllParameters, GetAccumulatorForSecondary(plan, node, accumulator), node.PriorityGroup, node.Query); }
private Accumulator <FrameNode, IEnumerable <Guid> > GetAccumulatorForSecondary(FramingPlan plan, SecondaryFrameNode node, AccumulatorFactory accumulator) { return(accumulator.GetOrCreateAccumulator(plan, node.Getter, node.Parent, node.Current, node.UsingParameters.ParameterNames)); }
private void MakePlanStepFromSecondary(FramingPlan plan, AccumulatorFactory accumulator, SecondaryFrameNode node) { plan.AddNewStep(node.Parent, node.Current, node.UsingParameters.ParameterNames, node.AllParameters, GetAccumulatorForSecondary(plan,node,accumulator), node.PriorityGroup, node.Query); }
private Accumulator<FrameNode, IEnumerable<Guid>> GetAccumulatorForSecondary(FramingPlan plan, SecondaryFrameNode node, AccumulatorFactory accumulator) { return accumulator.GetOrCreateAccumulator(plan,node.Getter, node.Parent, node.Current, node.UsingParameters.ParameterNames); }
private SecondaryFrameNode FormSecondaryOnFirst(PrimaryFrameNode node) { ParameterNames parameterNames; Query query; var getter = FormGetterByRelation(node.Relation, node.OrderedParameters,out parameterNames,out query); var secondary = new SecondaryFrameNode { Current = node.Current, Parent = node.Parent, Getter = getter, AllParameters = new ParameterNames(node.OrderedParameters.Select(k=>k.Name)), UsingParameters = new ParametersMapping(parameterNames), Query = query }; return secondary; }