Published by

Il y a 4 ans -

Temps de lecture 1 minute

Pépite #13 – JSON To Kotlin Class

Dans une application cliente, nous avons très souvent besoin de parser des services JSON en plusieurs classes.

Le plugin Json to Kotlin vous permet de créer des data class plus vite que votre ombre à partir d’un JSON.

Pour l’installer : allez dans les « Paramètres » puis « Plugins » et « Browse Repositories« .

Pour l’utiliser : cliquez sur « Code » puis « Générer » et enfin « Convert Json to Kotlin Class ». Une fenêtre vous permet de spécifier votre Json et votre nom de classe.

Prenons le JSON suivant pour exemple :

{
  "search_key":"guinness",
  "title":"Guinness",
  "synonyms": "Guinness Draught",
  "price": 4.70,
  "quantity": 1,
  "srm":null,
  "tags":["irish_dry_stout","dry_stout","stout"],
  "brewery":
  {
    "key": "guinness",
    "title": "St. James's Gate Brewery / Guinness Brewery"
  },
  "country_description":
  {
    "key":"ie",
    "title":"Irland"
  }
}

Voici le résultat des classes générées :

data class Beer(
    val brewery: Brewery,
    val country_description: CountryDescription,
    val price: Double,
    val quantity: Int,
    val search_key: String,
    val srm: Any,
    val synonyms: String,
    val tags: List<String>,
    val title: String
)

data class Brewery(
    val key: String,
    val title: String
)

data class CountryDescription(
    val key: String,
    val title: String
)

Si un champ contient un espace { "search key": "my beer" } la data class générée contiendra une erreur car une variable ne peut pas avoir d’espace dans le nom.

Bien que cet outil puisse améliorer votre productivité, je regarde les classes générées pour faire des ajustements : supprimer les champs inutiles et respecter la conformité avec le coding style guide de l’équipe.

TADA it’s magic !

Published by

Publié par Alexandre Genet

Alexandre est développeur Android chez Xebia.

Commentaire

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Nous recrutons

Être un Sapient, c'est faire partie d'un groupe de passionnés ; C'est l'opportunité de travailler et de partager avec des pairs parmi les plus talentueux.