Record Class ProblemDetail
java.lang.Object
java.lang.Record
br.com.xadm.comum.web.ProblemDetail
- Record Components:
type- URI do tipo do problema (about:blankpor padrão).title- resumo legível do tipo de erro (ex.:Conflict).status- código HTTP (ex.:409).detail- mensagem específica desta ocorrência.code- código estável legível por máquina (ex.:CONFLICT,invalid_token).
public record ProblemDetail(String type, String title, int status, String detail, String code)
extends Record
Corpo de erro no formato RFC 7807 / 9457 (
application/problem+json) — o padrão
da casa para erros de API. Substitui o envelope {message, _links, _embedded} do
HateoasErrorResponseProcessor default do Micronaut: apoia-se no padrão IETF,
interoperável e tooling-friendly.
Campos 7807: type (URI; about:blank quando não há tipo específico),
title (resumo legível do status), status (código HTTP), detail
(mensagem específica). O code é uma extensão (membro custom permitido pelo 7807)
com o código estável legível por máquina (ex.: CONFLICT, invalid_token).
Serializa via micronaut-serde (serde build-time): o @Serdeable habilita o
serializer gerado em tempo de compilação — gerado dentro do jar desta lib.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionProblemDetail(String type, String title, int status, String detail, String code) Creates an instance of aProblemDetailrecord class. -
Method Summary
Modifier and TypeMethodDescriptioncode()Returns the value of thecoderecord component.detail()Returns the value of thedetailrecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.static ProblemDetailConstrói umProblemDetaila partir do status, do código estável e do detalhe.intstatus()Returns the value of thestatusrecord component.title()Returns the value of thetitlerecord component.final StringtoString()Returns a string representation of this record class.type()Returns the value of thetyperecord component.
-
Field Details
-
CONTENT_TYPE
-
-
Constructor Details
-
ProblemDetail
Creates an instance of aProblemDetailrecord class.
-
-
Method Details
-
of
Constrói umProblemDetaila partir do status, do código estável e do detalhe.- Parameters:
status- status HTTP.code- código estável legível por máquina.detail- mensagem específica.- Returns:
- o problem-detail montado (
type=about:blank,title=razão do status).
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with thecomparemethod from their corresponding wrapper classes. -
type
-
title
-
status
-
detail
-
code
-