package org.oransc.ric.portal.dashboard.config;
import java.lang.invoke.MethodHandles;
-import java.net.MalformedURLException;
-import java.net.URL;
import org.oransc.ric.e2mgr.client.api.HealthCheckApi;
import org.oransc.ric.e2mgr.client.api.NodebApi;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import org.springframework.web.client.RestTemplate;
+import org.springframework.web.util.DefaultUriBuilderFactory;
/**
* Creates an E2 manager client as a bean to be managed by the Spring container.
*/
@Configuration
-@Profile("!mock")
+@Profile("!test")
public class E2ManagerConfiguration {
private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
private final String e2mgrUrl;
@Autowired
- public E2ManagerConfiguration(@Value("${e2mgr.url}") final String url) throws MalformedURLException {
- logger.info("Configuring E2 Manager at base path {}", url);
- new URL(url);
- this.e2mgrUrl = url;
+ public E2ManagerConfiguration(@Value("${e2mgr.url.prefix}") final String urlPrefix,
+ @Value("${e2mgr.url.suffix}") final String urlSuffix) {
+ logger.debug("ctor prefix '{}' suffix '{}'", urlPrefix, urlSuffix);
+ e2mgrUrl = new DefaultUriBuilderFactory(urlPrefix.trim()).builder().path(urlSuffix.trim()).build().normalize()
+ .toString();
+ logger.info("Configuring E2 Manager at URL {}", e2mgrUrl);
}
private ApiClient apiClient() {
}
@Bean
- public HealthCheckApi e2HealthCheckApi() {
+ // The bean (method) name must be globally unique
+ public HealthCheckApi e2MgrHealthCheckApi() {
return new HealthCheckApi(apiClient());
}
@Bean
- public NodebApi e2NodebApi() {
+ // The bean (method) name must be globally unique
+ public NodebApi e2MgrNodebApi() {
return new NodebApi(apiClient());
}