/** * Builds the final object from this builder. * * <p>Any field that hasn't been set explicitly will get its default value. * * @return the object. */ public Policies build() { return new Policies( loadBalancingPolicy == null ? defaultLoadBalancingPolicy() : loadBalancingPolicy, reconnectionPolicy == null ? defaultReconnectionPolicy() : reconnectionPolicy, retryPolicy == null ? defaultRetryPolicy() : retryPolicy, addressTranslator == null ? defaultAddressTranslator() : addressTranslator, timestampGenerator == null ? defaultTimestampGenerator() : timestampGenerator, speculativeExecutionPolicy == null ? defaultSpeculativeExecutionPolicy() : speculativeExecutionPolicy); } }
/** * Returns the retry balancing policy according with a given configuration. * * @param configuration the configuration. * @return the retry balancing policy according with a given configuration. */ private RetryPolicy retryPolicy(final Configuration<Map<String, Object>> configuration) { RetryPolicy retryPolicy = Policies.defaultRetryPolicy(); try { String retryPolicyClassName = configuration.getAttribute(RETRY_POLICY, null); if (retryPolicyClassName != null) { retryPolicy = (RetryPolicy) Class.forName(retryPolicyClassName).newInstance(); } } catch (final Exception ignore) { // just use the default value. } return retryPolicy; }
/** * Returns the retry balancing policy according with a given configuration. * * @param configuration the configuration. * @return the retry balancing policy according with a given configuration. */ private RetryPolicy retryPolicy(final Configuration<Map<String, Object>> configuration) { RetryPolicy retryPolicy = Policies.defaultRetryPolicy(); try { String retryPolicyClassName = configuration.getAttribute(RETRY_POLICY, null); if (retryPolicyClassName != null) { retryPolicy = (RetryPolicy) Class.forName(retryPolicyClassName).newInstance(); } } catch (final Exception ignore) { // just use the default value. } return retryPolicy; }
public Policies() { this(defaultLoadBalancingPolicy(), defaultReconnectionPolicy(), defaultRetryPolicy(), defaultAddressTranslater()); }
_retryPolicy = Objects.firstNonNull(_retryPolicy, Policies.defaultRetryPolicy());
_retryPolicy = Objects.firstNonNull(_retryPolicy, Policies.defaultRetryPolicy());
.withPoolingOptions(poolingOptions) .withSocketOptions(socketOptions) .withRetryPolicy(Policies.defaultRetryPolicy()) .withAuthProvider(authProvider);
/** * Builds the final object from this builder. * <p/> * Any field that hasn't been set explicitly will get its default value. * * @return the object. */ public Policies build() { return new Policies( loadBalancingPolicy == null ? defaultLoadBalancingPolicy() : loadBalancingPolicy, reconnectionPolicy == null ? defaultReconnectionPolicy() : reconnectionPolicy, retryPolicy == null ? defaultRetryPolicy() : retryPolicy, addressTranslator == null ? defaultAddressTranslator() : addressTranslator, timestampGenerator == null ? defaultTimestampGenerator() : timestampGenerator, speculativeExecutionPolicy == null ? defaultSpeculativeExecutionPolicy() : speculativeExecutionPolicy); } }
.withPoolingOptions(poolingOptions) .withSocketOptions(socketOptions) .withRetryPolicy(Policies.defaultRetryPolicy()) .withAuthProvider(authProvider);
retryPolicy = Policies.defaultRetryPolicy();
/** * Builds the final object from this builder. * <p/> * Any field that hasn't been set explicitly will get its default value. * * @return the object. */ public Policies build() { return new Policies( loadBalancingPolicy == null ? Policies.defaultLoadBalancingPolicy() : loadBalancingPolicy, Objects.firstNonNull(reconnectionPolicy, Policies.defaultReconnectionPolicy()), Objects.firstNonNull(retryPolicy, Policies.defaultRetryPolicy()), Objects.firstNonNull(addressTranslator, Policies.defaultAddressTranslator()), Objects.firstNonNull(timestampGenerator, Policies.defaultTimestampGenerator()), Objects.firstNonNull(speculativeExecutionPolicy, Policies.defaultSpeculativeExecutionPolicy())); } }
/** * Builds the final object from this builder. * <p/> * Any field that hasn't been set explicitly will get its default value. * * @return the object. */ public Policies build() { return new Policies( loadBalancingPolicy == null ? Policies.defaultLoadBalancingPolicy() : loadBalancingPolicy, Objects.firstNonNull(reconnectionPolicy, Policies.defaultReconnectionPolicy()), Objects.firstNonNull(retryPolicy, Policies.defaultRetryPolicy()), Objects.firstNonNull(addressTranslator, Policies.defaultAddressTranslator()), Objects.firstNonNull(timestampGenerator, Policies.defaultTimestampGenerator()), Objects.firstNonNull(speculativeExecutionPolicy, Policies.defaultSpeculativeExecutionPolicy())); } }
/** * The configuration that will be used for the new cluster. * <p> * You <b>should not</b> modify this object directly because changes made * to the returned object may not be used by the cluster build. * Instead, you should use the other methods of this {@code Builder}. * * @return the configuration to use for the new cluster. */ @Override public Configuration getConfiguration() { Policies policies = new Policies( loadBalancingPolicy == null ? Policies.defaultLoadBalancingPolicy() : loadBalancingPolicy, reconnectionPolicy == null ? Policies.defaultReconnectionPolicy() : reconnectionPolicy, retryPolicy == null ? Policies.defaultRetryPolicy() : retryPolicy, addressTranslater == null ? Policies.defaultAddressTranslater() : addressTranslater ); return new Configuration(policies, new ProtocolOptions(port, protocolVersion, sslOptions, authProvider).setCompression(compression), poolingOptions == null ? new PoolingOptions() : poolingOptions, socketOptions == null ? new SocketOptions() : socketOptions, metricsEnabled ? new MetricsOptions(jmxEnabled) : null, queryOptions == null ? new QueryOptions() : queryOptions); }