aboutsummaryrefslogtreecommitdiffstats
path: root/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/prh/service/DMaaPReactiveWebClient.java
diff options
context:
space:
mode:
Diffstat (limited to 'prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/prh/service/DMaaPReactiveWebClient.java')
-rw-r--r--prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/prh/service/DMaaPReactiveWebClient.java49
1 files changed, 15 insertions, 34 deletions
diff --git a/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/prh/service/DMaaPReactiveWebClient.java b/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/prh/service/DMaaPReactiveWebClient.java
index a41ec3a4..ab81bede 100644
--- a/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/prh/service/DMaaPReactiveWebClient.java
+++ b/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/prh/service/DMaaPReactiveWebClient.java
@@ -21,6 +21,7 @@ package org.onap.dcaegen2.services.prh.service;
import static org.springframework.web.reactive.function.client.ExchangeFilterFunctions.basicAuthentication;
+import org.onap.dcaegen2.services.prh.config.DmaapCustomConfig;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.HttpHeaders;
@@ -35,26 +36,34 @@ public class DMaaPReactiveWebClient {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
- private DMaaPReactiveWebClient() {
+ private String dMaaPContentType;
+ private String dMaaPUserName;
+ private String dMaaPUserPassword;
+
+ public DMaaPReactiveWebClient fromConfiguration(DmaapCustomConfig dmaapCustomConfig) {
+ this.dMaaPUserName = dmaapCustomConfig.dmaapUserName();
+ this.dMaaPUserPassword = dmaapCustomConfig.dmaapUserPassword();
+ this.dMaaPContentType = dmaapCustomConfig.dmaapContentType();
+ return this;
}
- private WebClient create(WebClientBuilder webClientBuilder) {
+ public WebClient build() {
return WebClient.builder()
- .defaultHeader(HttpHeaders.CONTENT_TYPE, webClientBuilder.dMaaPContentType)
- .filter(basicAuthentication(webClientBuilder.dMaaPUserName, webClientBuilder.dMaaPUserPassword))
+ .defaultHeader(HttpHeaders.CONTENT_TYPE, dMaaPContentType)
+ .filter(basicAuthentication(dMaaPUserName, dMaaPUserPassword))
.filter(logRequest())
.filter(logResponse())
.build();
}
- ExchangeFilterFunction logResponse() {
+ private ExchangeFilterFunction logResponse() {
return ExchangeFilterFunction.ofResponseProcessor(clientResponse -> {
logger.info("Response Status {}", clientResponse.statusCode());
return Mono.just(clientResponse);
});
}
- ExchangeFilterFunction logRequest() {
+ private ExchangeFilterFunction logRequest() {
return ExchangeFilterFunction.ofRequestProcessor(clientRequest -> {
logger.info("Request: {} {}", clientRequest.method(), clientRequest.url());
clientRequest.headers()
@@ -63,32 +72,4 @@ public class DMaaPReactiveWebClient {
});
}
- public static class WebClientBuilder {
-
- private String dMaaPContentType;
- private String dMaaPUserName;
- private String dMaaPUserPassword;
-
- public WebClientBuilder() {
- }
-
- public WebClientBuilder dmaapContentType(String dmaapContentType) {
- this.dMaaPContentType = dmaapContentType;
- return this;
- }
-
- public WebClientBuilder dmaapUserName(String dmaapUserName) {
- this.dMaaPUserName = dmaapUserName;
- return this;
- }
-
- public WebClientBuilder dmaapUserPassword(String dmaapUserPassword) {
- this.dMaaPUserPassword = dmaapUserPassword;
- return this;
- }
-
- public WebClient build() {
- return new DMaaPReactiveWebClient().create(this);
- }
- }
}