in hq/app/aws/s3/S3.scala [15:31]
def getS3Object(s3Client: S3Client, bucket: String, key: String): Attempt[BufferedSource] = {
val request = GetObjectRequest.builder().bucket(bucket).key(key).build()
try {
Attempt.Right {
scala.io.Source
.fromInputStream(s3Client.getObject(request))
}
} catch {
case NonFatal(e) =>
Attempt.Left(FailedAttempt(Failure(
s"Unable to get S3 object for bucket $bucket and key $key",
"Failed to fetch an S3 object",
500,
throwable = Some(e)
)))
}
}