04d85473381efbe74cf7230767b03a5ccea3dc74
[institute/sw-backend.git] /
1 package com.supwisdom.institute.backend.admin.bff.apis.remote.biz.configuration;
2
3 import org.apache.http.conn.HttpClientConnectionManager;
4 import org.springframework.beans.factory.annotation.Value;
5 import org.springframework.cloud.commons.httpclient.ApacheHttpClientFactory;
6 import org.springframework.context.annotation.Bean;
7
8 import com.supwisdom.institute.backend.common.core.feign.FeignClientBuilder;
9
10 import feign.Client;
11
12 public class BizFeignClientConfiguration {
13
14   @Bean
15   public Client feignClient(
16       @Value("${sw-backend-biz-api.client-auth.enabled:false}") boolean enabled,
17       @Value("${sw-backend-biz-api.client-auth.key-password:}") String keyPassword,
18       @Value("${sw-backend-biz-api.client-auth.key-store:}") String keyStore,
19       @Value("${sw-backend-biz-api.client-auth.key-store-password:}") String keyStorePassword,
20       @Value("${sw-backend-biz-api.client-auth.trust-store:}") String trustStore,
21       @Value("${sw-backend-biz-api.client-auth.trust-store-password:}") String trustStorePassword,
22       ApacheHttpClientFactory httpClientFactory,
23       HttpClientConnectionManager httpClientConnectionManager) {
24     
25     return FeignClientBuilder.builder()
26       .enabled(enabled)
27       .keyPassword(keyPassword)
28       .keyStore(keyStore)
29       .keyStorePassword(keyStorePassword)
30       .trustStore(trustStore)
31       .trustStorePassword(trustStorePassword)
32       .build()
33       .apacheHttpClient(httpClientFactory, httpClientConnectionManager);
34   }
35
36 }