override def read()

in huawei-push-kit/src/main/scala/org/apache/pekko/stream/connectors/huawei/pushkit/impl/PushKitJsonSupport.scala [115:174]


    override def read(json: JsValue): AndroidNotification = {
      val map = json.asJsObject
      AndroidNotification(
        title = if (map.fields.contains("title")) Option(map.fields("title").toString) else None,
        body = if (map.fields.contains("body")) Option(map.fields("body").toString) else None,
        icon = if (map.fields.contains("icon")) Option(map.fields("icon").toString) else None,
        color = if (map.fields.contains("color")) Option(map.fields("color").toString) else None,
        sound = if (map.fields.contains("sound")) Option(map.fields("sound").toString) else None,
        default_sound =
          if (map.fields.contains("default_sound")) Option(map.fields("default_sound").convertTo[Boolean]) else None,
        tag = if (map.fields.contains("tag")) Option(map.fields("tag").toString) else None,
        click_action =
          if (map.fields.contains("click_action")) Option(map.fields("click_action").convertTo[ClickAction]) else None,
        body_loc_key = if (map.fields.contains("body_loc_key")) Option(map.fields("body_loc_key").toString) else None,
        body_loc_args =
          if (map.fields.contains("body_loc_args")) Option(map.fields("body_loc_args").convertTo[Seq[String]])
          else None,
        title_loc_key =
          if (map.fields.contains("title_loc_key")) Option(map.fields("title_loc_key").toString) else None,
        title_loc_args =
          if (map.fields.contains("title_loc_args")) Option(map.fields("title_loc_args").convertTo[Seq[String]])
          else None,
        multi_lang_key =
          if (map.fields.contains("multi_lang_key")) Option(map.fields("multi_lang_key").toString) else None,
        channel_id = if (map.fields.contains("channel_id")) Option(map.fields("channel_id").toString) else None,
        notify_summary =
          if (map.fields.contains("notify_summary")) Option(map.fields("notify_summary").toString) else None,
        image = if (map.fields.contains("image")) Option(map.fields("image").toString) else None,
        style = if (map.fields.contains("style")) Option(map.fields("style").convertTo[Int]) else None,
        big_title = if (map.fields.contains("big_title")) Option(map.fields("big_title").toString()) else None,
        big_body = if (map.fields.contains("big_body")) Option(map.fields("big_body").toString()) else None,
        auto_clear = if (map.fields.contains("auto_clear")) Option(map.fields("auto_clear").convertTo[Int]) else None,
        notify_id = if (map.fields.contains("notify_id")) Option(map.fields("notify_id").convertTo[Int]) else None,
        group = if (map.fields.contains("group")) Option(map.fields("group").toString()) else None,
        badge = if (map.fields.contains("badge")) Option(map.fields("badge").convertTo[BadgeNotification]) else None,
        ticker = if (map.fields.contains("ticker")) Option(map.fields("ticker").toString()) else None,
        when = if (map.fields.contains("when")) Option(map.fields("when").toString()) else None,
        importance = if (map.fields.contains("importance")) Option(map.fields("importance").toString()) else None,
        use_default_vibrate =
          if (map.fields.contains("use_default_vibrate")) Option(map.fields("use_default_vibrate").convertTo[Boolean])
          else None,
        use_default_light =
          if (map.fields.contains("use_default_light")) Option(map.fields("use_default_light").convertTo[Boolean])
          else None,
        vibrate_config =
          if (map.fields.contains("vibrate_config")) Option(map.fields("vibrate_config").convertTo[Seq[String]])
          else None,
        visibility = if (map.fields.contains("visibility")) Option(map.fields("visibility").toString()) else None,
        light_settings =
          if (map.fields.contains("light_settings")) Option(map.fields("light_settings").convertTo[LightSettings])
          else None,
        foreground_show =
          if (map.fields.contains("foreground_show")) Option(map.fields("foreground_show").convertTo[Boolean])
          else None,
        profile_id = if (map.fields.contains("profile_id")) Option(map.fields("profile_id").toString()) else None,
        inbox_content =
          if (map.fields.contains("inbox_content")) Option(map.fields("inbox_content").convertTo[Seq[String]])
          else None,
        buttons = if (map.fields.contains("buttons")) Option(map.fields("buttons").convertTo[Seq[Button]]) else None)
    }