Mapper la description d'un champ de type enum dans les API

Mapper la description d'un champ de type enum dans les API
0

Bonjour,

J’ai un Business Object pour lequel je fais un mapping API. Dans ce mapping, j’expose l’un de ses champs qui est de type enum (sitesAcpType ci-dessous).

addObject("access-points", "SitesAccessPoint");
addField("access-points", "identifier", "sitesAcpIdentifier");
addField("access-points", "type", "sitesAcpType")

Le problème est que ce qui est renvoyé lorsqu’on fait un GET est le code de ce champ alors que les clients souhaitent également avoir la description.

Y a-t-il moyen d’exposer la description de l’enum sur un autre mapping en plus de celui du code ?

Dans une approche sans évolution socle tu peux peut ajouter un attribut texte non persistant (et masqué dans la UI) qui se valorise à la volée avec la traduction (dans la langue du user qui fait l’appel) du code de la liste de valeur d’un autre attribut enuméré. Il suffit alors de mapper ce nouvel attribut.

Dans une approche avec évolution socle on pourrait revoir la manière dont sont exposées les valeurs des attributs de type énumérés (ex: truc du genre "monAttributEnum": { "code": "AAA", "value": "Ma traduction de AAA" }). Si on part dans cette direction il faudrait valider ce qui serait dans la ligne du parti vis à vis des normes des APIs Renault.