using System.Text.Json.Serialization;
using Microsoft.Extensions.Options;
using OptixServe.Api.Configuration;
using OptixServe.Api.Dtos;
namespace OptixServe.Api.Endpoints;
[JsonSerializable(typeof(string))]
[JsonSerializable(typeof(CommonErrorDto))]
public partial class VersionJsonContext : JsonSerializerContext { }
///
/// This is a endpoint ONLY FOR TEST!
/// Should not expect ANY stable behavior on it!
///
public static class VersionEndpoint
{
public static void Register(RouteGroupBuilder parentGroup)
{
var group = parentGroup.MapGroup("/version");
group.MapGet("/", () => "v1");
group.MapGet("/test/dbconfig", (IOptions appSettings) =>
{
var dbType = appSettings.Value.Database?.Type;
var dbHost = appSettings.Value.Database?.Host;
return Results.Ok(new CommonErrorDto
{
Message = $"Set up {dbType} database on {dbHost}"
});
});
}
}