public void init()

in src/main/java/com/alibaba/cloudapi/sdk/client/OkHttp3Client.java [22:64]


    public void init(HttpClientBuilderParams buildParam){
        if(null == buildParam){
            throw new SdkException("buildParam must not be null");
        }

        buildParam.check();

        this.appKey = buildParam.getAppKey();
        this.appSecret = buildParam.getAppSecret();
        host = buildParam.getHost();
        scheme = buildParam.getScheme();

        OkHttpClient.Builder builder = new  OkHttpClient.Builder();
        if(null != buildParam.getX509TrustManager() && null != buildParam.getSslSocketFactory()){
            builder.sslSocketFactory(buildParam.getSslSocketFactory() , buildParam.getX509TrustManager());
        }
        if(null != buildParam.getHostnameVerifier()){
            builder.hostnameVerifier(buildParam.getHostnameVerifier());
        }

        ConnectionPool connectionPool = new ConnectionPool(buildParam.getMaxIdleConnections() , buildParam.getMaxIdleTimeMillis() , TimeUnit.MILLISECONDS);
        Dispatcher dispatcher;
        if(null != buildParam.getExecutorService()){
            dispatcher = new Dispatcher(buildParam.getExecutorService());
        }
        else{
            dispatcher = new Dispatcher();
        }

        if(null != buildParam.getIdleCallback()){
            dispatcher.setIdleCallback(buildParam.getIdleCallback());
        }

        dispatcher.setMaxRequests(buildParam.getDispatchMaxRequests());
        dispatcher.setMaxRequestsPerHost(buildParam.getDispatchMaxRequestsPerHost());

        client = builder
                .connectionPool(connectionPool).dispatcher(dispatcher)
                .readTimeout(buildParam.getReadTimeout(), TimeUnit.MILLISECONDS)
                .writeTimeout(buildParam.getWriteTimeout(), TimeUnit.MILLISECONDS)
                .connectTimeout(buildParam.getConnectionTimeout(), TimeUnit.MILLISECONDS)
                .build();
    }