コード例 #1
0
    /**
     * Create a config builder with values taken from the given prototype configuration.
     *
     * @param prototype the configuration to use as a prototype.
     */
    public Builder(AsyncHttpClientConfig prototype) {
      allowPoolingConnection = prototype.getAllowPoolingConnection();
      providerConfig = prototype.getAsyncHttpProviderConfig();
      connectionsPool = prototype.getConnectionsPool();
      defaultConnectionTimeOutInMs = prototype.getConnectionTimeoutInMs();
      defaultIdleConnectionInPoolTimeoutInMs = prototype.getIdleConnectionInPoolTimeoutInMs();
      defaultIdleConnectionTimeoutInMs = prototype.getIdleConnectionTimeoutInMs();
      defaultMaxConnectionPerHost = prototype.getMaxConnectionPerHost();
      defaultMaxConnectionLifeTimeInMs = prototype.getMaxConnectionLifeTimeInMs();
      maxDefaultRedirects = prototype.getMaxRedirects();
      defaultMaxTotalConnections = prototype.getMaxTotalConnections();
      proxyServer = prototype.getProxyServer();
      realm = prototype.getRealm();
      defaultRequestTimeoutInMs = prototype.getRequestTimeoutInMs();
      sslContext = prototype.getSSLContext();
      sslEngineFactory = prototype.getSSLEngineFactory();
      userAgent = prototype.getUserAgent();
      redirectEnabled = prototype.isRedirectEnabled();
      compressionEnabled = prototype.isCompressionEnabled();
      reaper = prototype.reaper();
      applicationThreadPool = prototype.executorService();

      requestFilters.clear();
      responseFilters.clear();
      ioExceptionFilters.clear();

      requestFilters.addAll(prototype.getRequestFilters());
      responseFilters.addAll(prototype.getResponseFilters());
      ioExceptionFilters.addAll(prototype.getIOExceptionFilters());

      requestCompressionLevel = prototype.getRequestCompressionLevel();
      useRawUrl = prototype.isUseRawUrl();
      ioThreadMultiplier = prototype.getIoThreadMultiplier();
      maxRequestRetry = prototype.getMaxRequestRetry();
      allowSslConnectionPool = prototype.getAllowPoolingConnection();
      removeQueryParamOnRedirect = prototype.isRemoveQueryParamOnRedirect();
      hostnameVerifier = prototype.getHostnameVerifier();
      strict302Handling = prototype.isStrict302Handling();
      useRelativeURIsWithSSLProxies = prototype.isUseRelativeURIsWithSSLProxies();
    }