GNM-700 FE Service-Klasse cimCacheAccess für CIM Cache erstellen (getRessourceTypes, getRessourcesWithType)
diff --git a/serviceConfigDevLocal.yml b/serviceConfigDevLocal.yml index 7350806..eec7e02 100644 --- a/serviceConfigDevLocal.yml +++ b/serviceConfigDevLocal.yml
@@ -1,5 +1,6 @@ servicesDistributionFileName: servicesDistributionDevLocal.json - +proxyHost: webproxy3.pta.de +proxyPort: 8080 logging: level: INFO
diff --git a/serviceConfigDevLocal_MASTER.yml b/serviceConfigDevLocal_MASTER.yml index 84ef912..0a83714 100644 --- a/serviceConfigDevLocal_MASTER.yml +++ b/serviceConfigDevLocal_MASTER.yml
@@ -1,5 +1,6 @@ servicesDistributionFileName: servicesDistributionDevServer.json - +proxyHost: +proxyPort: logging: level: INFO
diff --git a/serviceConfig_QA.yml b/serviceConfig_QA.yml index 2e643d6..e49270f 100644 --- a/serviceConfig_QA.yml +++ b/serviceConfig_QA.yml
@@ -1,5 +1,6 @@ servicesDistributionFileName: servicesDistributionQAServer.json - +proxyHost: +proxyPort: logging: level: INFO
diff --git a/src/main/java/org/eclipse/openk/MicsCentralApplication.java b/src/main/java/org/eclipse/openk/MicsCentralApplication.java index 582e7a0..16c4d02 100644 --- a/src/main/java/org/eclipse/openk/MicsCentralApplication.java +++ b/src/main/java/org/eclipse/openk/MicsCentralApplication.java
@@ -17,6 +17,7 @@ import io.dropwizard.setup.Bootstrap; import io.dropwizard.setup.Environment; import org.eclipse.jetty.servlets.CrossOriginFilter; +import org.eclipse.openk.core.controller.BackendConfig; import org.eclipse.openk.core.controller.InitServicesConfigCacheJob; import org.eclipse.openk.health.ConfigFilePresentHealthCheck; import org.eclipse.openk.resources.MicsCentralResource; @@ -58,6 +59,8 @@ private void initAppEnvironment( MicsCentralConfiguration conf ) { InitServicesConfigCacheJob.init(conf.getServicesDistributionFileName()); + BackendConfig.getInstance().setProxyHost(conf.getProxyHost()); + BackendConfig.getInstance().setProxyPort(Integer.parseInt(conf.getProxyPort())); } private void configureCors(Environment environment) {
diff --git a/src/main/java/org/eclipse/openk/MicsCentralConfiguration.java b/src/main/java/org/eclipse/openk/MicsCentralConfiguration.java index df9553e..df7c7b0 100644 --- a/src/main/java/org/eclipse/openk/MicsCentralConfiguration.java +++ b/src/main/java/org/eclipse/openk/MicsCentralConfiguration.java
@@ -21,6 +21,12 @@ private String servicesDistributionFileName; @JsonProperty + private String proxyHost; + + @JsonProperty + private String proxyPort; + + @JsonProperty public String getServicesDistributionFileName() { return servicesDistributionFileName; } @@ -29,4 +35,20 @@ public void setServicesDistributionFileName(String servicesDistributionFileName) { this.servicesDistributionFileName = servicesDistributionFileName; } + + public String getProxyHost() { + return proxyHost; + } + + public void setProxyHost(String proxyHost) { + this.proxyHost = proxyHost; + } + + public String getProxyPort() { + return proxyPort; + } + + public void setProxyPort(String proxyPort) { + this.proxyPort = proxyPort; + } }
diff --git a/src/main/java/org/eclipse/openk/core/communication/RestServiceWrapper.java b/src/main/java/org/eclipse/openk/core/communication/RestServiceWrapper.java index 97843ad..1a16b9a 100644 --- a/src/main/java/org/eclipse/openk/core/communication/RestServiceWrapper.java +++ b/src/main/java/org/eclipse/openk/core/communication/RestServiceWrapper.java
@@ -13,6 +13,8 @@ package org.eclipse.openk.core.communication; +import org.apache.commons.httpclient.HostConfiguration; +import org.apache.http.HttpHost; import org.apache.http.HttpResponse; import org.apache.http.HttpStatus; import org.apache.http.client.methods.*; @@ -27,6 +29,7 @@ import org.apache.http.util.EntityUtils; import org.apache.log4j.Logger; import org.eclipse.openk.core.common.Globals; +import org.eclipse.openk.core.controller.BackendConfig; import org.eclipse.openk.core.exceptions.HttpStatusException; import javax.ws.rs.core.Response; @@ -187,6 +190,11 @@ builder.loadTrustMaterial(null, new TrustSelfSignedStrategy()); SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(builder.build(), new NoopHostnameVerifier()); + String proxyHost = BackendConfig.getInstance().getProxyHost(); + int proxyPort = BackendConfig.getInstance().getProxyPort(); + if (proxyHost != null && !proxyHost.isEmpty()){ + return HttpClients.custom().setSSLSocketFactory(sslsf).setProxy(new HttpHost(proxyHost, proxyPort)).build(); + } return HttpClients.custom().setSSLSocketFactory(sslsf).build(); } catch (Exception e) {
diff --git a/src/main/java/org/eclipse/openk/core/controller/BackendConfig.java b/src/main/java/org/eclipse/openk/core/controller/BackendConfig.java new file mode 100644 index 0000000..1af2080 --- /dev/null +++ b/src/main/java/org/eclipse/openk/core/controller/BackendConfig.java
@@ -0,0 +1,31 @@ +package org.eclipse.openk.core.controller; + +public class BackendConfig { + + static final private BackendConfig instance = new BackendConfig(); + + private String proxyHost; + private int proxyPort; + + private BackendConfig(){} + + public static BackendConfig getInstance(){ + return instance; + } + + public String getProxyHost() { + return proxyHost; + } + + public void setProxyHost(String proxyHost) { + this.proxyHost = proxyHost; + } + + public int getProxyPort() { + return proxyPort; + } + + public void setProxyPort(int proxyPort) { + this.proxyPort = proxyPort; + } +}