基本的な使い方
JSONに対応するクラスを作るのが基本です。 その場合、以下のものは自動的にマップされます[^1]。
- プリミティブ型およびそのラッパー
- 配列、Collection, List, Set, Map
- String
- Enum
例にあるように、finalがついてても問題ありません。
アダプタ
ValueObjectを使いたい場合などはアダプタを作ります。 アダプタは以下のようにして作ります。
@FromJsonと@ToJsonがついたメソッドを含むアダプタクラスを作る。- 片方はJSONの型(自動的にマップされるもの)、もう片方は変換後の型です。
- メソッドの定義は必要ですが、使わないなら中身は空や例外を出しても構いません。
- アダプタクラスを
Moshi.Builderに追加する。