Exemplo n.º 1
0
        private void readQueryModel(QueryModel queryModel, IDocumentStorage storage, bool considerSelectors,
                                    IFieldMapping fields)
        {
            var includes = readBodyClauses(queryModel, storage);


            if (considerSelectors && !(Model.SelectClause.Selector is QuerySourceReferenceExpression))
            {
                var visitor = new SelectorVisitor(this);
                visitor.Visit(Model.SelectClause.Selector);
            }

            foreach (var resultOperator in queryModel.ResultOperators)
            {
                if (resultOperator is IncludeResultOperator include)
                {
                    includes.Add(include.BuildInclude(_session, fields));
                }
                else
                {
                    AddResultOperator(resultOperator);
                }
            }

            if (includes.Any())
            {
                AllIncludes.AddRange(includes);
                wrapIncludes(includes);
            }
        }
Exemplo n.º 2
0
        private void readQueryModel(QueryModel queryModel, IDocumentStorage storage, bool considerSelectors,
                                    IFieldMapping fields)
        {
            readBodyClauses(queryModel, storage);


            if (considerSelectors && !(Model.SelectClause.Selector is QuerySourceReferenceExpression))
            {
                var visitor = new SelectorVisitor(this);
                visitor.Visit(Model.SelectClause.Selector);
            }

            foreach (var resultOperator in queryModel.ResultOperators)
            {
                AddResultOperator(resultOperator, fields);
            }
        }
Exemplo n.º 3
0
 public void SetSelectorResult(SelectorVisitor selector, bool result)
 {
     _Results[selector.InstanceId] = result;
 }
Exemplo n.º 4
0
 public bool TryGetSelectorResult(SelectorVisitor selector, out bool result)
 {
     return(_Results.TryGetValue(selector.InstanceId, out result));
 }