def asAvatar()

in api/src/main/scala/com/gu/adapters/store/Store.scala [40:61]


  def asAvatar(item: Item): Either[Error, Avatar] = {
    val avatarId = item.getString("AvatarId")
    val location = KVLocationFromID(avatarId)

    for {
      secureUrl <- fs.presignedUrl(props.processedBucket, location)
      secureRawUrl <- fs.presignedUrl(props.rawBucket, location)
    } yield {
      Avatar(
        id = avatarId,
        avatarUrl = secureUrl.toString,
        userId = item.getString("UserId"),
        originalFilename = item.getString("OriginalFilename"),
        rawUrl = secureRawUrl.toString,
        status = Status(item.getString("Status")),
        createdAt = ISODateFormatter.parse(item.getString("CreatedAt")),
        lastModified = ISODateFormatter.parse(item.getString("LastModified")),
        isSocial = item.getString("IsSocial").toBoolean,
        isActive = item.getString("IsActive").toBoolean
      )
    }
  }