in formstack-baton-requests/src/main/scala/com/gu/identity/formstackbatonrequests/sar/FormstackPerformSarHandler.scala [30:40]
override def handle(request: SarRequest, context: Context): Either[Throwable, SarResponse] =
request match {
case r: SarPerformRequest =>
initiateSar(r) match {
case Right(_) => Right(SarPerformResponse(Completed, r.initiationReference, r.subjectEmail))
case Left(err) =>
s3Client.writeFailedResults(r.initiationReference, err.getMessage, SAR, config)
.flatMap(_ => Left(err))
}
case _ => Left(new Exception("Unable to retrieve email and initiation reference from request"))
}