public TResponse Request(Envelope <TRequest> envelope) { var request = _messageBus.RequestEnvelope <TRequest, TResponse>(envelope); request.WaitForResponse(); return(request.GetResponse()); }
public static IRequest <TResponse> Request <TRequest, TResponse>(this IReqResBus messageBus, string topic, TRequest requestPayload) { Assert.ArgumentNotNull(messageBus, nameof(messageBus)); var envelope = messageBus.EnvelopeFactory.Create(topic, requestPayload); return(messageBus.RequestEnvelope <TRequest, TResponse>(envelope)); }