package com.starcharge.config;

import java.util.concurrent.TimeUnit;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import feign.Client;
import okhttp3.ConnectionPool;
import okhttp3.OkHttpClient;

@Configuration
public class FeignOkhttpConfig {

    @Bean
    public OkHttpClient okHttpClient(){
        return new OkHttpClient.Builder()
                .connectionPool(new ConnectionPool(50, 5, TimeUnit.MINUTES))
                .readTimeout(200, TimeUnit.MILLISECONDS)
                .connectTimeout(10000, TimeUnit.MILLISECONDS)
                .build();
    }

    @Bean
    public Client feignClient(OkHttpClient okHttpClient){
        return new feign.okhttp.OkHttpClient(okHttpClient);
    }
}