errors: add BadRequestDetails

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
This commit is contained in:
Adphi 2023-03-08 11:44:25 +01:00
parent e70369a902
commit 19787f85ca
Signed by: adphi
GPG Key ID: 46BE4062DB2397FF
1 changed files with 20 additions and 0 deletions

20
errors/details.go Normal file
View File

@ -0,0 +1,20 @@
package errors
import (
"google.golang.org/genproto/googleapis/rpc/errdetails"
)
// BadRequestDetails returns an error details for an invalid argument.
// fd is a list of field / description pairs.
func BadRequestDetails(fd ...string) *errdetails.BadRequest {
var fieldViolations []*errdetails.BadRequest_FieldViolation
for i := 0; i < len(fd); i += 2 {
fieldViolations = append(fieldViolations, &errdetails.BadRequest_FieldViolation{
Field: fd[i],
Description: fd[i+1],
})
}
return &errdetails.BadRequest{
FieldViolations: fieldViolations,
}
}