private ApacheSdkHttpClientFactory(DefaultBuilder builder) { this.standardOptions = builder.standardOptions.build(); this.proxyConfiguration = builder.proxyConfiguration; this.localAddress = Optional.ofNullable(builder.localAddress); this.expectContinueEnabled = Optional.ofNullable(builder.expectContinueEnabled); this.connectionPoolTtl = Optional.ofNullable(builder.connectionTimeToLive); this.maxIdleConnectionTimeout = Optional.ofNullable(builder.connectionMaxIdleTime); }
/** * Used by the SDK to create a {@link SdkHttpClient} with service-default values if no other values have been configured * * @param serviceDefaults Service specific defaults. Keys will be one of the constants defined in * {@link SdkHttpConfigurationOption}. * @return an instance of {@link SdkHttpClient} */ @Override public SdkHttpClient buildWithDefaults(AttributeMap serviceDefaults) { return new UrlConnectionHttpClient(standardOptions.build() .merge(serviceDefaults) .merge(SdkHttpConfigurationOption.GLOBAL_HTTP_DEFAULTS), null); } }
public static AttributeMap empty() { return builder().build(); }
private ClientAsyncConfiguration(DefaultBuilder builder) { this.advancedOptions = builder.advancedOptions.build(); }
public static Builder builder() { return new Builder(); }
public AttributeMap copy() { return toBuilder().build(); }
public static AttributeMap empty() { return builder().build(); }
public static Builder builder() { return new Builder(); }
@Override public AttributeMap advancedOptions() { return advancedOptions.build(); }
public AttributeMap copy() { return toBuilder().build(); }
@Override public Builder toBuilder() { return builder().putAll(attributes); }
@Override public Builder maxConnections(Integer maxConnections) { standardOptions.put(MAX_CONNECTIONS, maxConnections); return this; }
@Override public Builder connectionTimeout(Duration connectionTimeout) { standardOptions.put(CONNECTION_TIMEOUT, connectionTimeout); return this; }
@Override public Builder connectionAcquisitionTimeout(Duration connectionAcquisitionTimeout) { Validate.isPositive(connectionAcquisitionTimeout, "connectionAcquisitionTimeout"); standardOptions.put(CONNECTION_ACQUIRE_TIMEOUT, connectionAcquisitionTimeout); return this; }
@Override public Builder writeTimeout(Duration writeTimeout) { Validate.isPositive(writeTimeout, "writeTimeout"); standardOptions.put(WRITE_TIMEOUT, writeTimeout); return this; }
@Override public SdkAsyncHttpClient buildWithDefaults(AttributeMap serviceDefaults) { return new NettyNioAsyncHttpClient(this, standardOptions.build() .merge(serviceDefaults) .merge(SdkHttpConfigurationOption.GLOBAL_HTTP_DEFAULTS)); } }
@Override public <T> Builder putAdvancedOption(SdkAdvancedClientOption<T> option, T value) { this.advancedOptions.put(option, value); return this; }
@Override public Builder advancedOptions(Map<SdkAdvancedAsyncClientOption<?>, ?> advancedOptions) { this.advancedOptions.putAll(advancedOptions); return this; }
@Override public Builder socketTimeout(Duration socketTimeout) { standardOptions.put(SOCKET_TIMEOUT, socketTimeout); return this; }
@Override public Builder protocol(Protocol protocol) { standardOptions.put(SdkHttpConfigurationOption.PROTOCOL, protocol); return this; }