aboutsummaryrefslogtreecommitdiffstats
path: root/rest-services/cbs-client/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientRest.java
diff options
context:
space:
mode:
Diffstat (limited to 'rest-services/cbs-client/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientRest.java')
-rw-r--r--rest-services/cbs-client/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientRest.java88
1 files changed, 0 insertions, 88 deletions
diff --git a/rest-services/cbs-client/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientRest.java b/rest-services/cbs-client/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientRest.java
deleted file mode 100644
index 3eda6d8a..00000000
--- a/rest-services/cbs-client/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientRest.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- * DCAEGEN2-SERVICES-SDK
- * ================================================================================
- * Copyright (C) 2019-2021 Nokia. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-package org.onap.dcaegen2.services.sdk.rest.services.cbs.client.impl;
-
-import com.google.gson.JsonObject;
-import org.jetbrains.annotations.NotNull;
-import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.HttpMethod;
-import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.HttpResponse;
-import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.ImmutableHttpRequest;
-import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.RxHttpClient;
-import org.onap.dcaegen2.services.sdk.rest.services.cbs.client.api.CbsClient;
-import org.onap.dcaegen2.services.sdk.rest.services.cbs.client.model.CbsRequest;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import reactor.core.publisher.Mono;
-
-import java.net.InetSocketAddress;
-import java.net.MalformedURLException;
-import java.net.URL;
-
-public class CbsClientRest implements CbsClient {
- private static final Logger LOGGER = LoggerFactory.getLogger(CbsClientRest.class);
- private final RxHttpClient httpClient;
- private final String serviceName;
- private final InetSocketAddress cbsAddress;
- private final String protocol;
-
- public CbsClientRest(RxHttpClient httpClient, String serviceName, InetSocketAddress cbsAddress, String protocol) {
- this.httpClient = httpClient;
- this.serviceName = serviceName;
- this.cbsAddress = cbsAddress;
- this.protocol = protocol;
- }
-
- @Override
- public @NotNull Mono<JsonObject> get(CbsRequest request) {
- return Mono.fromCallable(() -> constructUrl(request).toString())
- .doOnNext(this::logRequestUrl)
- .map(url -> ImmutableHttpRequest.builder()
- .method(HttpMethod.GET)
- .url(url)
- .diagnosticContext(request.diagnosticContext())
- .build())
- .flatMap(httpClient::call)
- .doOnNext(HttpResponse::throwIfUnsuccessful)
- .map(resp -> resp.bodyAsJson(JsonObject.class))
- .map(CbsClientEnvironmentParsing::processEnvironmentVariables)
- .doOnNext(this::logCbsResponse);
- }
-
- private void logRequestUrl(String url) {
- LOGGER.debug("Calling {} for configuration", url);
- }
-
- private void logCbsResponse(JsonObject json) {
- LOGGER.info("Got successful response from Config Binding Service");
- LOGGER.debug("CBS response: {}", json);
- }
-
- private URL constructUrl(CbsRequest request) {
- try {
- return new URL(
- this.protocol,
- cbsAddress.getHostString(),
- cbsAddress.getPort(),
- request.requestPath().getForService(serviceName));
- } catch (MalformedURLException e) {
- throw new IllegalArgumentException("Invalid CBS URL", e);
- }
- }
-} \ No newline at end of file