1 /* 2 * Make.org Core API 3 * Copyright (C) 2020 Make.org 4 * 5 * This program is free software: you can redistribute it and/or modify 6 * it under the terms of the GNU Affero General Public License as 7 * published by the Free Software Foundation, either version 3 of the 8 * License, or (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU Affero General Public License for more details. 14 * 15 * You should have received a copy of the GNU Affero General Public License 16 * along with this program. If not, see <https://www.gnu.org/licenses/>. 17 * 18 */ 19 20 package org.make.api.technical.healthcheck 21 22 import io.confluent.kafka.schemaregistry.client.rest.RestService 23 import org.make.api.extensions.KafkaConfiguration 24 import org.make.api.technical.healthcheck.HealthCheck.Status 25 26 import scala.concurrent.{ExecutionContext, Future} 27 28 class AvroHealthCheck(kafkaConfiguration: KafkaConfiguration) extends HealthCheck { 29 30 override val techno: String = "avro" 31 32 override def healthCheck()(implicit ctx: ExecutionContext): Future[Status] = { 33 Future { 34 val restService = new RestService(kafkaConfiguration.schemaRegistry) 35 if (restService.getAllSubjects().size() > 0) { 36 Status.OK 37 } else { 38 Status.NOK() 39 } 40 } 41 } 42 43 }
| Line | Stmt Id | Pos | Tree | Symbol | Tests | Code |
|---|---|---|---|---|---|---|
| 30 | 43668 | 1135 - 1141 | Literal | <nosymbol> | org.scalatest.testsuite | "avro" |
| 33 | 35824 | 1228 - 1432 | ApplyToImplicitArgs | scala.concurrent.Future.apply | org.scalatest.testsuite | scala.concurrent.Future.apply[org.make.api.technical.healthcheck.HealthCheck.Status]({ val restService: io.confluent.kafka.schemaregistry.client.rest.RestService = new io.confluent.kafka.schemaregistry.client.rest.RestService(AvroHealthCheck.this.kafkaConfiguration.schemaRegistry); if (restService.getAllSubjects().size().>(0)) org.make.api.technical.healthcheck.HealthCheck.Status.OK else org.make.api.technical.healthcheck.HealthCheck.Status.NOK.apply(org.make.api.technical.healthcheck.HealthCheck.Status.NOK.apply$default$1) })(ctx) |