From 28eba9801feb6fb7c7689fac444664c80134b19d Mon Sep 17 00:00:00 2001 From: vlad Date: Thu, 22 Dec 2016 22:59:03 -0800 Subject: Swagger schema configurability --- src/main/scala/xyz/driver/core/app.scala | 4 +++- src/main/scala/xyz/driver/core/rest.scala | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'src/main') diff --git a/src/main/scala/xyz/driver/core/app.scala b/src/main/scala/xyz/driver/core/app.scala index 227be57..9bc34f6 100644 --- a/src/main/scala/xyz/driver/core/app.scala +++ b/src/main/scala/xyz/driver/core/app.scala @@ -11,6 +11,7 @@ import akka.http.scaladsl.server.RouteResult._ import akka.http.scaladsl.server.{ExceptionHandler, Route, RouteConcatenation} import akka.stream.ActorMaterializer import com.typesafe.config.Config +import io.swagger.models.Scheme import org.slf4j.LoggerFactory import spray.json.DefaultJsonProtocol import xyz.driver.core @@ -35,6 +36,7 @@ object app { config: Config = core.config.loadDefaultConfig, interface: String = "::0", baseUrl: String = "localhost:8080", + scheme: String = "http", port: Int = 8080) { implicit private lazy val actorSystem = ActorSystem("spray-routing", config) @@ -60,7 +62,7 @@ object app { protected def bindHttp(modules: Seq[Module]): Unit = { val serviceTypes = modules.flatMap(_.routeTypes) - val swaggerService = new Swagger(baseUrl, version, actorSystem, serviceTypes, config) + val swaggerService = new Swagger(baseUrl, Scheme.forValue(scheme), version, actorSystem, serviceTypes, config) val swaggerRoutes = swaggerService.routes ~ swaggerService.swaggerUI val versionRt = versionRoute(version, gitHash, time.currentTime()) diff --git a/src/main/scala/xyz/driver/core/rest.scala b/src/main/scala/xyz/driver/core/rest.scala index f05a800..ed90d7d 100644 --- a/src/main/scala/xyz/driver/core/rest.scala +++ b/src/main/scala/xyz/driver/core/rest.scala @@ -9,6 +9,7 @@ import akka.stream.ActorMaterializer import com.github.swagger.akka.model._ import com.github.swagger.akka.{HasActorSystem, SwaggerHttpService} import com.typesafe.config.Config +import io.swagger.models.Scheme import xyz.driver.core.logging.Logger import xyz.driver.core.stats.Stats import xyz.driver.core.time.TimeRange @@ -116,6 +117,7 @@ object rest { import scala.reflect.runtime.universe._ class Swagger(override val host: String, + override val scheme: Scheme, version: String, override val actorSystem: ActorSystem, override val apiTypes: Seq[Type], -- cgit v1.2.3