Exemplo n.º 1
0
 internal static LuceneQuery GetNextPageQuery(ILuceneQueryResult queryResult)
 {
     return(NextPageQueries.GetOrAdd(
                queryResult,
                r => {
         if (queryResult.Count == queryResult.TotalCount || queryResult.Count == 0)
         {
             return null;
         }
         else
         {
             var nextPageQuery = queryResult.Query.Clone();
             nextPageQuery.Skip = queryResult.Skip + queryResult.Count;
             nextPageQuery.Limit = queryResult.Limit;
             return nextPageQuery;
         }
     }));
 }
Exemplo n.º 2
0
 /// <summary>Converts untyped query result ot typed one.</summary>
 public static ILuceneQueryResult <T> OfType <T>(this ILuceneQueryResult result, Func <IEnumerable <LuceneResultRow>, IEnumerable <T> > rowConvertor)
 {
     return(new LuceneQueryResult <T>(
                result.Query, result.Rows, result.Count, result.TotalCount, result.Offset,
                result.FetchDuration, result.SearchDuration, result.Limit, result.Offset ?? 0, rowConvertor));
 }