From 79a02e58b93f27d7bb6d1b99a95fa01775a99807 Mon Sep 17 00:00:00 2001 From: Arne Dumarey Date: Tue, 2 Jul 2024 14:14:40 +0200 Subject: [PATCH] feat: switch feeds api to oslo for building + address + streetname --- paket.dependencies | 19 +-- paket.lock | 25 +-- .../Address/AddressController-AddressMatch.cs | 143 ---------------- .../Address/AddressController-Count.cs | 105 ------------ .../Address/AddressController-Get.cs | 93 ----------- .../Address/AddressController-List.cs | 156 ------------------ src/Public.Api/Address/AddressController.cs | 39 ----- .../Building/BuildingController-Count.cs | 66 -------- .../Building/BuildingController-Get.cs | 87 ---------- .../BuildingController-GetReferences.cs | 80 --------- .../Building/BuildingController-List.cs | 113 ------------- src/Public.Api/Building/BuildingController.cs | 38 ----- .../BuildingUnitController-Count.cs | 78 --------- .../BuildingUnitController-Get.cs | 81 --------- .../BuildingUnitController-List.cs | 129 --------------- .../BuildingUnit/BuildingUnitController.cs | 38 ----- .../CrabBuildingController-List.cs | 93 ----------- .../CrabBuilding/CrabBuildingController.cs | 40 ----- .../CrabHouseNumberController-Count.cs | 64 ------- .../CrabHouseNumberController-List.cs | 105 ------------ .../CrabHouseNumberController.cs | 39 ----- .../CrabSubaddressController-Count.cs | 64 ------- .../CrabSubaddressController-List.cs | 105 ------------ .../CrabSubaddressController.cs | 40 ----- src/Public.Api/Feeds/Addresses.cs | 90 ---------- src/Public.Api/Feeds/Buildings.cs | 90 ---------- src/Public.Api/Feeds/FeedControllerCommon.cs | 66 -------- src/Public.Api/Feeds/Streetnames.cs | 90 ---------- src/Public.Api/Feeds/SyndicationController.cs | 29 ---- src/Public.Api/Feeds/V2/Addresses.cs | 6 +- src/Public.Api/Feeds/V2/Buildings.cs | 6 +- src/Public.Api/Feeds/V2/Streetnames.cs | 6 +- .../Configuration/AddressOptions.cs | 9 - .../Configuration/BuildingOptions.cs | 9 - .../Configuration/StreetNameOptions.cs | 9 - .../GrbWfsExceptionMapping.cs | 36 ---- src/Public.Api/Infrastructure/Startup.cs | 9 - src/Public.Api/Public.Api.csproj | 3 - .../StreetName/StreetNameController-Count.cs | 78 --------- .../StreetName/StreetNameController-Get.cs | 87 ---------- .../StreetName/StreetNameController-List.cs | 146 ---------------- .../StreetName/StreetNameController.cs | 39 ----- src/Public.Api/paket.references | 3 - 43 files changed, 26 insertions(+), 2625 deletions(-) delete mode 100644 src/Public.Api/Address/AddressController-AddressMatch.cs delete mode 100644 src/Public.Api/Address/AddressController-Count.cs delete mode 100644 src/Public.Api/Address/AddressController-Get.cs delete mode 100644 src/Public.Api/Address/AddressController-List.cs delete mode 100755 src/Public.Api/Address/AddressController.cs delete mode 100644 src/Public.Api/Building/BuildingController-Count.cs delete mode 100644 src/Public.Api/Building/BuildingController-Get.cs delete mode 100644 src/Public.Api/Building/BuildingController-GetReferences.cs delete mode 100644 src/Public.Api/Building/BuildingController-List.cs delete mode 100755 src/Public.Api/Building/BuildingController.cs delete mode 100644 src/Public.Api/BuildingUnit/BuildingUnitController-Count.cs delete mode 100644 src/Public.Api/BuildingUnit/BuildingUnitController-Get.cs delete mode 100644 src/Public.Api/BuildingUnit/BuildingUnitController-List.cs delete mode 100755 src/Public.Api/BuildingUnit/BuildingUnitController.cs delete mode 100644 src/Public.Api/CrabBuilding/CrabBuildingController-List.cs delete mode 100755 src/Public.Api/CrabBuilding/CrabBuildingController.cs delete mode 100644 src/Public.Api/CrabHouseNumber/CrabHouseNumberController-Count.cs delete mode 100644 src/Public.Api/CrabHouseNumber/CrabHouseNumberController-List.cs delete mode 100755 src/Public.Api/CrabHouseNumber/CrabHouseNumberController.cs delete mode 100644 src/Public.Api/CrabSubaddress/CrabSubaddressController-Count.cs delete mode 100644 src/Public.Api/CrabSubaddress/CrabSubaddressController-List.cs delete mode 100755 src/Public.Api/CrabSubaddress/CrabSubaddressController.cs delete mode 100644 src/Public.Api/Feeds/Addresses.cs delete mode 100644 src/Public.Api/Feeds/Buildings.cs delete mode 100755 src/Public.Api/Feeds/FeedControllerCommon.cs delete mode 100644 src/Public.Api/Feeds/Streetnames.cs delete mode 100644 src/Public.Api/Feeds/SyndicationController.cs delete mode 100755 src/Public.Api/Infrastructure/Configuration/AddressOptions.cs delete mode 100644 src/Public.Api/Infrastructure/Configuration/BuildingOptions.cs delete mode 100755 src/Public.Api/Infrastructure/Configuration/StreetNameOptions.cs delete mode 100644 src/Public.Api/Infrastructure/ProblemDetailsExceptionMapping/GrbWfsExceptionMapping.cs delete mode 100644 src/Public.Api/StreetName/StreetNameController-Count.cs delete mode 100644 src/Public.Api/StreetName/StreetNameController-Get.cs delete mode 100644 src/Public.Api/StreetName/StreetNameController-List.cs delete mode 100755 src/Public.Api/StreetName/StreetNameController.cs diff --git a/paket.dependencies b/paket.dependencies index 400052918..91e57718e 100644 --- a/paket.dependencies +++ b/paket.dependencies @@ -20,17 +20,14 @@ nuget Swashbuckle.AspNetCore.SwaggerUI 6.2.3 // VBR STUFF nuget Be.Vlaanderen.Basisregisters.MunicipalityRegistry.Api.Oslo 5.2.0 copy_content_to_output_dir: always nuget Be.Vlaanderen.Basisregisters.PostalRegistry.Api.Oslo 5.1.0 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.Legacy 4.0.7 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.Oslo 4.0.7 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.BackOffice.Abstractions 4.0.7 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.Legacy 4.2.2 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.Oslo 4.2.2 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.BackOffice.Abstractions 4.2.2 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.AddressRegistry.Api.Legacy 4.0.8 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.AddressRegistry.Api.Oslo 4.0.8 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.AddressRegistry.Api.BackOffice.Abstractions 4.0.8 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.Oslo 5.4.2 copy_content_to_output_dir: always -nuget Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.BackOffice.Abstractions 5.4.2 copy_content_to_output_dir: always +nuget Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.Oslo 4.5.1 copy_content_to_output_dir: always +nuget Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.BackOffice.Abstractions 4.5.1 copy_content_to_output_dir: always +nuget Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.Oslo 4.10.1 copy_content_to_output_dir: always +nuget Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.BackOffice.Abstractions 4.10.1 copy_content_to_output_dir: always +nuget Be.Vlaanderen.Basisregisters.AddressRegistry.Api.Oslo 4.7.0 copy_content_to_output_dir: always +nuget Be.Vlaanderen.Basisregisters.AddressRegistry.Api.BackOffice.Abstractions 4.7.0 copy_content_to_output_dir: always +nuget Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.Oslo 5.5.3 copy_content_to_output_dir: always +nuget Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.BackOffice.Abstractions 5.5.3 copy_content_to_output_dir: always nuget Be.Vlaanderen.Basisregisters.RoadRegistry.BackOffice 4.0.8 copy_content_to_output_dir: always nuget Be.Vlaanderen.Basisregisters.RoadRegistry.BackOffice.Api 4.0.8 copy_content_to_output_dir: always nuget Be.Vlaanderen.Basisregisters.RoadRegistry.BackOffice.Abstractions 4.0.8 copy_content_to_output_dir: always diff --git a/paket.lock b/paket.lock index 1930a547b..b97e3ee86 100644 --- a/paket.lock +++ b/paket.lock @@ -42,14 +42,11 @@ NUGET System.Security.Cryptography.ProtectedData (>= 4.7) System.Text.Json (>= 4.7.2) System.Threading.Tasks.Extensions (>= 4.5.4) - Be.Vlaanderen.Basisregisters.AddressRegistry.Api.BackOffice.Abstractions (4.0.8) - copy_content_to_output_dir: always + Be.Vlaanderen.Basisregisters.AddressRegistry.Api.BackOffice.Abstractions (4.7) - copy_content_to_output_dir: always Be.Vlaanderen.Basisregisters.Api (>= 23.1) MediatR.Contracts (>= 2.0.1) - Be.Vlaanderen.Basisregisters.AddressRegistry.Api.Legacy (4.0.8) - copy_content_to_output_dir: always - Be.Vlaanderen.Basisregisters.GrAr.Legacy (>= 21.1) - MediatR.Contracts (>= 2.0.1) - Be.Vlaanderen.Basisregisters.AddressRegistry.Api.Oslo (4.0.8) - copy_content_to_output_dir: always - Be.Vlaanderen.Basisregisters.GrAr.Legacy (>= 21.1) + Be.Vlaanderen.Basisregisters.AddressRegistry.Api.Oslo (4.7) - copy_content_to_output_dir: always + Be.Vlaanderen.Basisregisters.GrAr.Legacy (>= 21.5) MediatR.Contracts (>= 2.0.1) Be.Vlaanderen.Basisregisters.AggregateSource (9.0.1) Be.Vlaanderen.Basisregisters.Utilities.HashCodeCalculator (>= 4.0) @@ -181,11 +178,10 @@ NUGET Microsoft.Data.SqlClient (>= 5.2) System.Collections.Immutable (>= 8.0) Be.Vlaanderen.Basisregisters.Build.Pipeline (7.2.5) - Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.BackOffice.Abstractions (4.2.2) - copy_content_to_output_dir: always + Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.BackOffice.Abstractions (4.10.1) - copy_content_to_output_dir: always Be.Vlaanderen.Basisregisters.Api (>= 23.1) MediatR.Contracts (>= 2.0.1) - Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.Legacy (4.2.2) - copy_content_to_output_dir: always - Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.Oslo (4.2.2) - copy_content_to_output_dir: always + Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.Oslo (4.10.1) - copy_content_to_output_dir: always Be.Vlaanderen.Basisregisters.CommandHandling (9.0.1) Be.Vlaanderen.Basisregisters.CommandHandling.Idempotency (9.0.1) Be.Vlaanderen.Basisregisters.CommandHandling (9.0.1) @@ -261,10 +257,10 @@ NUGET Be.Vlaanderen.Basisregisters.NisCodeService.Abstractions (2.0) Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.1) Microsoft.Extensions.Logging.Abstractions (>= 8.0.1) - Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.BackOffice.Abstractions (5.4.2) - copy_content_to_output_dir: always + Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.BackOffice.Abstractions (5.5.3) - copy_content_to_output_dir: always Be.Vlaanderen.Basisregisters.Api (>= 23.1) MediatR.Contracts (>= 2.0.1) - Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.Oslo (5.4.2) - copy_content_to_output_dir: always + Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.Oslo (5.5.3) - copy_content_to_output_dir: always Be.Vlaanderen.Basisregisters.GrAr.Legacy (>= 21.7) Be.Vlaanderen.Basisregisters.PostalRegistry.Api.Oslo (5.1) - copy_content_to_output_dir: always AspNetCore.HealthChecks.SqlServer (>= 8.0) @@ -323,13 +319,10 @@ NUGET Be.Vlaanderen.Basisregisters.Shaperon.Geometries (10.0.2) - copy_content_to_output_dir: always Be.Vlaanderen.Basisregisters.Sqs (3.0.1) MediatR (>= 12.2) - Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.BackOffice.Abstractions (4.0.7) - copy_content_to_output_dir: always + Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.BackOffice.Abstractions (4.5.1) - copy_content_to_output_dir: always Be.Vlaanderen.Basisregisters.Api (>= 23.1) MediatR.Contracts (>= 2.0.1) - Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.Legacy (4.0.7) - copy_content_to_output_dir: always - Be.Vlaanderen.Basisregisters.GrAr.Legacy (>= 21.0) - MediatR.Contracts (>= 2.0.1) - Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.Oslo (4.0.7) - copy_content_to_output_dir: always + Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.Oslo (4.5.1) - copy_content_to_output_dir: always Be.Vlaanderen.Basisregisters.GrAr.Legacy (>= 21.0) MediatR.Contracts (>= 2.0.1) Be.Vlaanderen.Basisregisters.TicketingService.Abstractions (2.0.1) diff --git a/src/Public.Api/Address/AddressController-AddressMatch.cs b/src/Public.Api/Address/AddressController-AddressMatch.cs deleted file mode 100644 index 1f63fda68..000000000 --- a/src/Public.Api/Address/AddressController-AddressMatch.cs +++ /dev/null @@ -1,143 +0,0 @@ -// namespace Public.Api.Address -// { -// using AddressRegistry.Api.Legacy.AddressMatch.Responses; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using System.Threading; -// using System.Threading.Tasks; -// using Common.Infrastructure; -// using Infrastructure.Swagger; -// using Swashbuckle.AspNetCore.Annotations; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class AddressController -// { -// /// -// /// Voer een adresmatch vraag uit en krijg de adressen die gematcht worden (v1). -// /// -// /// Filter op de gemeentenaam van het adres (1). -// /// Filter op de NIS-code van het adres (1). -// /// Filter op de postcode van het adres (1). -// /// Filter op de straatcode van het kadaster (2) (3). -// /// Filter op de straatcode van het rijksregister (2) (3). -// /// Filter op de straatnaam van het adres (2). -// /// Filter op het huisnummer van het adres (1). -// /// Filter op het huisnummer gekend in het rijksregister (4). -// /// Filter op het busnummer van het adres (4). -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de adresmatch gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("adresmatch", Name = nameof(AddressMatch))] -// [ApiOrder(ApiOrder.Address.V1 + 4)] -// [ProducesResponseType(typeof(AddressMatchCollection), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(AddressMatchResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [SwaggerOperation(Description = "Van de optionele parameters (2) resp. (1) moet er minstens één ingevuld zijn.
Van de optionele parameters (3) resp. (4) mag er maximaal één van de twee ingevuld zijn.")] -// public async Task AddressMatch( -// [FromQuery] string gemeentenaam, -// [FromQuery] string niscode, -// [FromQuery] string postcode, -// [FromQuery] string kadStraatcode, -// [FromQuery] string rrStraatcode, -// [FromQuery] string straatnaam, -// [FromQuery] string huisnummer, -// [FromQuery] string index, -// [FromQuery] string busnummer, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IOptions responseOptions, -// [FromServices] ProblemDetailsHelper problemDetailsHelper, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendMatchRequest( -// Taal.NL, -// busnummer, -// huisnummer, -// postcode, -// gemeentenaam, -// niscode, -// straatnaam, -// kadStraatcode, -// rrStraatcode, -// index); -// -// var response = await GetFromBackendWithBadRequestAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// problemDetailsHelper, -// cancellationToken: cancellationToken); -// -// return BackendListResponseResult.Create(response, Request.Query, string.Empty); -// } -// -// private static RestRequest CreateBackendMatchRequest( -// Taal language, -// string boxNumber, -// string houseNumber, -// string postalCode, -// string municipalityName, -// string nisCode, -// string streetName, -// string kadStreetCode, -// string rrStreetCode, -// string index) -// { -// var request = new RestRequest("adresmatch") -// .AddParameter("taal", language, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(boxNumber)) -// request.AddParameter("busnummer", boxNumber, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(houseNumber)) -// request.AddParameter("huisnummer", houseNumber, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(postalCode)) -// request.AddParameter("postcode", postalCode, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(municipalityName)) -// request.AddParameter("gemeentenaam", municipalityName, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(nisCode)) -// request.AddParameter("niscode", nisCode, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(streetName)) -// request.AddParameter("straatnaam", streetName, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(kadStreetCode)) -// request.AddParameter("kadstraatcode", kadStreetCode, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(rrStreetCode)) -// request.AddParameter("rrstraatcode", rrStreetCode, ParameterType.QueryString); -// -// if (!string.IsNullOrEmpty(index)) -// request.AddParameter("index", index, ParameterType.QueryString); -// -// return request; -// } -// } -// } diff --git a/src/Public.Api/Address/AddressController-Count.cs b/src/Public.Api/Address/AddressController-Count.cs deleted file mode 100644 index 901ae4480..000000000 --- a/src/Public.Api/Address/AddressController-Count.cs +++ /dev/null @@ -1,105 +0,0 @@ -// namespace Public.Api.Address -// { -// using System.Threading; -// using System.Threading.Tasks; -// using AddressRegistry.Api.Legacy.Address.Count; -// using AddressRegistry.Api.Legacy.Address.List; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class AddressController -// { -// /// -// /// Vraag het totaal aantal adressen op (v1). -// /// -// /// Filter op de gemeentenaam van het adres (exact) (optioneel). -// /// Filter op de postcode van het adres (exact) (optioneel). -// /// Filter op de straatnaam van het adres (exact) (optioneel). -// /// Filter op de homoniemtoevoeging van het adres (exact) (optioneel). -// /// Filter op het huisnummer van het adres (exact) (optioneel). -// /// Filter op het busnummer van het adres (exact) (optioneel). -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van het totaal aantal adressen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als er een interne fout is opgetreden. -// [HttpGet("adressen/totaal-aantal", Name = nameof(CountAddresses))] -// [ApiOrder(ApiOrder.Address.V1 + 3)] -// [ApiExplorerSettings(IgnoreApi = true)] -// [ProducesResponseType(typeof(TotaalAantalResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(TotalCountResponseExample))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultCountCaching, NoStore = true, NoTransform = true)] -// public async Task CountAddresses( -// [FromQuery] string gemeentenaam, -// [FromQuery] int? postcode, -// [FromQuery] string straatnaam, -// [FromQuery] string homoniemToevoeging, -// [FromQuery] string huisnummer, -// [FromQuery] string busnummer, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendCountRequest( -// busnummer, -// huisnummer, -// postcode, -// gemeentenaam, -// straatnaam, -// homoniemToevoeging); -// -// return new BackendResponseResult( -// await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken)); -// } -// -// private static RestRequest CreateBackendCountRequest( -// string boxNumber, -// string houseNumber, -// int? postalCode, -// string municipalityName, -// string streetName, -// string homonymAddition) -// { -// var filter = new AddressFilter -// { -// BoxNumber = boxNumber, -// HouseNumber = houseNumber, -// PostalCode = postalCode?.ToString(), -// MunicipalityName = municipalityName, -// StreetName = streetName, -// HomonymAddition = homonymAddition -// }; -// -// return new RestRequest("adressen/totaal-aantal") -// .AddFiltering(filter); -// } -// } -// } diff --git a/src/Public.Api/Address/AddressController-Get.cs b/src/Public.Api/Address/AddressController-Get.cs deleted file mode 100644 index a67879064..000000000 --- a/src/Public.Api/Address/AddressController-Get.cs +++ /dev/null @@ -1,93 +0,0 @@ -// namespace Public.Api.Address -// { -// using System.Threading; -// using System.Threading.Tasks; -// using AddressRegistry.Api.Legacy.Address.Detail; -// using Be.Vlaanderen.Basisregisters.Api.ETag; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class AddressController -// { -// /// -// /// Vraag een adres op (v1). -// /// -// /// Objectidentificator van het adres. -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als het adres gevonden is. -// /// Als het adres niet gewijzigd is ten opzicht van uw verzoek. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het adres niet gevonden kan worden. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het adres verwijderd is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("adressen/{objectId}", Name = nameof(GetAddress))] -// [ApiOrder(ApiOrder.Address.V1 + 1)] -// [ProducesResponseType(typeof(AddressDetailResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(void), StatusCodes.Status304NotModified)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status410Gone)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(AddressResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status304NotModified, typeof(NotModifiedResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status404NotFound, typeof(AddressNotFoundResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status410Gone, typeof(AddressGoneResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheExpiration(MaxAge = DefaultDetailCaching)] -// public async Task GetAddress( -// [FromRoute] int objectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendDetailRequest(objectId); -// -// var cacheKey = $"legacy/address:{objectId}"; -// -// var value = await (CanGetFromCache(actionContextAccessor.ActionContext) -// ? GetFromCacheThenFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// cacheKey, -// CreateDefaultHandleBadRequest(), -// cancellationToken) -// : GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken)); -// -// return new BackendResponseResult(value, BackendResponseResultOptions.ForRead()); -// } -// -// private static RestRequest CreateBackendDetailRequest(int addressId) -// { -// var request = new RestRequest("adressen/{addressId}"); -// request.AddParameter("addressId", addressId, ParameterType.UrlSegment); -// return request; -// } -// } -// } diff --git a/src/Public.Api/Address/AddressController-List.cs b/src/Public.Api/Address/AddressController-List.cs deleted file mode 100644 index a232d6ab0..000000000 --- a/src/Public.Api/Address/AddressController-List.cs +++ /dev/null @@ -1,156 +0,0 @@ -// namespace Public.Api.Address -// { -// using System.Collections.Generic; -// using System.Threading; -// using System.Threading.Tasks; -// using AddressRegistry.Api.Legacy.Address.List; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class AddressController -// { -// /// -// /// Vraag een lijst met adressen op (v1). -// /// -// /// Nulgebaseerde index van de eerste instantie die teruggegeven wordt. De offset is echter beperkt tot 1000000, indien meer data dient ingelezen te worden is het gebruik van extra filters aangewezen op de service of verwijzen we naar de downloadproducten van het gebouwen- en adressenregister (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Optionele sortering van het resultaat (id, postcode, huisnummer, busnummer). -// /// Filter op de gemeentenaam van het adres (exact) (optioneel). -// /// Filter op de postcode van het adres (exact) (optioneel). -// /// Filter op de straatnaam van het adres (exact) (optioneel). -// /// Filter op de homoniemtoevoeging van het adres (exact) (optioneel). -// /// Filter op het huisnummer van het adres (exact) (optioneel). -// /// Filter op het busnummer van het adres (exact) (optioneel). -// /// Filter op de NIS-code van het adres (exact) (optioneel). -// /// -// /// Filter op de status van het adres (exact) (optioneel).
-// /// `"voorgesteld"` `"inGebruik"` `"gehistoreerd"` `"afgekeurd"` -// /// -// /// Filter op de objectidentificator van de gekoppelde straatnaam (exact) (optioneel). -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met adressen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("adressen", Name = nameof(ListAddresses))] -// [ApiOrder(ApiOrder.Address.V1 + 2)] -// [ProducesResponseType(typeof(AddressListResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(AddressListResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultListCaching, NoStore = true, NoTransform = true)] -// public async Task ListAddresses( -// [FromQuery] int? offset, -// [FromQuery] int? limit, -// [FromQuery] string sort, -// [FromQuery] string gemeentenaam, -// [FromQuery] int? postcode, -// [FromQuery] string straatnaam, -// [FromQuery] string homoniemToevoeging, -// [FromQuery] string huisnummer, -// [FromQuery] string busnummer, -// [FromQuery] string niscode, -// [FromQuery] string status, -// [FromQuery] int? straatnaamObjectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IOptions responseOptions, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// const Taal taal = Taal.NL; -// -// RestRequest BackendRequest() => CreateBackendListRequest( -// offset, -// limit, -// taal, -// sort, -// busnummer, -// huisnummer, -// postcode, -// gemeentenaam, -// straatnaam, -// homoniemToevoeging, -// niscode, -// status, -// straatnaamObjectId); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return BackendListResponseResult.Create(value, Request.Query, responseOptions.Value.VolgendeUrl); -// } -// -// private static RestRequest CreateBackendListRequest(int? offset, -// int? limit, -// Taal language, -// string sort, -// string boxNumber, -// string houseNumber, -// int? postalCode, -// string municipalityName, -// string streetName, -// string homonymAddition, -// string niscode, -// string status, -// int? streetNameId) -// { -// var filter = new AddressFilter -// { -// BoxNumber = boxNumber, -// HouseNumber = houseNumber, -// PostalCode = postalCode?.ToString() ?? string.Empty, -// MunicipalityName = municipalityName, -// StreetName = streetName, -// HomonymAddition = homonymAddition, -// NisCode = niscode, -// Status = status, -// StreetNameId = streetNameId?.ToString() -// }; -// -// // id, postcode, huisnummer, busnummer -// var sortMapping = new Dictionary -// { -// { "BusNummer", "BoxNumber" }, -// { "huisnummer", "HouseNumber" }, -// { "postcode", "PostalCode" }, -// { "Id", "PersistentLocalId" }, -// }; -// -// return new RestRequest("adressen?taal={language}") -// .AddParameter("language", language, ParameterType.UrlSegment) -// .AddPagination(offset, limit) -// .AddFiltering(filter) -// .AddSorting(sort, sortMapping); -// } -// } -// } diff --git a/src/Public.Api/Address/AddressController.cs b/src/Public.Api/Address/AddressController.cs deleted file mode 100755 index 8ed2e73e4..000000000 --- a/src/Public.Api/Address/AddressController.cs +++ /dev/null @@ -1,39 +0,0 @@ -// namespace Public.Api.Address -// { -// using Autofac.Features.AttributeFilters; -// using Be.Vlaanderen.Basisregisters.Api; -// using Common.Infrastructure; -// using Common.Infrastructure.Controllers; -// using Common.Infrastructure.Controllers.Attributes; -// using FeatureToggle; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Infrastructure.Version; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.Extensions.Logging; -// using RestSharp; -// -// [ApiVisible] -// [ApiVersion(Version.Current)] -// [AdvertiseApiVersions(Version.CurrentAdvertised)] -// [ApiRoute("")] -// [ApiExplorerSettings(GroupName = "Adressen")] -// [ApiProduces] -// public partial class AddressController : RegistryApiController -// { -// protected override string NotFoundExceptionMessage => "Onbestaand adres."; -// protected override string GoneExceptionMessage => "Verwijderd adres."; -// -// public AddressController( -// IHttpContextAccessor httpContextAccessor, -// [KeyFilter(RegistryKeys.Address)] IRestClient restClient, -// [KeyFilter(RegistryKeys.Address)] IFeatureToggle cacheToggle, -// ConnectionMultiplexerProvider redis, -// ILogger logger) -// : base(httpContextAccessor, redis, logger, restClient, cacheToggle) { } -// -// private static ContentFormat DetermineFormat(ActionContext context) -// => ContentFormat.For(EndpointType.Legacy, context); -// } -// } diff --git a/src/Public.Api/Building/BuildingController-Count.cs b/src/Public.Api/Building/BuildingController-Count.cs deleted file mode 100644 index 9b25629e1..000000000 --- a/src/Public.Api/Building/BuildingController-Count.cs +++ /dev/null @@ -1,66 +0,0 @@ -// namespace Public.Api.Building -// { -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using BuildingRegistry.Api.Legacy.Infrastructure; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class BuildingController -// { -// /// -// /// Vraag het totaal aantal gebouwen op (v1). -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van het totaal aantal gebouwen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als er een interne fout is opgetreden. -// [HttpGet("gebouwen/totaal-aantal", Name = nameof(CountBuildings))] -// [ApiOrder(ApiOrder.Building.V1 + 3)] -// [ApiExplorerSettings(IgnoreApi = true)] -// [ProducesResponseType(typeof(TotaalAantalResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(TotalCountResponseExample))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultCountCaching, NoStore = true, NoTransform = true)] -// public async Task CountBuildings( -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendCountRequest(); -// -// return new BackendResponseResult( -// await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken)); -// } -// -// private static RestRequest CreateBackendCountRequest() => new RestRequest("gebouwen/totaal-aantal"); -// } -// } diff --git a/src/Public.Api/Building/BuildingController-Get.cs b/src/Public.Api/Building/BuildingController-Get.cs deleted file mode 100644 index 63a5cd58c..000000000 --- a/src/Public.Api/Building/BuildingController-Get.cs +++ /dev/null @@ -1,87 +0,0 @@ -// namespace Public.Api.Building -// { -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using BuildingRegistry.Api.Legacy.Building.Detail; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class BuildingController -// { -// /// -// /// Vraag een gebouw op (v1). -// /// -// /// Identificator van het gebouw. -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als het gebouw gevonden is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gebouw niet gevonden kan worden. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het gebouw verwijderd is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("gebouwen/{objectId}", Name = nameof(GetBuilding))] -// [ApiOrder(ApiOrder.Building.V1 + 1)] -// [ProducesResponseType(typeof(BuildingDetailResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status410Gone)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(BuildingResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status404NotFound, typeof(BuildingNotFoundResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status410Gone, typeof(BuildingGoneResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheExpiration(MaxAge = DefaultDetailCaching)] -// public async Task GetBuilding( -// [FromRoute] int objectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendDetailRequest(objectId); -// -// // As long as we do not control WFS, buildings cannot be cached -// //var cacheKey = $"legacy/building:{objectId}"; -// -// //var value = await (CanGetFromCache(actionContextAccessor.ActionContext) -// // ? GetFromCacheThenFromBackendAsync(format, BackendRequest, cacheKey, Request.GetTypedHeaders(), CreateDefaultHandleBadRequest(), cancellationToken) -// // : GetFromBackendAsync(format, BackendRequest, Request.GetTypedHeaders(), CreateDefaultHandleBadRequest(), cancellationToken)); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return new BackendResponseResult(value, BackendResponseResultOptions.ForRead()); -// } -// -// private static RestRequest CreateBackendDetailRequest(int buildingId) -// { -// var request = new RestRequest("gebouwen/{buildingId}"); -// request.AddParameter("buildingId", buildingId, ParameterType.UrlSegment); -// return request; -// } -// } -// } diff --git a/src/Public.Api/Building/BuildingController-GetReferences.cs b/src/Public.Api/Building/BuildingController-GetReferences.cs deleted file mode 100644 index a6258ea97..000000000 --- a/src/Public.Api/Building/BuildingController-GetReferences.cs +++ /dev/null @@ -1,80 +0,0 @@ -// namespace Public.Api.Building -// { -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using BuildingRegistry.Api.Legacy.Building.Detail; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class BuildingController -// { -// /// -// /// Vraag de referenties van een gebouw op (v1). -// /// -// /// Identificator van het gebouw. -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// De referenties van het gebouw. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gebouw niet gevonden kan worden. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het gebouw verwijderd is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("gebouwen/{objectId}/referenties", Name = nameof(GetBuildingReferences))] -// [ApiOrder(ApiOrder.Building.V1 + 4)] -// [ProducesResponseType(typeof(BuildingDetailReferencesResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status410Gone)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(BuildingReferencesResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status404NotFound, typeof(BuildingNotFoundResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status410Gone, typeof(BuildingGoneResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheExpiration(MaxAge = DefaultDetailCaching)] -// public async Task GetBuildingReferences( -// [FromRoute] int objectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendReferencesRequest(objectId); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return new BackendResponseResult(value); -// } -// -// private static RestRequest CreateBackendReferencesRequest(int buildingId) -// { -// var request = new RestRequest("gebouwen/{buildingId}/referenties"); -// request.AddParameter("buildingId", buildingId, ParameterType.UrlSegment); -// return request; -// } -// } -// } diff --git a/src/Public.Api/Building/BuildingController-List.cs b/src/Public.Api/Building/BuildingController-List.cs deleted file mode 100644 index 5a4fc722b..000000000 --- a/src/Public.Api/Building/BuildingController-List.cs +++ /dev/null @@ -1,113 +0,0 @@ -// namespace Public.Api.Building -// { -// using System.Collections.Generic; -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using BuildingRegistry.Api.Legacy.Building.List; -// using BuildingRegistry.Api.Legacy.Building.Query; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class BuildingController -// { -// /// -// /// Vraag een lijst met gebouwen op (v1). -// /// -// /// Nulgebaseerde index van de eerste instantie die teruggegeven wordt. De offset is echter beperkt tot 1000000, indien meer data dient ingelezen te worden is het gebruik van extra filters aangewezen op de service of verwijzen we naar de downloadproducten van het gebouwen- en adressenregister (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Optionele sortering van het resultaat (id). -// /// Filter op de status van het gebouw (exact) (optioneel).
-// /// `"gepland"` `"inAanbouw"` `"gerealiseerd"` `"gehistoreerd"` `"nietGerealiseerd"` -// /// -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met gebouwen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("gebouwen", Name = nameof(ListBuildings))] -// [ApiOrder(ApiOrder.Building.V1 + 2)] -// [ProducesResponseType(typeof(BuildingListResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(BuildingListResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultListCaching, NoStore = true, NoTransform = true)] -// public async Task ListBuildings( -// [FromQuery] int? offset, -// [FromQuery] int? limit, -// [FromQuery] string sort, -// [FromQuery] string status, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IOptions responseOptions, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// const Taal taal = Taal.NL; -// -// RestRequest BackendRequest() => CreateBackendListRequest( -// offset, -// limit, -// taal, -// sort, -// status); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return BackendListResponseResult.Create(value, Request.Query, responseOptions.Value.GebouwVolgendeUrl); -// } -// -// private static RestRequest CreateBackendListRequest( -// int? offset, -// int? limit, -// Taal language, -// string sort, -// string status) -// { -// var filter = new BuildingFilter -// { -// Status = status -// }; -// -// var sortMapping = new Dictionary -// { -// { "Id", "PersistentLocalId" }, -// }; -// -// return new RestRequest("gebouwen?taal={language}") -// .AddParameter("language", language, ParameterType.UrlSegment) -// .AddPagination(offset, limit) -// .AddFiltering(filter) -// .AddSorting(sort, sortMapping); -// } -// } -// } diff --git a/src/Public.Api/Building/BuildingController.cs b/src/Public.Api/Building/BuildingController.cs deleted file mode 100755 index e8a4ecbb3..000000000 --- a/src/Public.Api/Building/BuildingController.cs +++ /dev/null @@ -1,38 +0,0 @@ -// namespace Public.Api.Building -// { -// using Autofac.Features.AttributeFilters; -// using Be.Vlaanderen.Basisregisters.Api; -// using Common.Infrastructure; -// using Common.Infrastructure.Controllers; -// using Common.Infrastructure.Controllers.Attributes; -// using FeatureToggle; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Infrastructure.Version; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.Extensions.Logging; -// -// [ApiVisible] -// [ApiVersion(Version.Current)] -// [AdvertiseApiVersions(Version.CurrentAdvertised)] -// [ApiRoute("")] -// [ApiExplorerSettings(GroupName = "Gebouwen")] -// [ApiProduces] -// public partial class BuildingController : RegistryApiController -// { -// protected override string NotFoundExceptionMessage => "Onbestaand gebouw."; -// protected override string GoneExceptionMessage => "Verwijderd gebouw."; -// -// public BuildingController( -// IHttpContextAccessor httpContextAccessor, -// [KeyFilter(RegistryKeys.Building)] IRestClient restClient, -// [KeyFilter(RegistryKeys.Building)] IFeatureToggle cacheToggle, -// ConnectionMultiplexerProvider redis, -// ILogger logger) -// : base(httpContextAccessor, redis, logger, restClient, cacheToggle){ } -// -// private static ContentFormat DetermineFormat(ActionContext context) -// => ContentFormat.For(EndpointType.Legacy, context); -// } -// } diff --git a/src/Public.Api/BuildingUnit/BuildingUnitController-Count.cs b/src/Public.Api/BuildingUnit/BuildingUnitController-Count.cs deleted file mode 100644 index 30f648c4f..000000000 --- a/src/Public.Api/BuildingUnit/BuildingUnitController-Count.cs +++ /dev/null @@ -1,78 +0,0 @@ -// namespace Public.Api.BuildingUnit -// { -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using BuildingRegistry.Api.Legacy.BuildingUnit.Query; -// using BuildingRegistry.Api.Legacy.Infrastructure; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class BuildingUnitController -// { -// /// -// /// Vraag een totaal aantal gebouweenheden op (v1). -// /// -// /// Optionele objectidentificator van het gekoppelde adres. -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van het totaal aantal gebouweenheden gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als er een interne fout is opgetreden. -// [HttpGet("gebouweenheden/totaal-aantal", Name = nameof(CountBuildingUnits))] -// [ApiOrder(ApiOrder.BuildingUnit.V1 + 3)] -// [ApiExplorerSettings(IgnoreApi = true)] -// [ProducesResponseType(typeof(TotaalAantalResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(TotalCountResponseExample))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultCountCaching, NoStore = true, NoTransform = true)] -// public async Task CountBuildingUnits( -// [FromQuery] int? adresObjectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendCountRequest(adresObjectId); -// -// return new BackendResponseResult( -// await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken)); -// } -// -// private static RestRequest CreateBackendCountRequest(int? addressId) -// { -// var filter = new BuildingUnitFilter -// { -// AddressPersistentLocalId = addressId?.ToString() -// }; -// -// return new RestRequest("gebouweenheden/totaal-aantal") -// .AddFiltering(filter); -// } -// } -// } diff --git a/src/Public.Api/BuildingUnit/BuildingUnitController-Get.cs b/src/Public.Api/BuildingUnit/BuildingUnitController-Get.cs deleted file mode 100644 index 1bcbae04c..000000000 --- a/src/Public.Api/BuildingUnit/BuildingUnitController-Get.cs +++ /dev/null @@ -1,81 +0,0 @@ -// namespace Public.Api.BuildingUnit -// { -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using BuildingRegistry.Api.Legacy.BuildingUnit.Detail; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// using ValidationProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails; -// -// public partial class BuildingUnitController -// { -// /// -// /// Vraag een gebouweenheid op (v1). -// /// -// /// Identificator van de gebouweenheid. -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de gebouweenheid gevonden is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als de gebouweenheid niet gevonden kan worden. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als de gebouweenheid verwijderd is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("gebouweenheden/{objectId}", Name = nameof(GetBuildingUnit))] -// [ApiOrder(ApiOrder.BuildingUnit.V1 + 1)] -// [ProducesResponseType(typeof(BuildingUnitResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status410Gone)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(BuildingUnitResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status404NotFound, typeof(BuildingUnitNotFoundResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status410Gone, typeof(BuildingUnitGoneResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheExpiration(MaxAge = DefaultDetailCaching)] -// public async Task GetBuildingUnit( -// [FromRoute] int objectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendDetailRequest(objectId); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return new BackendResponseResult(value, BackendResponseResultOptions.ForRead()); -// } -// -// private static RestRequest CreateBackendDetailRequest(int buildingUnitId) -// { -// var request = new RestRequest("gebouweenheden/{buildingUnitId}"); -// request.AddParameter("buildingUnitId", buildingUnitId, ParameterType.UrlSegment); -// return request; -// } -// } -// } diff --git a/src/Public.Api/BuildingUnit/BuildingUnitController-List.cs b/src/Public.Api/BuildingUnit/BuildingUnitController-List.cs deleted file mode 100644 index 196cb72e6..000000000 --- a/src/Public.Api/BuildingUnit/BuildingUnitController-List.cs +++ /dev/null @@ -1,129 +0,0 @@ -// namespace Public.Api.BuildingUnit -// { -// using System.Collections.Generic; -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using BuildingRegistry.Api.Legacy.BuildingUnit.List; -// using BuildingRegistry.Api.Legacy.BuildingUnit.Query; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class BuildingUnitController -// { -// /// -// /// Vraag een lijst met gebouweenheden op (v1). -// /// -// /// Nulgebaseerde index van de eerste instantie die teruggegeven wordt. De offset is echter beperkt tot 1000000, indien meer data dient ingelezen te worden is het gebruik van extra filters aangewezen op de service of verwijzen we naar de downloadproducten van het gebouwen- en adressenregister (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Optionele sortering van het resultaat (id). -// /// Filter op de objectidentificator van het gekoppelde gebouw (exact) (optioneel). -// /// Filter op de objectidentificator van het gekoppelde adres (exact) (optioneel). -// /// -// /// Filter op de status van de gebouweenheid (exact).
-// /// `"gepland"` `"gerealiseerd"` `"gehistoreerd"` `"nietGerealiseerd"` -// /// -// /// Filter op de functie van een gebouweenheid (exact) (optioneel). -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met gebouweenheden gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("gebouweenheden", Name = nameof(ListBuildingUnits))] -// [ApiOrder(ApiOrder.BuildingUnit.V1 + 2)] -// [ProducesResponseType(typeof(BuildingUnitListResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(BuildingUnitListResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultListCaching, NoStore = true, NoTransform = true)] -// public async Task ListBuildingUnits( -// [FromQuery] int? offset, -// [FromQuery] int? limit, -// [FromQuery] string sort, -// [FromQuery] int? gebouwObjectId, -// [FromQuery] int? adresObjectId, -// [FromQuery] string status, -// [FromQuery] string? functie, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IOptions responseOptions, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// const Taal taal = Taal.NL; -// -// RestRequest BackendRequest() => CreateBackendListRequest( -// offset, -// limit, -// taal, -// gebouwObjectId, -// adresObjectId, -// functie, -// sort, -// status); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return BackendListResponseResult.Create(value, Request.Query, responseOptions.Value.GebouweenheidVolgendeUrl); -// } -// -// private static RestRequest CreateBackendListRequest( -// int? offset, -// int? limit, -// Taal language, -// int? gebouwId, -// int? addressId, -// string? functie, -// string sort, -// string status) -// { -// var filter = new BuildingUnitFilter -// { -// BuildingPersistentLocalId = gebouwId, -// AddressPersistentLocalId = addressId?.ToString(), -// Status = status, -// Functie = functie -// }; -// -// var sortMapping = new Dictionary -// { -// { "Id", "PersistentLocalId" }, -// }; -// -// return new RestRequest("gebouweenheden?taal={language}") -// .AddParameter("language", language, ParameterType.UrlSegment) -// .AddPagination(offset, limit) -// .AddFiltering(filter) -// .AddSorting(sort, sortMapping); -// } -// } -// } diff --git a/src/Public.Api/BuildingUnit/BuildingUnitController.cs b/src/Public.Api/BuildingUnit/BuildingUnitController.cs deleted file mode 100755 index e831924e8..000000000 --- a/src/Public.Api/BuildingUnit/BuildingUnitController.cs +++ /dev/null @@ -1,38 +0,0 @@ -// namespace Public.Api.BuildingUnit -// { -// using Autofac.Features.AttributeFilters; -// using Be.Vlaanderen.Basisregisters.Api; -// using Common.Infrastructure; -// using Common.Infrastructure.Controllers; -// using Common.Infrastructure.Controllers.Attributes; -// using FeatureToggle; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Infrastructure.Version; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.Extensions.Logging; -// -// [ApiVisible] -// [ApiVersion(Version.Current)] -// [AdvertiseApiVersions(Version.CurrentAdvertised)] -// [ApiRoute("")] -// [ApiExplorerSettings(GroupName = "Gebouweenheden")] -// [ApiProduces] -// public partial class BuildingUnitController : RegistryApiController -// { -// protected override string NotFoundExceptionMessage => "Onbestaande gebouweenheid."; -// protected override string GoneExceptionMessage => "Verwijderde gebouweenheid."; -// -// public BuildingUnitController( -// IHttpContextAccessor httpContextAccessor, -// [KeyFilter(RegistryKeys.Building)] IRestClient restClient, -// [KeyFilter(RegistryKeys.Building)] IFeatureToggle cacheToggle, -// ConnectionMultiplexerProvider redis, -// ILogger logger) -// : base(httpContextAccessor, redis, logger, restClient, cacheToggle) { } -// -// private static ContentFormat DetermineFormat(ActionContext context) -// => ContentFormat.For(EndpointType.Legacy, context); -// } -// } diff --git a/src/Public.Api/CrabBuilding/CrabBuildingController-List.cs b/src/Public.Api/CrabBuilding/CrabBuildingController-List.cs deleted file mode 100644 index 7f8aaab5b..000000000 --- a/src/Public.Api/CrabBuilding/CrabBuildingController-List.cs +++ /dev/null @@ -1,93 +0,0 @@ -// namespace Public.Api.CrabBuilding -// { -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using BuildingRegistry.Api.Legacy.Building.Crab; -// using BuildingRegistry.Api.Legacy.Building.Query; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class CrabBuildingController -// { -// /// -// /// Vraag een lijst met CRAB gebouwen op die voldoen aan de filterparameters (v1). -// /// -// /// Filter op de CRAB-TerreinObjectId van het gebouw (exact). -// /// -// /// Filter op het CRAB-IdentificatorTerreinObject van het gebouw (exact).
-// /// (= OIDN van de corresponderende GRB-gebouwgeometrie)
-// /// (= enige identificator waarmee in Lara op gebouw kan gezocht worden) -// /// -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met CRAB gebouwen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("crabgebouwen", Name = nameof(ListCrabBuildings))] -// [ProducesResponseType(typeof(BuildingCrabMappingResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(BuildingCrabMappingResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultListCaching, NoStore = true, NoTransform = true)] -// public async Task ListCrabBuildings( -// [FromQuery] int? terreinObjectId, -// [FromQuery] string identificatorTerreinObject, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IOptions responseOptions, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// if (!terreinObjectId.HasValue && string.IsNullOrEmpty(identificatorTerreinObject)) -// throw new ApiException("Er dient minstens één identificator als input te worden meegegeven.", StatusCodes.Status400BadRequest); -// -// RestRequest BackendRequest() => CreateBackendListRequest( -// terreinObjectId, -// identificatorTerreinObject); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return BackendListResponseResult.Create(value, Request.Query, string.Empty); -// } -// -// private static RestRequest CreateBackendListRequest( -// int? terrainObjectId, -// string identificatorTerrainObject) -// { -// var filter = new BuildingCrabMappingFilter -// { -// TerrainObjectId = terrainObjectId, -// IdentifierTerrainObject = identificatorTerrainObject -// }; -// -// return new RestRequest("gebouwen/crabgebouwen") -// .AddFiltering(filter); -// } -// } -// } diff --git a/src/Public.Api/CrabBuilding/CrabBuildingController.cs b/src/Public.Api/CrabBuilding/CrabBuildingController.cs deleted file mode 100755 index 3f7177740..000000000 --- a/src/Public.Api/CrabBuilding/CrabBuildingController.cs +++ /dev/null @@ -1,40 +0,0 @@ -// namespace Public.Api.CrabBuilding -// { -// using Autofac.Features.AttributeFilters; -// using Be.Vlaanderen.Basisregisters.Api; -// using Common.Infrastructure; -// using Common.Infrastructure.Controllers; -// using Common.Infrastructure.Controllers.Attributes; -// using FeatureToggle; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Infrastructure.Version; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.Extensions.Logging; -// using RestSharp; -// -// [ApiVisible] -// [ApiVersion(Version.Current)] -// [AdvertiseApiVersions(Version.CurrentAdvertised)] -// [ApiRoute("")] -// [ApiExplorerSettings(GroupName = "CRAB Gebouwen")] -// [ApiOrder(ApiOrder.CrabBuildings)] -// [ApiProduces] -// public partial class CrabBuildingController : RegistryApiController -// { -// protected override string NotFoundExceptionMessage => "Onbestaand gebouw."; -// protected override string GoneExceptionMessage => "Verwijderd gebouw."; -// -// public CrabBuildingController( -// IHttpContextAccessor httpContextAccessor, -// [KeyFilter(RegistryKeys.Building)] IRestClient restClient, -// [KeyFilter(RegistryKeys.Building)] IFeatureToggle cacheToggle, -// ConnectionMultiplexerProvider redis, -// ILogger logger) -// : base(httpContextAccessor, redis, logger, restClient, cacheToggle) { } -// -// private static ContentFormat DetermineFormat(ActionContext context) -// => ContentFormat.For(EndpointType.Legacy, context); -// } -// } diff --git a/src/Public.Api/CrabHouseNumber/CrabHouseNumberController-Count.cs b/src/Public.Api/CrabHouseNumber/CrabHouseNumberController-Count.cs deleted file mode 100644 index fa8a2f28c..000000000 --- a/src/Public.Api/CrabHouseNumber/CrabHouseNumberController-Count.cs +++ /dev/null @@ -1,64 +0,0 @@ -// namespace Public.Api.CrabHouseNumber -// { -// using System.Threading; -// using System.Threading.Tasks; -// using AddressRegistry.Api.Legacy.Address.Count; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Common.Infrastructure; -// using Infrastructure; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class CrabHouseNumberController -// { -// /// -// /// Vraag het totaal aantal crab huisnummers op. -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van het totaal aantal crab huisnummers gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als er een interne fout is opgetreden. -// [HttpGet("crabhuisnummers/totaal-aantal", Name = nameof(CountCrabHouseNumbers))] -// [ApiExplorerSettings(IgnoreApi = true)] -// [ProducesResponseType(typeof(TotaalAantalResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(TotalCountResponseExample))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultCountCaching, NoStore = true, NoTransform = true)] -// public async Task CountCrabHouseNumbers( -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendCountRequest(); -// -// return new BackendResponseResult( -// await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken)); -// } -// -// private static RestRequest CreateBackendCountRequest() -// { -// return new RestRequest("crabhuisnummers/totaal-aantal"); -// } -// } -// } diff --git a/src/Public.Api/CrabHouseNumber/CrabHouseNumberController-List.cs b/src/Public.Api/CrabHouseNumber/CrabHouseNumberController-List.cs deleted file mode 100644 index 6f9ba289a..000000000 --- a/src/Public.Api/CrabHouseNumber/CrabHouseNumberController-List.cs +++ /dev/null @@ -1,105 +0,0 @@ -// namespace Public.Api.CrabHouseNumber -// { -// using System.Collections.Generic; -// using System.Threading; -// using System.Threading.Tasks; -// using AddressRegistry.Api.Legacy.CrabHouseNumber; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class CrabHouseNumberController -// { -// /// -// /// Vraag een lijst met CRAB huisnummers op (v1). -// /// -// /// Nulgebaseerde index van de eerste instantie die teruggegeven wordt. De offset is echter beperkt tot 1000000, indien meer data dient ingelezen te worden is het gebruik van extra filters aangewezen op de service of verwijzen we naar de downloadproducten van het gebouwen- en adressenregister (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Optionele sortering van het resultaat (id). -// /// Filter op de CRAB huisnummerid van het adres (exact) (optioneel). -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met CRAB huisnummers gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("crabhuisnummers", Name = nameof(ListCrabHouseNumbers))] -// [ProducesResponseType(typeof(CrabHouseNumberAddressListResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(CrabHouseNumberListResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultListCaching, NoStore = true, NoTransform = true)] -// public async Task ListCrabHouseNumbers( -// [FromQuery] int? offset, -// [FromQuery] int? limit, -// [FromQuery] string sort, -// [FromQuery] int? objectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IOptions responseOptions, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendListRequest( -// offset, -// limit, -// sort, -// objectId); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return BackendListResponseResult.Create(value, Request.Query, responseOptions.Value.CrabHuisnummersVolgendeUrl); -// } -// -// private static RestRequest CreateBackendListRequest( -// int? offset, -// int? limit, -// string sort, -// int? crabHouseNumberId) -// { -// var filter = new CrabHouseNumberAddressFilter -// { -// CrabHouseNumberId = crabHouseNumberId?.ToString() -// }; -// -// var sortMapping = new Dictionary -// { -// { "CrabHuisNummerId", "HouseNumberId" }, -// { "CrabHuisNummer", "HouseNumberId" }, -// { "HuisNummer", "HouseNumberId" }, -// { "HuisNummerId", "HouseNumberId" }, -// { "Id", "HouseNumberId" }, -// }; -// -// return new RestRequest("crabhuisnummers") -// .AddPagination(offset, limit) -// .AddFiltering(filter) -// .AddSorting(sort, sortMapping); -// } -// } -// } diff --git a/src/Public.Api/CrabHouseNumber/CrabHouseNumberController.cs b/src/Public.Api/CrabHouseNumber/CrabHouseNumberController.cs deleted file mode 100755 index 8706d64b1..000000000 --- a/src/Public.Api/CrabHouseNumber/CrabHouseNumberController.cs +++ /dev/null @@ -1,39 +0,0 @@ -// namespace Public.Api.CrabHouseNumber -// { -// using Autofac.Features.AttributeFilters; -// using Be.Vlaanderen.Basisregisters.Api; -// using Common.Infrastructure; -// using Common.Infrastructure.Controllers; -// using Common.Infrastructure.Controllers.Attributes; -// using FeatureToggle; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Infrastructure.Version; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.Extensions.Logging; -// -// [ApiVisible] -// [ApiVersion(Version.Current)] -// [AdvertiseApiVersions(Version.CurrentAdvertised)] -// [ApiRoute("")] -// [ApiExplorerSettings(GroupName = "CRAB Huisnummers")] -// [ApiOrder(ApiOrder.CrabHouseNumber)] -// [ApiProduces] -// public partial class CrabHouseNumberController : RegistryApiController -// { -// protected override string NotFoundExceptionMessage => "Onbestaand adres."; -// protected override string GoneExceptionMessage => "Verwijderd adres."; -// -// public CrabHouseNumberController( -// IHttpContextAccessor httpContextAccessor, -// [KeyFilter(RegistryKeys.Address)] IRestClient restClient, -// [KeyFilter(RegistryKeys.Address)] IFeatureToggle cacheToggle, -// ConnectionMultiplexerProvider redis, -// ILogger logger) -// : base(httpContextAccessor, redis, logger, restClient, cacheToggle) { } -// -// private static ContentFormat DetermineFormat(ActionContext context) -// => ContentFormat.For(EndpointType.Legacy, context); -// } -// } diff --git a/src/Public.Api/CrabSubaddress/CrabSubaddressController-Count.cs b/src/Public.Api/CrabSubaddress/CrabSubaddressController-Count.cs deleted file mode 100644 index 389bda0b8..000000000 --- a/src/Public.Api/CrabSubaddress/CrabSubaddressController-Count.cs +++ /dev/null @@ -1,64 +0,0 @@ -// namespace Public.Api.CrabSubaddress -// { -// using System.Threading; -// using System.Threading.Tasks; -// using AddressRegistry.Api.Legacy.Address.Count; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Common.Infrastructure; -// using Infrastructure; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class CrabSubaddressController -// { -// /// -// /// Vraag het totaal aantal crab subadressen op. -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van het totaal aantal crab subadressen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als er een interne fout is opgetreden. -// [HttpGet("crabsubadressen/totaal-aantal", Name = nameof(CountSubaddresses))] -// [ApiExplorerSettings(IgnoreApi = true)] -// [ProducesResponseType(typeof(TotaalAantalResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(TotalCountResponseExample))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultCountCaching, NoStore = true, NoTransform = true)] -// public async Task CountSubaddresses( -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendCountRequest(); -// -// return new BackendResponseResult( -// await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken)); -// } -// -// private static RestRequest CreateBackendCountRequest() -// { -// return new RestRequest("crabsubadressen/totaal-aantal"); -// } -// } -// } diff --git a/src/Public.Api/CrabSubaddress/CrabSubaddressController-List.cs b/src/Public.Api/CrabSubaddress/CrabSubaddressController-List.cs deleted file mode 100644 index 8d3cdeb4f..000000000 --- a/src/Public.Api/CrabSubaddress/CrabSubaddressController-List.cs +++ /dev/null @@ -1,105 +0,0 @@ -// namespace Public.Api.CrabSubaddress -// { -// using System.Collections.Generic; -// using System.Threading; -// using System.Threading.Tasks; -// using AddressRegistry.Api.Legacy.CrabSubaddress; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class CrabSubaddressController -// { -// /// -// /// Vraag een lijst met CRAB subadressen op (v1). -// /// -// /// Nulgebaseerde index van de eerste instantie die teruggegeven wordt. De offset is echter beperkt tot 1000000, indien meer data dient ingelezen te worden is het gebruik van extra filters aangewezen op de service of verwijzen we naar de downloadproducten van het gebouwen- en adressenregister (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Optionele sortering van het resultaat (id). -// /// Filter op de CRAB subadresid van het adres (exact) (optioneel). -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met CRAB subadressen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("crabsubadressen", Name = nameof(ListCrabSubaddresses))] -// [ProducesResponseType(typeof(CrabSubAddressListResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(CrabSubaddressListResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultListCaching, NoStore = true, NoTransform = true)] -// public async Task ListCrabSubaddresses( -// [FromQuery] int? offset, -// [FromQuery] int? limit, -// [FromQuery] string sort, -// [FromQuery] int? objectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IOptions responseOptions, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendListRequest( -// offset, -// limit, -// sort, -// objectId); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return BackendListResponseResult.Create(value, Request.Query, responseOptions.Value.CrabSubadressenVolgendeUrl); -// } -// -// private static RestRequest CreateBackendListRequest( -// int? offset, -// int? limit, -// string sort, -// int? crabSubaddressId) -// { -// var filter = new CrabSubaddressAddressFilter -// { -// CrabSubaddressId = crabSubaddressId?.ToString() -// }; -// -// var sortMapping = new Dictionary -// { -// { "CrabSubadresId", "SubaddressId" }, -// { "CrabSubadres", "SubaddressId" }, -// { "Subadres", "SubaddressId" }, -// { "SubadresId", "SubaddressId" }, -// { "Id", "SubaddressId" }, -// }; -// -// return new RestRequest("crabsubadressen") -// .AddPagination(offset, limit) -// .AddFiltering(filter) -// .AddSorting(sort, sortMapping); -// } -// } -// } diff --git a/src/Public.Api/CrabSubaddress/CrabSubaddressController.cs b/src/Public.Api/CrabSubaddress/CrabSubaddressController.cs deleted file mode 100755 index 6084123c5..000000000 --- a/src/Public.Api/CrabSubaddress/CrabSubaddressController.cs +++ /dev/null @@ -1,40 +0,0 @@ -// namespace Public.Api.CrabSubaddress -// { -// using Autofac.Features.AttributeFilters; -// using Be.Vlaanderen.Basisregisters.Api; -// using Common.Infrastructure; -// using Common.Infrastructure.Controllers; -// using Common.Infrastructure.Controllers.Attributes; -// using FeatureToggle; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Infrastructure.Version; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.Extensions.Logging; -// using RestSharp; -// -// [ApiVisible] -// [ApiVersion(Version.Current)] -// [AdvertiseApiVersions(Version.CurrentAdvertised)] -// [ApiRoute("")] -// [ApiExplorerSettings(GroupName = "CRAB Subadressen")] -// [ApiOrder(ApiOrder.CrabSubaddress)] -// [ApiProduces] -// public partial class CrabSubaddressController : RegistryApiController -// { -// protected override string NotFoundExceptionMessage => "Onbestaand adres."; -// protected override string GoneExceptionMessage => "Verwijderd adres."; -// -// public CrabSubaddressController( -// IHttpContextAccessor httpContextAccessor, -// [KeyFilter(RegistryKeys.Address)] IRestClient restClient, -// [KeyFilter(RegistryKeys.Address)] IFeatureToggle cacheToggle, -// ConnectionMultiplexerProvider redis, -// ILogger logger) -// : base(httpContextAccessor, redis, logger, restClient, cacheToggle) { } -// -// private static ContentFormat DetermineFormat(ActionContext context) -// => ContentFormat.For(EndpointType.Legacy, context); -// } -// } diff --git a/src/Public.Api/Feeds/Addresses.cs b/src/Public.Api/Feeds/Addresses.cs deleted file mode 100644 index 79a5699ef..000000000 --- a/src/Public.Api/Feeds/Addresses.cs +++ /dev/null @@ -1,90 +0,0 @@ -// namespace Public.Api.Feeds -// { -// using System; -// using System.Threading; -// using System.Threading.Tasks; -// using AddressRegistry.Api.Legacy.Address.Sync; -// using Autofac.Features.Indexed; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class FeedController -// { -// /// -// /// Vraag een lijst met wijzigingen op adressen op in het XML of Atom formaat (v1). -// /// -// /// -// /// -// /// -// /// Eventidentificator (volgnummer) vanaf waar de feed moet gestart of hernomen worden (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Keuze welke info in het -gedeelte van de output moet zitten: "event", "object", "event,object" (optioneel). -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met wijzigingen op adressen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als er geen API key is meegegeven. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("adressen", Name = nameof(GetAddressesFeed))] -// [ProducesResponseType(typeof(string), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status401Unauthorized)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(AddressSyndicationResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status401Unauthorized, typeof(UnauthorizedResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultFeedCaching, NoStore = true, NoTransform = true)] -// public async Task GetAddressesFeed( -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IIndex> restClients, -// [FromServices] IOptions responseOptions, -// [FromQuery] long? from, -// [FromQuery] int? limit, -// [FromQuery] string embed, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendSyndicationRequest( -// "adressen", -// from, -// limit, -// embed); -// -// var value = await GetFromBackendAsync( -// restClients[RegistryKeys.Address].Value, -// BackendRequest, -// contentFormat.ContentType, -// HandleBadRequest, -// cancellationToken); -// -// return BackendListResponseResult.Create( -// value, -// Request.Query, -// responseOptions.Value.Syndication.NextUri, -// responseOptions.Value.Syndication.GetNextUri(actionContextAccessor)); -// } -// } -// } diff --git a/src/Public.Api/Feeds/Buildings.cs b/src/Public.Api/Feeds/Buildings.cs deleted file mode 100644 index c8517d18b..000000000 --- a/src/Public.Api/Feeds/Buildings.cs +++ /dev/null @@ -1,90 +0,0 @@ -// namespace Public.Api.Feeds -// { -// using System; -// using System.Threading; -// using System.Threading.Tasks; -// using Autofac.Features.Indexed; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using BuildingRegistry.Api.Legacy.Building.Sync; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class FeedController -// { -// /// -// /// Vraag een lijst met wijzigingen op gebouwen en gebouweenheden op in het XML of Atom formaat (v1). -// /// -// /// -// /// -// /// -// /// Eventidentificator (volgnummer) vanaf waar de feed moet gestart of hernomen worden (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Keuze welke info in het -gedeelte van de output moet zitten: "event", "object", "event,object" (optioneel). -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met wijzigingen op gebouwen en gebouweenheden gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als er geen API key is meegegeven. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("gebouwen", Name = nameof(GetBuildingsFeed))] -// [ProducesResponseType(typeof(string), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status401Unauthorized)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(BuildingSyndicationResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status401Unauthorized, typeof(UnauthorizedResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultFeedCaching, NoStore = true, NoTransform = true)] -// public async Task GetBuildingsFeed( -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IIndex> restClients, -// [FromServices] IOptions responseOptions, -// [FromQuery] long? from, -// [FromQuery] int? limit, -// [FromQuery] string embed, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendSyndicationRequest( -// "gebouwen", -// from, -// limit, -// embed); -// -// var value = await GetFromBackendAsync( -// restClients[RegistryKeys.Building].Value, -// BackendRequest, -// contentFormat.ContentType, -// HandleBadRequest, -// cancellationToken); -// -// return BackendListResponseResult.Create( -// value, -// Request.Query, -// responseOptions.Value.Syndication.NextUri, -// responseOptions.Value.Syndication.GetNextUri(actionContextAccessor)); -// } -// } -// } diff --git a/src/Public.Api/Feeds/FeedControllerCommon.cs b/src/Public.Api/Feeds/FeedControllerCommon.cs deleted file mode 100755 index 34d678d0e..000000000 --- a/src/Public.Api/Feeds/FeedControllerCommon.cs +++ /dev/null @@ -1,66 +0,0 @@ -// namespace Public.Api.Feeds -// { -// using System.Net; -// using Be.Vlaanderen.Basisregisters.Api; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.Api.Search.Filtering; -// using Common.Infrastructure; -// using Common.Infrastructure.Controllers; -// using Common.Infrastructure.Controllers.Attributes; -// using Infrastructure.Swagger; -// using Infrastructure.Version; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.Extensions.Logging; -// using RestSharp; -// -// [ApiVisible] -// [ApiVersion(Version.Current)] -// [AdvertiseApiVersions(Version.CurrentAdvertised)] -// [ApiRoute("feeds")] -// [ApiExplorerSettings(GroupName = FeedsGroupName)] -// [ApiOrder(ApiOrder.Feeds)] -// [ApiProduces(EndpointType.Sync)] -// [ApiKeyAuth("Sync")] -// public partial class FeedController : ApiController -// { -// public const string FeedsGroupName = "Feeds"; -// -// protected const int DefaultFeedCaching = 0; -// private const int NoPaging = 0; -// -// public FeedController( -// IHttpContextAccessor httpContextAccessor, -// ConnectionMultiplexerProvider redis, -// ILogger logger) -// : base(httpContextAccessor, redis, logger) { } -// -// private static ContentFormat DetermineFormat(ActionContext context) -// => ContentFormat.For(EndpointType.Sync, context); -// -// private static RestRequest CreateBackendSyndicationRequest( -// string resourcename, -// long? from, -// int? limit, -// SyncEmbedValue embed) -// => new RestRequest($"{resourcename}/sync") -// .AddPagination(NoPaging, limit) -// .AddFiltering(new -// { -// position = from ?? 0, -// embed = embed.ToString() -// }); -// -// protected void HandleBadRequest(HttpStatusCode statusCode) -// { -// switch (statusCode) -// { -// case HttpStatusCode.NotAcceptable: -// throw new ApiException("Ongeldig formaat.", StatusCodes.Status406NotAcceptable); -// -// case HttpStatusCode.BadRequest: -// throw new ApiException("Ongeldige vraag.", StatusCodes.Status400BadRequest); -// } -// } -// } -// } diff --git a/src/Public.Api/Feeds/Streetnames.cs b/src/Public.Api/Feeds/Streetnames.cs deleted file mode 100644 index 9983cb30b..000000000 --- a/src/Public.Api/Feeds/Streetnames.cs +++ /dev/null @@ -1,90 +0,0 @@ -// namespace Public.Api.Feeds -// { -// using Autofac.Features.Indexed; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using Swashbuckle.AspNetCore.Filters; -// using System; -// using System.Threading; -// using System.Threading.Tasks; -// using StreetNameRegistry.Api.Legacy.StreetName.Sync; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class FeedController -// { -// /// -// /// Vraag een lijst met wijzigingen op straatnamen op in het XML of Atom formaat (v1). -// /// -// /// -// /// -// /// -// /// Eventidentificator (volgnummer) vanaf waar de feed moet gestart of hernomen worden (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Keuze welke info in het -gedeelte van de output moet zitten: "event", "object", "event,object" (optioneel). -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met wijzigingen op straatnamen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als er geen API key is meegegeven. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("straatnamen", Name = nameof(GetStreetNamesFeed))] -// [ProducesResponseType(typeof(string), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status401Unauthorized)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(StreetNameSyndicationResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status401Unauthorized, typeof(UnauthorizedResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultFeedCaching, NoStore = true, NoTransform = true)] -// public async Task GetStreetNamesFeed( -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IIndex> restClients, -// [FromServices] IOptions responseOptions, -// [FromQuery] long? from, -// [FromQuery] int? limit, -// [FromQuery] string embed, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendSyndicationRequest( -// "straatnamen", -// from, -// limit, -// embed); -// -// var value = await GetFromBackendAsync( -// restClients[RegistryKeys.StreetName].Value, -// BackendRequest, -// contentFormat.ContentType, -// HandleBadRequest, -// cancellationToken); -// -// return BackendListResponseResult.Create( -// value, -// Request.Query, -// responseOptions.Value.Syndication.NextUri, -// responseOptions.Value.Syndication.GetNextUri(actionContextAccessor)); -// } -// } -// } diff --git a/src/Public.Api/Feeds/SyndicationController.cs b/src/Public.Api/Feeds/SyndicationController.cs deleted file mode 100644 index b07ea7393..000000000 --- a/src/Public.Api/Feeds/SyndicationController.cs +++ /dev/null @@ -1,29 +0,0 @@ -// namespace Public.Api.Feeds -// { -// using System.Threading; -// using Microsoft.AspNetCore.Mvc; -// -// [ApiVersionNeutral] -// [Route("syndication/feed/")] -// [ApiExplorerSettings(IgnoreApi = true)] -// public class SyndicationController : ControllerBase -// { -// [HttpGet("municipality")] -// public IActionResult GetMunicipality(CancellationToken cancellationToken) => new RedirectResult("/v1/feeds/gemeenten"); -// -// [HttpGet("postal")] -// public IActionResult GetPostal(CancellationToken cancellationToken) => new RedirectResult("/v1/feeds/postinfo"); -// -// [HttpGet("streetname")] -// public IActionResult GetStreetName(CancellationToken cancellationToken) => new RedirectResult("/v1/feeds/straatnamen"); -// -// [HttpGet("address")] -// public IActionResult GetAddress(CancellationToken cancellationToken) => new RedirectResult("/v1/feeds/adressen"); -// -// [HttpGet("parcel")] -// public IActionResult GetParcel(CancellationToken cancellationToken) => new RedirectResult("/v1/feeds/percelen"); -// -// [HttpGet("building")] -// public IActionResult GetBuilding(CancellationToken cancellationToken) => new RedirectResult("/v1/feeds/gebouwen"); -// } -// } diff --git a/src/Public.Api/Feeds/V2/Addresses.cs b/src/Public.Api/Feeds/V2/Addresses.cs index 1068943ab..c7f4e6109 100644 --- a/src/Public.Api/Feeds/V2/Addresses.cs +++ b/src/Public.Api/Feeds/V2/Addresses.cs @@ -3,7 +3,7 @@ namespace Public.Api.Feeds.V2 using System; using System.Threading; using System.Threading.Tasks; - using AddressRegistry.Api.Legacy.Address.Sync; + using AddressRegistry.Api.Oslo.Address.Sync; using Autofac.Features.Indexed; using Be.Vlaanderen.Basisregisters.Api.Exceptions; using Common.Infrastructure; @@ -58,7 +58,7 @@ public partial class FeedV2Controller public async Task GetAddressesFeedV2( [FromServices] IActionContextAccessor actionContextAccessor, [FromServices] IIndex> restClients, - [FromServices] IOptions responseOptions, + [FromServices] IOptions responseOptions, [FromQuery] long? from, [FromQuery] int? limit, [FromQuery] string embed, @@ -74,7 +74,7 @@ RestRequest BackendRequest() => CreateBackendSyndicationRequest( embed); var value = await GetFromBackendAsync( - restClients[RegistryKeys.Address].Value, + restClients[RegistryKeys.AddressV2].Value, BackendRequest, contentFormat.ContentType, HandleBadRequest, diff --git a/src/Public.Api/Feeds/V2/Buildings.cs b/src/Public.Api/Feeds/V2/Buildings.cs index a8f063b14..d7cb4c55e 100644 --- a/src/Public.Api/Feeds/V2/Buildings.cs +++ b/src/Public.Api/Feeds/V2/Buildings.cs @@ -5,7 +5,7 @@ namespace Public.Api.Feeds.V2 using System.Threading.Tasks; using Autofac.Features.Indexed; using Be.Vlaanderen.Basisregisters.Api.Exceptions; - using BuildingRegistry.Api.Legacy.Building.Sync; + using BuildingRegistry.Api.Oslo.Building.Sync; using Common.Infrastructure; using Infrastructure; using Infrastructure.Configuration; @@ -58,7 +58,7 @@ public partial class FeedV2Controller public async Task GetBuildingsFeedV2( [FromServices] IActionContextAccessor actionContextAccessor, [FromServices] IIndex> restClients, - [FromServices] IOptions responseOptions, + [FromServices] IOptions responseOptions, [FromQuery] long? from, [FromQuery] int? limit, [FromQuery] string embed, @@ -74,7 +74,7 @@ RestRequest BackendRequest() => CreateBackendSyndicationRequest( embed); var value = await GetFromBackendAsync( - restClients[RegistryKeys.Building].Value, + restClients[RegistryKeys.BuildingV2].Value, BackendRequest, contentFormat.ContentType, HandleBadRequest, diff --git a/src/Public.Api/Feeds/V2/Streetnames.cs b/src/Public.Api/Feeds/V2/Streetnames.cs index 54058e1ce..c1e189e0c 100644 --- a/src/Public.Api/Feeds/V2/Streetnames.cs +++ b/src/Public.Api/Feeds/V2/Streetnames.cs @@ -14,7 +14,7 @@ namespace Public.Api.Feeds.V2 using Microsoft.AspNetCore.Mvc.Infrastructure; using Microsoft.Extensions.Options; using RestSharp; - using StreetNameRegistry.Api.Legacy.StreetName.Sync; + using StreetNameRegistry.Api.Oslo.StreetName.Sync; using Swashbuckle.AspNetCore.Filters; using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; @@ -58,7 +58,7 @@ public partial class FeedV2Controller public async Task GetStreetNamesFeedV2( [FromServices] IActionContextAccessor actionContextAccessor, [FromServices] IIndex> restClients, - [FromServices] IOptions responseOptions, + [FromServices] IOptions responseOptions, [FromQuery] long? from, [FromQuery] int? limit, [FromQuery] string embed, @@ -74,7 +74,7 @@ RestRequest BackendRequest() => CreateBackendSyndicationRequest( embed); var value = await GetFromBackendAsync( - restClients[RegistryKeys.StreetName].Value, + restClients[RegistryKeys.StreetNameV2].Value, BackendRequest, contentFormat.ContentType, HandleBadRequest, diff --git a/src/Public.Api/Infrastructure/Configuration/AddressOptions.cs b/src/Public.Api/Infrastructure/Configuration/AddressOptions.cs deleted file mode 100755 index 5a395f0af..000000000 --- a/src/Public.Api/Infrastructure/Configuration/AddressOptions.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Public.Api.Infrastructure.Configuration -{ - using AddressRegistry.Api.Legacy.Infrastructure.Options; - - public class AddressOptions : ResponseOptions, IRegistryOptions - { - public SyndicationOptions Syndication { get; set; } - } -} diff --git a/src/Public.Api/Infrastructure/Configuration/BuildingOptions.cs b/src/Public.Api/Infrastructure/Configuration/BuildingOptions.cs deleted file mode 100644 index 8a3d3f3c3..000000000 --- a/src/Public.Api/Infrastructure/Configuration/BuildingOptions.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Public.Api.Infrastructure.Configuration -{ - using BuildingRegistry.Api.Legacy.Infrastructure.Options; - - public class BuildingOptions : ResponseOptions, IRegistryOptions - { - public SyndicationOptions Syndication { get; set; } - } -} diff --git a/src/Public.Api/Infrastructure/Configuration/StreetNameOptions.cs b/src/Public.Api/Infrastructure/Configuration/StreetNameOptions.cs deleted file mode 100755 index 68a89ef61..000000000 --- a/src/Public.Api/Infrastructure/Configuration/StreetNameOptions.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Public.Api.Infrastructure.Configuration -{ - using StreetNameRegistry.Api.Legacy.Infrastructure.Options; - - public class StreetNameOptions : ResponseOptions, IRegistryOptions - { - public SyndicationOptions Syndication { get; set; } - } -} diff --git a/src/Public.Api/Infrastructure/ProblemDetailsExceptionMapping/GrbWfsExceptionMapping.cs b/src/Public.Api/Infrastructure/ProblemDetailsExceptionMapping/GrbWfsExceptionMapping.cs deleted file mode 100644 index 77349a074..000000000 --- a/src/Public.Api/Infrastructure/ProblemDetailsExceptionMapping/GrbWfsExceptionMapping.cs +++ /dev/null @@ -1,36 +0,0 @@ -namespace Public.Api.Infrastructure.ProblemDetailsExceptionMapping -{ - using System; - using System.Text.RegularExpressions; - using Be.Vlaanderen.Basisregisters.Api.Exceptions; - using Be.Vlaanderen.Basisregisters.BasicApiProblem; - using BuildingRegistry.Api.Oslo.Infrastructure.ParcelMatching.Wfs; - using Microsoft.AspNetCore.Http; - - public class GrbWfsExceptionMapping : ApiProblemDetailsExceptionMapping - { - public override bool HandlesException(ApiProblemDetailsException exception) - { - const string nameSpacePlaceHolder = "NAMESPACE_WONT_REGEX_ESCAPE"; - var typeUri = ProblemDetails.GetTypeUriFor(nameSpacePlaceHolder); - var typeUriPattern = Regex - .Escape(typeUri) - .Replace(nameSpacePlaceHolder, ".*", StringComparison.InvariantCultureIgnoreCase); - - return new Regex(typeUriPattern).IsMatch(exception?.Details?.ProblemTypeUri ?? string.Empty); - } - - public override ProblemDetails MapException( - HttpContext httpContext, - ApiProblemDetailsException exception, - ProblemDetailsHelper problemDetailsHelper) - => new ProblemDetails - { - HttpStatus = exception.StatusCode, - Title = ProblemDetails.DefaultTitle, - Detail = "Probleem bij het contacteren van de GRB WFS-service.", - ProblemTypeUri = problemDetailsHelper.GetExceptionTypeUriFor(), - ProblemInstanceUri = $"{problemDetailsHelper.GetInstanceBaseUri(httpContext)}/{ProblemDetails.GetProblemNumber()}" - }; - } -} diff --git a/src/Public.Api/Infrastructure/Startup.cs b/src/Public.Api/Infrastructure/Startup.cs index c7260f5ba..23687ee5e 100644 --- a/src/Public.Api/Infrastructure/Startup.cs +++ b/src/Public.Api/Infrastructure/Startup.cs @@ -25,7 +25,6 @@ namespace Public.Api.Infrastructure using Be.Vlaanderen.Basisregisters.GrAr.Provenance; using Be.Vlaanderen.Basisregisters.Utilities; using BuildingRegistry.Api.BackOffice.Abstractions.Building.Responses; - using BuildingRegistry.Api.Legacy.Infrastructure.Options; using Common.Infrastructure; using Common.Infrastructure.Controllers; using Common.Infrastructure.Controllers.Attributes; @@ -49,7 +48,6 @@ namespace Public.Api.Infrastructure using Microsoft.OpenApi.Models; using Modules; using ParcelRegistry.Api.BackOffice.Abstractions.Requests; - using ProblemDetailsExceptionMapping; using ProblemDetailsExceptionMappings; using Redis; using Road.Downloads; @@ -154,13 +152,10 @@ public IServiceProvider ConfigureServices(IServiceCollection services) typeof(Startup).GetTypeInfo().Assembly.GetName().Name, typeof(MunicipalityRegistry.Api.Oslo.Infrastructure.Startup).GetTypeInfo().Assembly.GetName().Name, typeof(PostalRegistry.Api.Oslo.Infrastructure.Startup).GetTypeInfo().Assembly.GetName().Name, - typeof(StreetNameRegistry.Api.Legacy.Infrastructure.Startup).GetTypeInfo().Assembly.GetName().Name, typeof(StreetNameRegistry.Api.Oslo.Infrastructure.Startup).GetTypeInfo().Assembly.GetName().Name, typeof(ProposeStreetNameRequest).GetTypeInfo().Assembly.GetName().Name, - typeof(AddressRegistry.Api.Legacy.Infrastructure.Startup).GetTypeInfo().Assembly.GetName().Name, typeof(AddressRegistry.Api.Oslo.Infrastructure.Startup).GetTypeInfo().Assembly.GetName().Name, typeof(ApproveAddressRequest).GetTypeInfo().Assembly.GetName().Name, - typeof(ResponseOptions).GetTypeInfo().Assembly.GetName().Name, typeof(BuildingRegistry.Api.Oslo.Infrastructure.Options.ResponseOptions).GetTypeInfo().Assembly.GetName().Name, typeof(PlanBuildingResponse).GetTypeInfo().Assembly.GetName().Name, typeof(ParcelRegistry.Api.Oslo.Infrastructure.Startup).GetTypeInfo().Assembly.GetName().Name, @@ -318,11 +313,8 @@ public IServiceProvider ConfigureServices(IServiceCollection services) .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:MunicipalityRegistryV2")) .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:PostalRegistryV2")) - .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:StreetNameRegistry")) .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:StreetNameRegistryV2")) - .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:AddressRegistry")) .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:AddressRegistryV2")) - .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:BuildingRegistry")) .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:BuildingRegistryV2")) .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:ParcelRegistryV2")) .ConfigureRegistryOptions(_configuration.GetSection("ApiConfiguration:SuspiciousCases")) @@ -626,7 +618,6 @@ public void Configure( }, ProblemDetailsExceptionMappers = new List { - new GrbWfsExceptionMapping(), new GoneExceptionMapping(), new NotFoundExceptionMapping(), new PreconditionFailedExceptionMapping(), diff --git a/src/Public.Api/Public.Api.csproj b/src/Public.Api/Public.Api.csproj index dcfa03212..98de5c582 100755 --- a/src/Public.Api/Public.Api.csproj +++ b/src/Public.Api/Public.Api.csproj @@ -18,13 +18,10 @@ - - - diff --git a/src/Public.Api/StreetName/StreetNameController-Count.cs b/src/Public.Api/StreetName/StreetNameController-Count.cs deleted file mode 100644 index 7872720c4..000000000 --- a/src/Public.Api/StreetName/StreetNameController-Count.cs +++ /dev/null @@ -1,78 +0,0 @@ -// namespace Public.Api.StreetName -// { -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using StreetNameRegistry.Api.Legacy.StreetName.Count; -// using StreetNameRegistry.Api.Legacy.StreetName.Query; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class StreetNameController -// { -// /// -// /// Vraag het totaal aantal straatnamen op. -// /// -// /// Filter op de gemeentenaam van de straatnaam (exact) (optioneel). -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van het totaal aantal straatnamen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als er een interne fout is opgetreden. -// [HttpGet("straatnamen/totaal-aantal", Name = nameof(CountStreetNames))] -// [ApiOrder(ApiOrder.StreetName.V1 + 3)] -// [ApiExplorerSettings(IgnoreApi = true)] -// [ProducesResponseType(typeof(TotaalAantalResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(TotalCountResponseExample))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultCountCaching, NoStore = true, NoTransform = true)] -// public async Task CountStreetNames( -// [FromQuery] string gemeentenaam, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendCountRequest(gemeentenaam); -// -// return new BackendResponseResult( -// await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken)); -// } -// -// private static RestRequest CreateBackendCountRequest(string municipalityName) -// { -// var filter = new StreetNameFilter -// { -// MunicipalityName = municipalityName -// }; -// -// return new RestRequest("straatnamen/totaal-aantal") -// .AddFiltering(filter); -// } -// } -// } diff --git a/src/Public.Api/StreetName/StreetNameController-Get.cs b/src/Public.Api/StreetName/StreetNameController-Get.cs deleted file mode 100644 index 10a0a2323..000000000 --- a/src/Public.Api/StreetName/StreetNameController-Get.cs +++ /dev/null @@ -1,87 +0,0 @@ -// namespace Public.Api.StreetName -// { -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.ETag; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using RestSharp; -// using StreetNameRegistry.Api.Legacy.StreetName.Detail; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class StreetNameController -// { -// /// -// /// Vraag een straatnaam op (v1). -// /// -// /// Identificator van de straatnaam. -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de straatnaam gevonden is. -// /// Als de straatnaam niet gewijzigd is ten opzicht van uw verzoek. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als de straatnaam niet gevonden kan worden. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als de straatnaam verwijderd is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("straatnamen/{objectId}", Name = nameof(GetStreetName))] -// [ApiOrder(ApiOrder.StreetName.V1 + 1)] -// [ProducesResponseType(typeof(StreetNameResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(void), StatusCodes.Status304NotModified)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), -// StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status410Gone)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", -// "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(StreetNameResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status304NotModified, typeof(NotModifiedResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status404NotFound, typeof(StreetNameNotFoundResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status410Gone, typeof(StreetNameGoneResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheExpiration(MaxAge = DefaultDetailCaching)] -// public async Task GetStreetName( -// [FromRoute] int objectId, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] -// string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// -// RestRequest BackendRequest() => CreateBackendDetailRequest(objectId); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return new BackendResponseResult(value, BackendResponseResultOptions.ForRead()); -// } -// -// private static RestRequest CreateBackendDetailRequest(int streetNameId) -// { -// var request = new RestRequest("straatnamen/{streetNameId}"); -// request.AddParameter("streetNameId", streetNameId, ParameterType.UrlSegment); -// return request; -// } -// } -// } diff --git a/src/Public.Api/StreetName/StreetNameController-List.cs b/src/Public.Api/StreetName/StreetNameController-List.cs deleted file mode 100644 index 720b92fe9..000000000 --- a/src/Public.Api/StreetName/StreetNameController-List.cs +++ /dev/null @@ -1,146 +0,0 @@ -// namespace Public.Api.StreetName -// { -// using System; -// using System.Collections.Generic; -// using System.Threading; -// using System.Threading.Tasks; -// using Be.Vlaanderen.Basisregisters.Api.Exceptions; -// using Be.Vlaanderen.Basisregisters.GrAr.Legacy; -// using Common.Infrastructure; -// using Infrastructure; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Marvin.Cache.Headers; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.AspNetCore.Mvc.Infrastructure; -// using Microsoft.Extensions.Options; -// using RestSharp; -// using StreetNameRegistry.Api.Legacy.StreetName.List; -// using StreetNameRegistry.Api.Legacy.StreetName.Query; -// using Swashbuckle.AspNetCore.Filters; -// using ProblemDetails = Be.Vlaanderen.Basisregisters.BasicApiProblem.ProblemDetails; -// -// public partial class StreetNameController -// { -// /// -// /// Vraag een lijst met straatnamen op (v1). -// /// -// /// Nulgebaseerde index van de eerste instantie die teruggegeven wordt. De offset is echter beperkt tot 1000000, indien meer data dient ingelezen te worden is het gebruik van extra filters aangewezen op de service of verwijzen we naar de downloadproducten van het gebouwen- en adressenregister (optioneel). -// /// Aantal instanties dat teruggegeven wordt. Maximaal kunnen er 500 worden teruggegeven. Wanneer limit niet wordt meegegeven dan default 100 instanties (optioneel). -// /// Optionele sortering van het resultaat (id, naam-nl, naam-fr, naam-de, naam-en). -// /// Filter op de naam van de straatnaam (exact) (optioneel). -// /// Filter op de gemeentenaam van de straatnaam (exact) (optioneel). -// /// Filter op de NIS-code van de straatnaam (exact) (optioneel). -// /// -// /// Filter op de status van de straatnaam (exact) (optioneel).
-// /// `"voorgesteld"` `"inGebruik"` `"gehistoreerd"` `"afgekeurd"` -// /// -// /// Filter op het gewest van de straatnaam (exact) (optioneel).
-// /// `"vlaams"` -// /// -// /// -// /// -// /// If-None-Match header met ETag van een vorig verzoek (optioneel). -// /// -// /// Als de opvraging van een lijst met straatnamen gelukt is. -// /// Als uw verzoek foutieve data bevat. -// /// Als u niet beschikt over de correcte rechten om deze actie uit te voeren. -// /// Als het gevraagde formaat niet beschikbaar is. -// /// Als het aantal requests per seconde de limiet overschreven heeft. -// /// Als er een interne fout is opgetreden. -// [HttpGet("straatnamen", Name = nameof(ListStreetNames))] -// [ApiOrder(ApiOrder.StreetName.V1 + 2)] -// [ProducesResponseType(typeof(StreetNameListResponse), StatusCodes.Status200OK)] -// [ProducesResponseType(typeof(Be.Vlaanderen.Basisregisters.BasicApiProblem.ValidationProblemDetails), StatusCodes.Status400BadRequest)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status403Forbidden)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status429TooManyRequests)] -// [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status500InternalServerError)] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "ETag", "string", "De ETag van de response.")] -// [SwaggerResponseHeader(StatusCodes.Status200OK, "x-correlation-id", "string", "Correlatie identificator van de response.")] -// [SwaggerResponseExample(StatusCodes.Status200OK, typeof(StreetNameListResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status400BadRequest, typeof(BadRequestResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status403Forbidden, typeof(ForbiddenResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status429TooManyRequests, typeof(TooManyRequestsResponseExamples))] -// [SwaggerResponseExample(StatusCodes.Status500InternalServerError, typeof(InternalServerErrorResponseExamples))] -// [HttpCacheValidation(NoCache = true, MustRevalidate = true, ProxyRevalidate = true)] -// [HttpCacheExpiration(CacheLocation = CacheLocation.Private, MaxAge = DefaultListCaching, NoStore = true, NoTransform = true)] -// public async Task ListStreetNames( -// [FromQuery] int? offset, -// [FromQuery] int? limit, -// [FromQuery] string sort, -// [FromQuery] string straatnaam, -// [FromQuery] string gemeentenaam, -// [FromQuery] string niscode, -// [FromQuery] string status, -// [FromQuery] string gewest, -// [FromServices] IActionContextAccessor actionContextAccessor, -// [FromServices] IOptions responseOptions, -// [FromHeader(Name = HeaderNames.IfNoneMatch)] string ifNoneMatch, -// CancellationToken cancellationToken = default) -// { -// var contentFormat = DetermineFormat(actionContextAccessor.ActionContext); -// const Taal taal = Taal.NL; -// -// RestRequest BackendRequest() => CreateBackendListRequest( -// offset, -// limit, -// taal, -// sort, -// straatnaam, -// gemeentenaam, -// niscode, -// status, -// gewest); -// -// var value = await GetFromBackendAsync( -// contentFormat.ContentType, -// BackendRequest, -// CreateDefaultHandleBadRequest(), -// cancellationToken); -// -// return BackendListResponseResult.Create(value, Request.Query, responseOptions.Value.VolgendeUrl); -// } -// -// private static RestRequest CreateBackendListRequest( -// int? offset, -// int? limit, -// Taal language, -// string sort, -// string streetNameName, -// string municipalityName, -// string nisCode, -// string status, -// string? gewest) -// { -// var filter = new StreetNameFilter -// { -// StreetNameName = streetNameName, -// MunicipalityName = municipalityName, -// NisCode = nisCode, -// Status = status, -// IsInFlemishRegion = gewest?.Equals("vlaams", StringComparison.OrdinalIgnoreCase) -// }; -// -// // id, naam-nl, naam-fr, naam-de, naam-en -// var sortMapping = new Dictionary -// { -// { "Id", "PersistentLocalId" }, -// { "NaamNl", "NameDutch" }, -// { "Naam-Nl", "NameDutch" }, -// { "NaamEn", "NameEnglish" }, -// { "Naam-En", "NameEnglish" }, -// { "NaamFr", "NameFrench" }, -// { "Naam-Fr", "NameFrench" }, -// { "NaamDe", "NameGerman" }, -// { "Naam-De", "NameGerman" }, -// }; -// -// return new RestRequest("straatnamen?taal={language}") -// .AddParameter("language", language, ParameterType.UrlSegment) -// .AddPagination(offset, limit) -// .AddFiltering(filter) -// .AddSorting(sort, sortMapping); -// } -// } -// } diff --git a/src/Public.Api/StreetName/StreetNameController.cs b/src/Public.Api/StreetName/StreetNameController.cs deleted file mode 100755 index 0c3ab8194..000000000 --- a/src/Public.Api/StreetName/StreetNameController.cs +++ /dev/null @@ -1,39 +0,0 @@ -// namespace Public.Api.StreetName -// { -// using Autofac.Features.AttributeFilters; -// using Be.Vlaanderen.Basisregisters.Api; -// using Common.Infrastructure; -// using Common.Infrastructure.Controllers; -// using Common.Infrastructure.Controllers.Attributes; -// using FeatureToggle; -// using Infrastructure.Configuration; -// using Infrastructure.Swagger; -// using Infrastructure.Version; -// using Microsoft.AspNetCore.Http; -// using Microsoft.AspNetCore.Mvc; -// using Microsoft.Extensions.Logging; -// using RestSharp; -// -// [ApiVisible] -// [ApiVersion(Version.Current)] -// [AdvertiseApiVersions(Version.CurrentAdvertised)] -// [ApiRoute("")] -// [ApiExplorerSettings(GroupName = "Straatnamen")] -// [ApiProduces] -// public partial class StreetNameController : RegistryApiController -// { -// protected override string NotFoundExceptionMessage => "Onbestaande straatnaam."; -// protected override string GoneExceptionMessage => "Verwijderde straatnaam."; -// -// public StreetNameController( -// IHttpContextAccessor httpContextAccessor, -// [KeyFilter(RegistryKeys.StreetName)] IRestClient restClient, -// [KeyFilter(RegistryKeys.StreetName)] IFeatureToggle cacheToggle, -// ConnectionMultiplexerProvider redis, -// ILogger logger) -// : base(httpContextAccessor, redis, logger, restClient, cacheToggle) { } -// -// private static ContentFormat DetermineFormat(ActionContext context) -// => ContentFormat.For(EndpointType.Legacy, context); -// } -// } diff --git a/src/Public.Api/paket.references b/src/Public.Api/paket.references index 2b5c69971..070eff3c4 100755 --- a/src/Public.Api/paket.references +++ b/src/Public.Api/paket.references @@ -4,13 +4,10 @@ Be.Vlaanderen.Basisregisters.AggregateSource.ExplicitRouting Be.Vlaanderen.Basisregisters.MunicipalityRegistry.Api.Oslo Be.Vlaanderen.Basisregisters.PostalRegistry.Api.Oslo -Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.Legacy Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.Oslo Be.Vlaanderen.Basisregisters.StreetNameRegistry.Api.BackOffice.Abstractions -Be.Vlaanderen.Basisregisters.AddressRegistry.Api.Legacy Be.Vlaanderen.Basisregisters.AddressRegistry.Api.Oslo Be.Vlaanderen.Basisregisters.AddressRegistry.Api.BackOffice.Abstractions -Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.Legacy Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.Oslo Be.Vlaanderen.Basisregisters.BuildingRegistry.Api.BackOffice.Abstractions Be.Vlaanderen.Basisregisters.ParcelRegistry.Api.Oslo