All Downloads are FREE. Search and download functionalities are using the official Maven repository.

scala.googleapis.firebase.AnalyticsDetails.scala Maven / Gradle / Ivy

The newest version!
package googleapis.firebase

import io.circe._
import io.circe.syntax._

final case class AnalyticsDetails(
    /** The Analytics Property object associated with the specified `FirebaseProject`. This object contains the details of the Google Analytics property associated with the Project.
      */
    analyticsProperty: Option[AnalyticsProperty] = None,
    /**  - For `AndroidApps` and `IosApps`: a map of `app` to `streamId` for each Firebase App in the specified `FirebaseProject`. Each `app` and `streamId` appears only once. - For `WebApps`: a map of `app` to `streamId` and `measurementId` for each `WebApp` in the specified `FirebaseProject`. Each `app`, `streamId`, and `measurementId` appears only once.
      */
    streamMappings: Option[List[StreamMapping]] = None,
)
object AnalyticsDetails {
  implicit val encoder: Encoder[AnalyticsDetails] = Encoder.instance { x =>
    Json.obj(
      "analyticsProperty" := x.analyticsProperty,
      "streamMappings" := x.streamMappings,
    )
  }
  implicit val decoder: Decoder[AnalyticsDetails] = Decoder.instance { c =>
    for {
      v0 <- c.get[Option[AnalyticsProperty]]("analyticsProperty")
      v1 <- c.get[Option[List[StreamMapping]]]("streamMappings")
    } yield AnalyticsDetails(v0, v1)
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy