public void Visit(CouchDbCommand command) { _cmd = command; var parsedCommand = _parser.Parse(_cmd.CommandText); if (parsedCommand.HasErrors()) throw new Exception( String.Join("\n", parsedCommand.ParserMessages .Select(m => String.Format("{0} at line {1}", m.Message, m.Location.Line)) .ToArray()) ); Requests = Process(parsedCommand.Root, new List<CouchRequestContainer>()); Requests.ForEach(a => a.ApplyWhereClauseToKeys()); }
public void Visit(CouchDbCommand command) { var expr = _parser.Parse(command.CommandText); if (expr.HasErrors()) throw new Exception( String.Join("\n", expr.ParserMessages .Select(m => String.Format("{0} at line {1}", m.Message, m.Location.Line)) .ToArray()) ); GetParamNames(expr.Root) .ForEach(a => Parameters .Add(new CouchDataParameter() { ParameterName = a })); }