Files
WireMock.Net-wiremock/src/WireMock.Net/ResponseProviders/DynamicResponseProvider.cs
2022-09-03 08:52:05 +02:00

21 lines
752 B
C#

using System;
using System.Threading.Tasks;
using WireMock.Settings;
namespace WireMock.ResponseProviders;
internal class DynamicResponseProvider : IResponseProvider
{
private readonly Func<IRequestMessage, IResponseMessage> _responseMessageFunc;
public DynamicResponseProvider(Func<IRequestMessage, IResponseMessage> responseMessageFunc)
{
_responseMessageFunc = responseMessageFunc;
}
public Task<(IResponseMessage Message, IMapping? Mapping)> ProvideResponseAsync(IMapping mapping, IRequestMessage requestMessage, WireMockServerSettings settings)
{
(IResponseMessage responseMessage, IMapping? mapping) result = (_responseMessageFunc(requestMessage), null);
return Task.FromResult(result);
}
}