mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-01-14 22:33:35 +01:00
70 lines
1.9 KiB
C#
70 lines
1.9 KiB
C#
using System.Threading;
|
|
using Microsoft.Extensions.Logging;
|
|
using Newtonsoft.Json;
|
|
using WireMock.Logging;
|
|
using WireMock.Net.StandAlone;
|
|
using WireMock.Settings;
|
|
|
|
namespace WireMock.Net.WebApplication
|
|
{
|
|
public class WireMockService : IWireMockService
|
|
{
|
|
private static int sleepTime = 30000;
|
|
|
|
private readonly ILogger _logger;
|
|
private readonly IFluentMockServerSettings _settings;
|
|
|
|
private class Logger : IWireMockLogger
|
|
{
|
|
private readonly ILogger _logger;
|
|
|
|
public Logger(ILogger logger)
|
|
{
|
|
_logger = logger;
|
|
}
|
|
|
|
public void Debug(string formatString, params object[] args)
|
|
{
|
|
_logger.LogDebug(formatString, args);
|
|
}
|
|
|
|
public void Info(string formatString, params object[] args)
|
|
{
|
|
_logger.LogInformation(formatString, args);
|
|
}
|
|
|
|
public void Warn(string formatString, params object[] args)
|
|
{
|
|
_logger.LogWarning(formatString, args);
|
|
}
|
|
|
|
public void Error(string formatString, params object[] args)
|
|
{
|
|
_logger.LogError(formatString, args);
|
|
}
|
|
}
|
|
|
|
public WireMockService(ILogger logger, IFluentMockServerSettings settings)
|
|
{
|
|
_logger = logger;
|
|
_settings = settings;
|
|
|
|
_settings.Logger = new Logger(logger);
|
|
}
|
|
|
|
public void Run()
|
|
{
|
|
_logger.LogInformation("WireMock.Net server starting");
|
|
|
|
StandAloneApp.Start(_settings);
|
|
|
|
_logger.LogInformation($"WireMock.Net server settings {JsonConvert.SerializeObject(_settings)}");
|
|
|
|
while (true)
|
|
{
|
|
_logger.LogInformation("WireMock.Net server running");
|
|
Thread.Sleep(sleepTime);
|
|
}
|
|
}
|
|
}
|
|
} |