private void CreateMultiSearchConverter(IMultiSearchRequest request) { var formatter = new MultiSearchResponseFormatter(request); var serializer = ConnectionSettings.CreateStateful(formatter); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize <MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride = creator; }
/// <inheritdoc /> public IMultiSearchResponse MultiSearch(IMultiSearchRequest request) => Dispatcher.Dispatch <IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse>( request, (p, d) => { var converter = CreateMultiSearchDeserializer(p); var serializer = ConnectionSettings.CreateStateful(converter); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize <MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride = creator; return(LowLevelDispatch.MsearchDispatch <MultiSearchResponse>(p, new SerializableData <IMultiSearchRequest>(p))); } );
/// <inheritdoc /> public Task<IMultiSearchResponse> MultiSearchAsync(Func<MultiSearchDescriptor, MultiSearchDescriptor> multiSearchSelector) { return this.DispatchAsync<MultiSearchDescriptor, MultiSearchRequestParameters, MultiSearchResponse, IMultiSearchResponse>( multiSearchSelector(new MultiSearchDescriptor()), (p, d) => { var converter = CreateMultiSearchConverter(d); var json = Serializer.SerializeMultiSearch(d); var creator = new MultiSearchCreator((r, s) => this.DeserializeMultiSearchHit(r, s, converter)); return this.RawDispatch.MsearchDispatchAsync<MultiSearchResponse>(p.DeserializationState(creator), json); } ); }
/// <inheritdoc /> public IMultiSearchResponse MultiSearch(Func <MultiSearchDescriptor, MultiSearchDescriptor> multiSearchSelector) { return(this.Dispatch <MultiSearchDescriptor, MultiSearchRequestParameters, MultiSearchResponse>( multiSearchSelector(new MultiSearchDescriptor(this.Infer)), (p, d) => { var json = Serializer.SerializeMultiSearch(d); var converter = CreateMultiSearchConverter(d); var creator = new MultiSearchCreator((r, s) => this.DeserializeMultiSearchHit(r, s, converter)); return this.RawDispatch.MsearchDispatch <MultiSearchResponse>(p.DeserializationState(creator), json); } )); }
/// <inheritdoc /> public IMultiSearchResponse MultiSearch(IMultiSearchRequest multiSearchRequest) { return this.Dispatch<IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse>( multiSearchRequest, (p, d) => { var converter = CreateMultiSearchConverter(d); var json = Serializer.SerializeMultiSearch(d); var creator = new MultiSearchCreator((r, s) => this.DeserializeMultiSearchHit(r, s, converter)); return this.RawDispatch.MsearchDispatch<MultiSearchResponse>(p.DeserializationState(creator), json); } ); }
/// <inheritdoc /> public Task <IMultiSearchResponse> MultiSearchAsync(IMultiSearchRequest multiSearchRequest) { return(this.DispatchAsync <IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse, IMultiSearchResponse>( multiSearchRequest, (p, d) => { var converter = CreateMultiSearchConverter(d); var json = Serializer.SerializeMultiSearch(d); var creator = new MultiSearchCreator((r, s) => this.DeserializeMultiSearchHit(r, s, converter)); return this.RawDispatch.MsearchDispatchAsync <MultiSearchResponse>(p.DeserializationState(creator), json); } )); }
/// <inheritdoc /> public Task <IMultiSearchResponse> MultiSearchAsync(IMultiSearchRequest request, CancellationToken cancellationToken = default(CancellationToken) ) => Dispatcher.DispatchAsync <IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse, IMultiSearchResponse>( request, cancellationToken, (p, d, c) => { var converter = CreateMultiSearchDeserializer(p); var serializer = ConnectionSettings.CreateStateful(converter); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize <MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride = creator; return(LowLevelDispatch.MsearchDispatchAsync <MultiSearchResponse>(p, new SerializableData <IMultiSearchRequest>(p), c)); } );
/// <inheritdoc /> public IMultiSearchResponse MultiSearch(IMultiSearchRequest request) { return(this.Dispatcher.Dispatch <IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse>( request, (p, d) => { var converter = CreateMultiSearchDeserializer(p); var serializer = this.ConnectionSettings.StatefulSerializer(converter); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize <MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride(creator); return this.LowLevelDispatch.MsearchDispatch <MultiSearchResponse>(p, (object)p); } )); }
/// <inheritdoc /> public IMultiSearchResponse MultiSearch(IMultiSearchRequest request) { return this.Dispatcher.Dispatch<IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse>( request, (p, d) => { var converter = CreateMultiSearchDeserializer(p); var serializer = this.ConnectionSettings.StatefulSerializer(converter); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize<MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride(creator); return this.LowLevelDispatch.MsearchDispatch<MultiSearchResponse>(p, (object)p); } ); }
/// <inheritdoc /> public Task <IMultiSearchResponse> MultiSearchAsync(IMultiSearchRequest request) { return(this.Dispatcher.DispatchAsync <IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse, IMultiSearchResponse>( request, (p, d) => { var converter = CreateMultiSearchDeserializer(p); var serializer = new NestSerializer(this.ConnectionSettings, converter); var json = serializer.SerializeToBytes(p).Utf8String(); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize <MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride(creator); return this.LowLevelDispatch.MsearchDispatchAsync <MultiSearchResponse>(p, json); } )); }
/// <inheritdoc /> public Task <IMultiSearchResponse> MultiSearchAsync(IMultiSearchRequest request, CancellationToken cancellationToken = default(CancellationToken)) { return(this.Dispatcher.DispatchAsync <IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse, IMultiSearchResponse>( request, cancellationToken, (p, d, c) => { var converter = CreateMultiSearchDeserializer(p); var serializer = this.ConnectionSettings.StatefulSerializer(converter); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize <MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride(creator); return this.LowLevelDispatch.MsearchDispatchAsync <MultiSearchResponse>(p, (object)p, c); } )); }
/// <inheritdoc /> public Task<IMultiSearchResponse> MultiSearchAsync(IMultiSearchRequest request) { return this.Dispatcher.DispatchAsync<IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse, IMultiSearchResponse>( request, (p, d) => { var converter = CreateMultiSearchDeserializer(p); var serializer = new NestSerializer(this.ConnectionSettings, converter); var json = serializer.SerializeToBytes(p).Utf8String(); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize<MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride(creator); return this.LowLevelDispatch.MsearchDispatchAsync<MultiSearchResponse>(p, json); } ); }
/// <inheritdoc /> public Task<IMultiSearchResponse> MultiSearchAsync(IMultiSearchRequest request, CancellationToken cancellationToken = default(CancellationToken)) { return this.Dispatcher.DispatchAsync<IMultiSearchRequest, MultiSearchRequestParameters, MultiSearchResponse, IMultiSearchResponse>( request, cancellationToken, (p, d, c) => { var converter = CreateMultiSearchDeserializer(p); var serializer = this.ConnectionSettings.StatefulSerializer(converter); var creator = new MultiSearchCreator((r, s) => serializer.Deserialize<MultiSearchResponse>(s)); request.RequestParameters.DeserializationOverride(creator); return this.LowLevelDispatch.MsearchDispatchAsync<MultiSearchResponse>(p, (object)p, c); } ); }