def response()

in app/prism/Http.scala [13:45]


  def response(
      response: Future[WSResponse],
      friendlyMessage: String,
      detail: String
  )(implicit ec: ExecutionContext): Attempt[WSResponse] = {
    val handleStatusCode: Future[Either[AMIableErrors, WSResponse]] = {
      response.map { response =>
        response.status match {
          case status if status < 400 =>
            Right(response)
          case status =>
            logger.warn(s"Status code $status: $detail")
            Left(
              AMIableErrors(
                AMIableError(s"$status: $detail", friendlyMessage, status)
              )
            )
        }
      }
    }
    Attempt.fromFuture(handleStatusCode) { case e: Exception =>
      logger.error(s"Request failed: $detail", e)
      Left(
        AMIableErrors(
          AMIableError(
            s"Request failed: $detail, ${e.getMessage}",
            friendlyMessage,
            500
          )
        )
      )
    }
  }