diff --git a/src/main/kotlin/com/kmlabz/birbnetes/apigateway/ApiGatewayConfig.kt b/src/main/kotlin/com/kmlabz/birbnetes/apigateway/ApiGatewayConfig.kt index 59cc3fe..8f97e7d 100644 --- a/src/main/kotlin/com/kmlabz/birbnetes/apigateway/ApiGatewayConfig.kt +++ b/src/main/kotlin/com/kmlabz/birbnetes/apigateway/ApiGatewayConfig.kt @@ -12,6 +12,50 @@ class ApiGatewayConfig { @Bean fun myRoutes(builder: RouteLocatorBuilder): RouteLocator { return builder.routes() + .route { p -> p + .path("/api/model/v1/model") + .filters { f -> f + .hystrix { config -> + config.name = "model-service-model" + config.setFallbackUri("forward:/fallback") + } + .rewritePath("/api/model/v1/model", "/model") + } + .uri("http://model-service") + } + .route { p -> p + .path("/api/model/v1/default") + .filters { f -> f + .hystrix { config -> + config.name = "model-service-default" + config.setFallbackUri("forward:/fallback") + } + .rewritePath("/api/model/v1/default", "/\$default") + } + .uri("http://model-service") + } + .route { p -> p + .path("/api/model/v1/model/**") + .filters { f -> f + .hystrix { config -> + config.name = "model-service-model" + config.setFallbackUri("forward:/fallback") + } + .rewritePath("/api/model/v1/model/(?.*)", "/model/\${MODELID}") + } + .uri("http://model-service") + } + .route { p -> p + .path("/api/model/v1/model/**/details") + .filters { f -> f + .hystrix { config -> + config.name = "model-service-model" + config.setFallbackUri("forward:/fallback") + } + .rewritePath("/api/model/v1/model/(?.*)/details", "/model/\${MODELID}/details") + } + .uri("http://model-service") + } .route { p -> p .path("/api/input/v1/sample") .filters { f -> f