import org.onap.dcae.analytics.tca.core.service.TcaAaiEnrichmentContext;
import org.onap.dcae.analytics.tca.core.service.TcaAaiEnrichmentService;
import org.onap.dcae.analytics.tca.web.TcaAppProperties;
+import org.onap.dcae.analytics.tca.web.util.function.TcaAppPropsToAaiRestClientPrefsFunction;
+import org.onap.dcae.analytics.web.http.HttpClientPreferencesCustomizer;
+import org.springframework.boot.web.client.RestTemplateBuilder;
+import org.springframework.web.client.RestTemplate;
/**
* @author Rajiv Singla
public class TcaAaiEnrichmentContextImpl implements TcaAaiEnrichmentContext {
private final TcaAppProperties tcaAppProperties;
- private final TcaAaiEnrichmentService tcaAaiEnrichmentService;
+ private final RestTemplateBuilder restTemplateBuilder;
public TcaAaiEnrichmentContextImpl(final TcaAppProperties tcaAppProperties,
- final TcaAaiEnrichmentService tcaAaiEnrichmentService) {
+ final RestTemplateBuilder restTemplateBuilder) {
this.tcaAppProperties = tcaAppProperties;
- this.tcaAaiEnrichmentService = tcaAaiEnrichmentService;
+ this.restTemplateBuilder = restTemplateBuilder;
}
-
@Override
public boolean isAaiEnrichmentEnabled() {
return tcaAppProperties.getTca().getAai().getEnableEnrichment();
@Override
public TcaAaiEnrichmentService getAaiEnrichmentService() {
- return tcaAaiEnrichmentService;
+ TcaAaiRestClientPreferences aaiRestClientPreferences = new TcaAppPropsToAaiRestClientPrefsFunction()
+ .apply(tcaAppProperties);
+ if (aaiRestClientPreferences == null) {
+ return null;
+ }
+ RestTemplate aaiRestTemplate = restTemplateBuilder
+ .additionalCustomizers(new HttpClientPreferencesCustomizer<>(aaiRestClientPreferences)).build();
+ return new TcaAaiEnrichmentServiceImpl(tcaAppProperties, aaiRestTemplate);
}
}
package org.onap.dcae.analytics.tca.web.config;
import org.onap.dcae.analytics.tca.core.service.TcaAaiEnrichmentContext;
-import org.onap.dcae.analytics.tca.core.service.TcaAaiEnrichmentService;
import org.onap.dcae.analytics.tca.web.TcaAppProperties;
import org.onap.dcae.analytics.tca.web.aai.TcaAaiEnrichmentContextImpl;
-import org.onap.dcae.analytics.tca.web.aai.TcaAaiEnrichmentServiceImpl;
-import org.onap.dcae.analytics.tca.web.aai.TcaAaiRestClientPreferences;
-import org.onap.dcae.analytics.tca.web.util.function.TcaAppPropsToAaiRestClientPrefsFunction;
-import org.onap.dcae.analytics.web.http.HttpClientPreferencesCustomizer;
import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
-import org.springframework.web.client.RestTemplate;
/**
* @author Rajiv Singla
@Configuration
public class TcaAaiConfig {
- @Bean
- public TcaAaiRestClientPreferences aaiRestClientPreferences(final TcaAppProperties tcaAppProperties) {
- return new TcaAppPropsToAaiRestClientPrefsFunction().apply(tcaAppProperties);
- }
-
- @Bean
- public RestTemplate aaiRestTemplate(final TcaAaiRestClientPreferences aaiRestClientPreferences,
- final RestTemplateBuilder restTemplateBuilder) {
- if(aaiRestClientPreferences == null) {
- return null;
- }
- return restTemplateBuilder
- .additionalCustomizers(new HttpClientPreferencesCustomizer<>(aaiRestClientPreferences))
- .build();
- }
-
- @Bean
- public TcaAaiEnrichmentService aaiEnrichmentService(final TcaAppProperties tcaAppProperties,
- final RestTemplate aaiRestTemplate) {
- if (aaiRestTemplate == null) {
- return null;
- }
- return new TcaAaiEnrichmentServiceImpl(tcaAppProperties, aaiRestTemplate);
- }
-
-
@Bean
public TcaAaiEnrichmentContext tcaAaiEnrichmentContext(final TcaAppProperties tcaAppProperties,
- final TcaAaiEnrichmentService aaiEnrichmentService) {
- return new TcaAaiEnrichmentContextImpl(tcaAppProperties, aaiEnrichmentService);
+ final RestTemplateBuilder restTemplateBuilder) {
+ return new TcaAaiEnrichmentContextImpl(tcaAppProperties, restTemplateBuilder);
}
}