public MultiSearchResponse DeserializeMultiSearchResponse(ConnectionStatus c, MultiSearchDescriptor d) { var multiSearchConverter = new MultiSearchConverter(this._settings, d); var multiSearchResponse = this.DeserializeInternal <MultiSearchResponse>(c, piggyBackJsonConverter: multiSearchConverter); return(multiSearchResponse); }
public MultiSearchResponse MultiSearch(MultiSearchDescriptor multiSearchDescriptor) { multiSearchDescriptor.ThrowIfNull("multiSearchDescriptor"); var sb = new StringBuilder(); foreach (var operation in multiSearchDescriptor._Operations.Values) { var indeces = operation._Indices.HasAny() ? string.Join(",", operation._Indices) : null; if (operation._AllIndices) { indeces = "_all"; } var index = indeces ?? multiSearchDescriptor._FixedIndex ?? new IndexNameResolver(this.Settings).GetIndexForType(operation._ClrType); var types = operation._Types.HasAny() ? string.Join(",", operation._Types) : null; var typeName = types ?? multiSearchDescriptor._FixedType ?? new TypeNameResolver().GetTypeNameForType(operation._ClrType); if (operation._AllTypes) { typeName = null; //force empty typename so we'll query all types. } var op = new { index = index, type = typeName, search_type = this.GetSearchType(operation), preference = operation._Preference, routing = operation._Routing }; var opJson = JsonConvert.SerializeObject(op, Formatting.None, IndexSerializationSettings); var action = "{0}\n".F(opJson); sb.Append(action); var searchJson = JsonConvert.SerializeObject(operation, Formatting.None, IndexSerializationSettings); sb.Append(searchJson + "\n"); } var json = sb.ToString(); var path = "_msearch"; if (!multiSearchDescriptor._FixedIndex.IsNullOrEmpty()) { if (!multiSearchDescriptor._FixedType.IsNullOrEmpty()) { path = multiSearchDescriptor._FixedType + "/" + path; } path = multiSearchDescriptor._FixedIndex + "/" + path; } var status = this.Connection.PostSync(path, json); var multiSearchConverter = new MultiSearchConverter(multiSearchDescriptor); var multiSearchResponse = this.ToParsedResponse <MultiSearchResponse>(status, extraConverters: new List <JsonConverter> { multiSearchConverter }); return(multiSearchResponse); }
public MultiSearchResponse MultiSearch(MultiSearchDescriptor multiSearchDescriptor) { multiSearchDescriptor.ThrowIfNull("multiSearchDescriptor"); var sb = new StringBuilder(); foreach (var operation in multiSearchDescriptor._Operations.Values) { var indeces = operation._Indices.HasAny() ? string.Join(",", operation._Indices) : null; if (operation._AllIndices) indeces = "_all"; var index = indeces ?? multiSearchDescriptor._FixedIndex ?? new IndexNameResolver(this.Settings).GetIndexForType(operation._ClrType); var types = operation._Types.HasAny() ? string.Join(",", operation._Types) : null; var typeName = types ?? multiSearchDescriptor._FixedType ?? new TypeNameResolver().GetTypeNameForType(operation._ClrType); if (operation._AllTypes) typeName = null; //force empty typename so we'll query all types. var op = new { index = index, type = typeName, search_type = this.GetSearchType(operation), preference = operation._Preference, routing = operation._Routing }; var opJson = JsonConvert.SerializeObject(op, Formatting.None, IndexSerializationSettings); var action = "{0}\n".F(opJson); sb.Append(action); var searchJson = JsonConvert.SerializeObject(operation, Formatting.None, IndexSerializationSettings); sb.Append(searchJson + "\n"); } var json = sb.ToString(); var path = "_msearch"; if (!multiSearchDescriptor._FixedIndex.IsNullOrEmpty()) { if (!multiSearchDescriptor._FixedType.IsNullOrEmpty()) path = multiSearchDescriptor._FixedType + "/" + path; path = multiSearchDescriptor._FixedIndex + "/" + path; } var status = this.Connection.PostSync(path, json); var multiSearchConverter = new MultiSearchConverter(multiSearchDescriptor); var multiSearchResponse = this.ToParsedResponse<MultiSearchResponse>(status, extraConverters: new List<JsonConverter> { multiSearchConverter }); return multiSearchResponse; }
private JsonConverter CreateMultiSearchConverter(IMultiSearchRequest descriptor) { if (descriptor.Operations != null) { foreach (var kv in descriptor.Operations) { SearchPathInfo.CloseOverAutomagicCovariantResultSelector(this.Infer, kv.Value); } } var multiSearchConverter = new MultiSearchConverter(_connectionSettings, descriptor); return(multiSearchConverter); }
private JsonConverter CreateMultiSearchConverter(MultiSearchDescriptor descriptor) { var multiSearchConverter = new MultiSearchConverter(_connectionSettings, descriptor); return(multiSearchConverter); }
private JsonConverter CreateMultiSearchConverter(MultiSearchDescriptor descriptor) { var multiSearchConverter = new MultiSearchConverter(_connectionSettings, descriptor); return multiSearchConverter; }
private JsonConverter CreateMultiSearchConverter(IMultiSearchRequest descriptor) { if (descriptor.Operations != null) { foreach (var kv in descriptor.Operations) SearchPathInfo.CloseOverAutomagicCovariantResultSelector(this.Infer, kv.Value); } var multiSearchConverter = new MultiSearchConverter(_connectionSettings, descriptor); return multiSearchConverter; }