public override ProblemDetails MapException(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 <GrbWfsException>(), ProblemInstanceUri = $"{problemDetailsHelper.GetInstanceBaseUri()}/{ProblemDetails.GetProblemNumber()}" };
public override bool HandlesException(ApiProblemDetailsException exception) { const string nameSpacePlaceHolder = "NAMESPACE_WONT_REGEX_ESCAPE"; var typeUri = ProblemDetails.GetTypeUriFor <GrbWfsException>(nameSpacePlaceHolder); var typeUriPattern = Regex .Escape(typeUri) .Replace(nameSpacePlaceHolder, ".*", StringComparison.InvariantCultureIgnoreCase); return(new Regex(typeUriPattern).IsMatch(exception?.Details?.ProblemTypeUri ?? string.Empty)); }
public override ProblemDetails MapException(ApiProblemDetailsException exception, ProblemDetailsHelper problemDetailsHelper) { var registryName = ((GoneException)exception).RegistryName; return(new ProblemDetails { ProblemTypeUri = $"urn:be.vlaanderen.basisregisters.api:{registryName}:gone", HttpStatus = StatusCodes.Status410Gone, Title = ProblemDetails.DefaultTitle, Detail = exception?.Message, ProblemInstanceUri = $"{problemDetailsHelper.GetInstanceBaseUri()}/{ProblemDetails.GetProblemNumber()}" }); }
public override ProblemDetails MapException( ApiProblemDetailsException exception, ProblemDetailsHelper problemDetailsHelper) { var registryName = ((PreconditionFailedException)exception).RegistryName; return(new ProblemDetails { HttpStatus = StatusCodes.Status412PreconditionFailed, Title = ProblemDetails.DefaultTitle, Detail = "De If-Match header komt niet overeen met de laatst gekende ETag.", ProblemTypeUri = $"urn:be.vlaanderen.basisregisters.api:{registryName}:precondition-failed", ProblemInstanceUri = $"{problemDetailsHelper.GetInstanceBaseUri()}/{ProblemDetails.GetProblemNumber()}" }); }
public override bool HandlesException(ApiProblemDetailsException exception) => exception.GetType() == typeof(GoneException);
public override bool HandlesException(ApiProblemDetailsException exception) => exception.GetType() == typeof(PreconditionFailedException);