示例#1
0
        private void Execute()
        {
            if (_initialPlan.Criteria.SortResult)
            {
                rowResultSet = new SortedResultSet <long>();
            }
            else
            {
                rowResultSet = new ListedResultSet <long>();
            }

            var terminal = _initialPlan.Predicate as TerminalPredicate;

            if (terminal != null)
            {
                foreach (var kvp in terminal.Enumerate(_initialPlan.Criteria))
                {
                    rowResultSet.Add(kvp.Value);
                }
            }
            if (LoggerManager.Instance.QueryLogger != null)
            {
                LoggerManager.Instance.QueryLogger.Debug("ExecuteQuery", "ID:" + _initialPlan.Criteria.QueryId +
                                                         ", Query Executed, Result Count: " + rowResultSet.Count);
            }
        }
示例#2
0
 public void Add(T result)
 {
     list.Add(result);
     if (list.Count >= batchSize)
     {
         _fileManager.WriteObject(batchNo.ToString(), list);
         batchNo++;
     }
     count++;
 }