Adjust application.yaml keys and values
[portal/ric-dashboard.git] / webapp-backend / src / main / java / org / oransc / ric / portal / dashboard / config / CaasIngressConfiguration.java
index 397a5dc..7bb3149 100644 (file)
  */
 package org.oransc.ric.portal.dashboard.config;
 
-import java.io.IOException;
 import java.lang.invoke.MethodHandles;
 import java.security.KeyManagementException;
 import java.security.NoSuchAlgorithmException;
 
-import org.oransc.ric.portal.dashboard.k8sapi.SimpleKubernetesClient;
+import org.oransc.ric.portal.dashboard.model.RicInstanceList;
 import org.oransc.ric.portal.dashboard.util.HttpsURLConnectionUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -33,7 +32,6 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Profile;
-import org.springframework.web.util.DefaultUriBuilderFactory;
 
 /**
  * Creates instances of CAAS-Ingres clients.
@@ -45,25 +43,19 @@ public class CaasIngressConfiguration {
        private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
 
        // Populated by the autowired constructor
-       private final String caasIngressAuxUrl;
-       private final String caasIngressPltUrl;
+       private final String urlSuffix;
+       private final RicInstanceList instanceConfig;
 
        @Autowired
        public CaasIngressConfiguration( //
+                       @Value("${caasingress.plt.url.suffix}") final String pltUrlSuffix, //
                        @Value("${caasingress.insecure}") final Boolean insecureFlag, //
-                       @Value("${caasingress.aux.url.prefix}") final String auxUrlPrefix, //
-                       @Value("${caasingress.aux.url.suffix}") final String auxUrlSuffix, //
-                       @Value("${caasingress.plt.url.prefix}") final String pltUrlPrefix,
-                       @Value("${caasingress.plt.url.suffix}") final String pltUrlSuffix)
-                       throws KeyManagementException, NoSuchAlgorithmException {
-               logger.debug("ctor caasingress aux prefix '{}' suffix '{}'", auxUrlPrefix, auxUrlSuffix);
-               logger.debug("ctor caasingress plt prefix '{}' suffix '{}'", pltUrlPrefix, pltUrlSuffix);
-               caasIngressAuxUrl = new DefaultUriBuilderFactory(auxUrlPrefix.trim()).builder().path(auxUrlSuffix.trim())
-                               .build().normalize().toString();
-               caasIngressPltUrl = new DefaultUriBuilderFactory(pltUrlPrefix.trim()).builder().path(pltUrlSuffix.trim())
-                               .build().normalize().toString();
-               logger.info("Configuring CAAS-Ingress URLs: aux {}, plt {}", caasIngressAuxUrl, caasIngressPltUrl);
-               if (insecureFlag) {
+                       final RicInstanceList instanceConfig) throws KeyManagementException, NoSuchAlgorithmException {
+               logger.debug("ctor: suffix {} insecure flag {}", pltUrlSuffix, insecureFlag);
+               this.urlSuffix = pltUrlSuffix;
+               this.instanceConfig = instanceConfig;
+               // This is a brutal hack:
+               if (insecureFlag != null && insecureFlag) {
                        logger.warn("ctor: insecure flag set, disabling SSL checks");
                        HttpsURLConnectionUtils.turnOffSslChecking();
                }
@@ -71,14 +63,8 @@ public class CaasIngressConfiguration {
 
        @Bean
        // The bean (method) name must be globally unique
-       public SimpleKubernetesClient ciAuxApi() throws IOException {
-               return new SimpleKubernetesClient(caasIngressAuxUrl);
-       }
-
-       @Bean
-       // The bean (method) name must be globally unique
-       public SimpleKubernetesClient ciPltApi() throws IOException {
-               return new SimpleKubernetesClient(caasIngressPltUrl);
+       public SimpleKubernetesClientBuilder simpleKubernetesClientBuilder() {
+               return new SimpleKubernetesClientBuilder(instanceConfig, urlSuffix);
        }
 
 }