GatewayApplication.java
package com.MedilaboSolutions.gateway;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.gateway.route.RouteLocator;
import org.springframework.cloud.gateway.route.builder.RouteLocatorBuilder;
import org.springframework.context.annotation.Bean;
import java.time.LocalDateTime;
@SpringBootApplication
public class GatewayApplication {
public static void main(String[] args) {
SpringApplication.run(GatewayApplication.class, args);
}
@Bean
public RouteLocator customRoutes(RouteLocatorBuilder builder) {
return builder.routes()
.route(p -> p
.path("/login")
.filters(f -> f
)
.uri("forward:/login")
)
.route(p -> p
.path("/refresh")
.filters(f -> f
)
.uri("forward:/refresh")
)
.route(p -> p
.path("/logout")
.filters(f -> f
)
.uri("forward:/logout")
)
.route(p -> p
.path("/v1/assessments/**")
.filters( f -> f
.rewritePath("/v1/assessments/(?<segment>.*)","/assessments/${segment}")
)
.uri("lb://assessments")
)
.route(p -> p
.path("/v1/notes")
.filters(f -> f
.rewritePath("/v1/notes", "/notes")
)
.uri("lb://notes")
)
.route(p -> p
.path("/v1/notes/**")
.filters( f -> f
.rewritePath("/v1/notes/(?<segment>.*)","/notes/${segment}")
)
.uri("lb://notes")
)
.route(p -> p
.path("/v1/patients")
.filters(f -> f
.rewritePath("/v1/patients", "/patients")
)
.uri("lb://patients")
)
.route(p -> p
.path("/v1/patients/**")
.filters(f -> f
.rewritePath("/v1/patients/(?<segment>.*)", "/patients/${segment}")
)
.uri("lb://patients")
)
.build();
}
}