private def getItemArrayFromJsValue()

in associated-press/app/model/FeedResponse.scala [27:49]


  private def getItemArrayFromJsValue(jsValue: JsValue): Array[ImageItem] = {
    jsValue match {
      case jsArray: JsArray =>
        jsArray.value.toArray
          .filter(item =>
            (item \ "item" \ "type").as[String] == "picture" &&
              (item \ "item" \ "altids" \ "itemid").toOption.isDefined &&
              (item \ "item" \ "renditions" \ "main" \ "originalfilename").toOption.isDefined &&
              (item \ "item" \ "renditions" \ "main" \ "href").toOption.isDefined
          )
          .map(item =>
            ImageItem(
              contentId = (item \ "item" \ "altids" \ "itemid").as[String],
              fileName =
                (item \ "item" \ "renditions" \ "main" \ "originalfilename")
                  .as[String],
              downloadLink =
                (item \ "item" \ "renditions" \ "main" \ "href").as[String]
            )
          )
      case _ => Array.empty
    }
  }