JSON のシリアライゼーション / デシリアライゼーションでは、暗黙的な欠落

データ クライアント ベース ライブラリは、一般的な Scala の case クラスを使用して、 JSON オブジェクトをシリアライズ / デシリアライズします。 この機能をサポートするには、多くの不足しているものをインポートする必要があります。 すべてのグループ化をユニオンファイルに com.here.platform.data.client.base.generated.codecs.JsonSupport行いました。 ライブラリリクエストのケースクラスをシリアライズまたはデシリアライズするために必要なすべての不足分を提供するには、次のようなファイルからすべてをインポートするだけで済みます。

JsonSupport をインポートします
import com.here.platform.data.client.base.generated.codecs.JsonSupport._

これは、 JSON のシリアライゼーション / デシリアライゼーションを使用する簡単なアプリケーションが、 Scala のグローバル実行コンテキストを使用する場合にどのように表示されるかを示しています。 もちろん、必要に応じて独自の実行コンテキストを定義できます。 また、独自のエンコーダー / デコーダーを定義することもできますが、次の例のように、ライブラリに付属のエンコーダー / デコーダーを使用することを強くお勧めします。

シンプルなアプリケーション
import com.here.platform.data.client.base.generated.codecs.JsonSupport._
import com.here.platform.data.client.base.generated.scaladsl.api.metadata.MetadataApi
import com.here.platform.data.client.base.generated.scaladsl.model.metadata.{CatalogVersion, Dependencies}
import com.here.platform.data.client.base.scaladsl.BaseClient

import scala.concurrent.ExecutionContext.Implicits.global

object Test extends App {
  val baseClient = BaseClient()
  val metadataApi = baseClient.of[MetadataApi]

  val catalogHrn1 = ???
  val catalogHrn2 = ???

  val request = Dependencies(Some(Seq(CatalogVersion(catalogHrn1, 1L))))
  val response = metadataApi.compatibleVersions(catalogHrn2, request)

  println(response.toEntity())
}

」に一致する結果は 件です

    」に一致する結果はありません