Exemplo n.º 1
0
        public JsonQueryHandler(IDocumentSchema schema, QueryModel query)
        {
            _mapping = schema.MappingFor(query).ToQueryableDocument();
            _schema  = schema;
            _query   = query;

            var selector = _schema.BuildSelector <string>(_mapping, _query);

            _selector = selector;
        }
Exemplo n.º 2
0
        public static ISelector <T> BuildSelector(IDocumentSchema schema, QueryModel query,
                                                  IIncludeJoin[] joins, QueryStatistics stats)
        {
            var mapping  = schema.MappingFor(query).ToQueryableDocument();
            var selector = schema.BuildSelector <T>(mapping, query);

            if (stats != null)
            {
                selector = new StatsSelector <T>(stats, selector);
            }

            if (joins.Any())
            {
                selector = new IncludeSelector <T>(schema, selector, joins);
            }

            return(selector);
        }
Exemplo n.º 3
0
        public OneResultHandler(int rowLimit, IDocumentSchema schema, QueryModel query, IIncludeJoin[] joins, bool canBeNull = true, bool canBeMultiples = true)
        {
            _rowLimit       = rowLimit;
            _mapping        = schema.MappingFor(query).ToQueryableDocument();
            _schema         = schema;
            _query          = query;
            _canBeNull      = canBeNull;
            _canBeMultiples = canBeMultiples;

            var selector = _schema.BuildSelector <T>(_mapping, _query);

            if (joins.Any())
            {
                selector = new IncludeSelector <T>(schema, selector, joins);
            }

            _selector = selector;
        }
Exemplo n.º 4
0
        public static ISelector <T> BuildSelector <T>(this IDocumentSchema schema, QueryModel query)
        {
            var mapping = schema.MappingFor(query.SourceType()).ToQueryableDocument();

            return(schema.BuildSelector <T>(mapping, query));
        }