using System; using System.Threading.Tasks; using JetBrains.Annotations; using WireMock.Validation; namespace WireMock { internal class DynamicResponseProvider : IResponseProvider { private readonly Func _responseMessageFunc; public DynamicResponseProvider([NotNull] Func responseMessageFunc) { Check.NotNull(responseMessageFunc, nameof(responseMessageFunc)); _responseMessageFunc = responseMessageFunc; } public Task ProvideResponse(RequestMessage requestMessage) { return Task.FromResult(_responseMessageFunc(requestMessage)); } } }