public ParameterMap ToParameterMap() { ParameterMap parameters = new ParameterMap(); parameters.Put("start", start.ToString()); parameters.Put("len", length.ToString()); parameters.Put("function", scoringFunction.ToString()); if (snippetFields != null) parameters.Put("snippet", Join(snippetFields, ",")); if (fetchFields != null) parameters.Put("fetch", Join(fetchFields, ",")); if (categoryFilters != null) parameters.Put("category_filters", categoryFilters.ToJsonString()); if (documentVariableFilters != null) { foreach (Range range in documentVariableFilters) { string key = "filter_docvar" + range.Id; string value = (range.Floor == Double.NegativeInfinity ? "*" : (range.Floor).ToString()) + ":" + (range.Ceil == Double.PositiveInfinity ? "*" : (range.Ceil).ToString()); string param = parameters.GetFirst(key); if (param == null) { parameters.Add(key, value); } else { parameters.Add(key, param + "," + value); } } } if (functionFilters != null) { foreach (Range range in functionFilters) { string key = "filter_function" + range.Id; string value = (range.Floor == Double.NegativeInfinity ? "*" : (range.Floor).ToString()) + ":" + (range.Ceil == Double.PositiveInfinity ? "*" : (range.Ceil).ToString()); string param = parameters.GetFirst(key); if (param == null) { parameters.Add(key, value); } else { parameters.Add(key, param + "," + value); } } } if (queryVariables != null) { foreach (var entry in queryVariables) { parameters.Add("var" + entry.Key, entry.Value.ToString()); } } parameters.Put("q", querystring); return parameters; }
public void DeleteDocument(string documentId) { if (null == documentId) throw new ArgumentNullException("documentId"); var parameters = new ParameterMap(); parameters.Add("docid", documentId); try { CallApi<Dictionary<string, Object>>(DELETE_METHOD, indexUrl + DOCS_URL, parameters, PrivatePass); } catch (HttpCodeException e) { if (e.GetHttpCode() == 404) { throw new IndexDoesNotExistException(e); } throw new UnexpectedCodeException(e); } }