2024-08-17 16:38:40 +02:00
|
|
|
|
using Asp.Versioning.Builder;
|
|
|
|
|
|
using Asp.Versioning.Conventions;
|
2025-06-12 18:22:37 +02:00
|
|
|
|
using Vegasco.Server.Api.Cars;
|
|
|
|
|
|
using Vegasco.Server.Api.Common;
|
|
|
|
|
|
using Vegasco.Server.Api.Consumptions;
|
|
|
|
|
|
using Vegasco.Server.Api.Info;
|
2024-08-17 16:38:40 +02:00
|
|
|
|
|
2025-06-12 18:22:37 +02:00
|
|
|
|
namespace Vegasco.Server.Api.Endpoints;
|
2024-08-17 16:38:40 +02:00
|
|
|
|
|
|
|
|
|
|
public static class EndpointExtensions
|
|
|
|
|
|
{
|
|
|
|
|
|
public static void MapEndpoints(this IEndpointRouteBuilder builder)
|
|
|
|
|
|
{
|
|
|
|
|
|
ApiVersionSet apiVersionSet = builder.NewApiVersionSet()
|
2025-06-13 20:12:26 +02:00
|
|
|
|
.HasApiVersion(1.0)
|
|
|
|
|
|
.Build();
|
2024-08-17 16:38:40 +02:00
|
|
|
|
|
|
|
|
|
|
RouteGroupBuilder versionedApis = builder.MapGroup("/v{apiVersion:apiVersion}")
|
2025-06-13 20:12:26 +02:00
|
|
|
|
.WithApiVersionSet(apiVersionSet);
|
|
|
|
|
|
|
|
|
|
|
|
GetCar.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
GetCars.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
CreateCar.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
UpdateCar.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
DeleteCar.MapEndpoint(versionedApis)
|
2024-08-17 16:38:40 +02:00
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
|
2025-06-13 20:12:26 +02:00
|
|
|
|
GetConsumptions.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
GetConsumption.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
CreateConsumption.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
UpdateConsumption.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
|
|
|
|
|
DeleteConsumption.MapEndpoint(versionedApis)
|
|
|
|
|
|
.RequireAuthorization(Constants.Authorization.RequireAuthenticatedUserPolicy);
|
2024-08-23 18:55:05 +02:00
|
|
|
|
|
|
|
|
|
|
GetServerInfo.MapEndpoint(versionedApis);
|
2024-08-17 16:38:40 +02:00
|
|
|
|
}
|
|
|
|
|
|
}
|