in formstack-baton-requests/src/main/scala/com/gu/identity/formstackbatonrequests/Handler.scala [22:42]
def handle(request: Req, context: Context): Either[Throwable, Res]
val jsonPrinter: Printer = Printer.spaces2.copy(dropNullValues = true)
private def checkFormstackDataProvider(request: Req): Either[Throwable, Unit] = {
val supportedProviders = List("formstack", "formstackrer")
request match {
case _: SarStatusRequest => Right(())
case _: RerStatusRequest => Right(())
case SarInitiateRequest(_, dataProvider, _) =>
Either.cond(supportedProviders.contains(dataProvider), (), DecodingFailure(s"invalid dataProvider: $dataProvider", List.empty))
case SarPerformRequest(_, _, dataProvider) =>
Either.cond(supportedProviders.contains(dataProvider), (), DecodingFailure(s"invalid dataProvider: $dataProvider", List.empty))
case RerInitiateRequest(_, dataProvider, _) =>
Either.cond(supportedProviders.contains(dataProvider), (), DecodingFailure(s"invalid dataProvider: $dataProvider", List.empty))
case RerPerformRequest(_, _, dataProvider) =>
Either.cond(supportedProviders.contains(dataProvider), (), DecodingFailure(s"invalid dataProvider: $dataProvider", List.empty))
case UpdateDynamoRequest(_, _, _, dataProvider, _, _, _, _, _) =>
Either.cond(supportedProviders.contains(dataProvider), (), DecodingFailure(s"invalid dataProvider: $dataProvider", List.empty))
}
}