in app/com/gu/floodgate/reindex/ReindexService.scala [23:46]
def reindex(
id: String,
environment: String,
dateParameters: DateParameters
)(implicit ec: ExecutionContext): Future[Either[CustomError, RunningJob]] = {
logger.info(s"Reindex requested for content source: $id")
val contentSourceOrError = contentSourceService.getContentSource(id, environment)
val isRunning = isReindexRunning(id, environment)
if (isRunning) {
Future.successful(
Left(
ReindexAlreadyRunning(
"A reindex is already running for this content source. Please try again once it has completed."
)
)
)
} else {
contentSourceOrError match {
case Right(cs) => initiateReindex(contentSource = cs, dateParameters)
case Left(error) => Future.successful(Left(error))
}
}
}