Class ConfigurationBuilder
- java.lang.Object
-
- org.infinispan.client.hotrod.configuration.ConfigurationBuilder
-
- All Implemented Interfaces:
ConfigurationChildBuilder
,Builder<Configuration>
public class ConfigurationBuilder extends Object implements ConfigurationChildBuilder, Builder<Configuration>
ConfigurationBuilder used to generate immutable
Configuration
objects to pass to theRemoteCacheManager(Configuration)
constructor.If you prefer to configure the client declaratively, see
org.infinispan.client.hotrod.configuration
- Since:
- 5.3
- Author:
- Tristan Tarrant
-
-
Constructor Summary
Constructors Constructor Description ConfigurationBuilder()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description ClusterConfigurationBuilder
addCluster(String clusterName)
Adds a new remote server clusterConfigurationBuilder
addJavaSerialWhiteList(String... regEx)
List of regular expressions for classes that can be deserialized using standard Java deserialization when reading data that might have been stored with a different endpoint, e.g.ServerConfigurationBuilder
addServer()
Adds a new remote serverConfigurationBuilder
addServers(String servers)
Adds a list of remote servers in the form: host1[:port][;host2[:port]]...ExecutorFactoryConfigurationBuilder
asyncExecutorFactory()
Configuration for the executor service used for asynchronous work on the Transport, including asynchronous marshalling and Cache 'async operations' such as Cache.putAsync().ConfigurationBuilder
balancingStrategy(Class<? extends FailoverRequestBalancingStrategy> balancingStrategy)
For replicated (vs distributed) Hot Rod server clusters, the client balances requests to the servers according to this strategy.ConfigurationBuilder
balancingStrategy(String balancingStrategy)
For replicated (vs distributed) Hot Rod server clusters, the client balances requests to the servers according to this strategy.ConfigurationBuilder
balancingStrategy(Supplier<FailoverRequestBalancingStrategy> balancingStrategyFactory)
For replicated (vs distributed) Hot Rod server clusters, the client balances requests to the servers according to this strategy.ConfigurationBuilder
balancingStrategy(FailoverRequestBalancingStrategy balancingStrategy)
Deprecated.ConfigurationBuilder
batchSize(int batchSize)
Sets the batch size of internal iterators (ie.Configuration
build()
Builds a configuration objectConfiguration
build(boolean validate)
ConfigurationBuilder
classLoader(ClassLoader cl)
Specifies theClassLoader
used to find certain resources used by configuration when specified by name (e.g.ConfigurationBuilder
clientIntelligence(ClientIntelligence clientIntelligence)
Specifies the level of "intelligence" the client should haveConnectionPoolConfigurationBuilder
connectionPool()
Configures the connection poolConfigurationBuilder
connectionTimeout(int connectionTimeout)
This property defines the maximum socket connect timeout before giving up connecting to the server.ConfigurationBuilder
consistentHashImpl(int version, Class<? extends org.infinispan.client.hotrod.impl.consistenthash.ConsistentHash> consistentHashClass)
Defines theConsistentHash
implementation to use for the specified version.ConfigurationBuilder
consistentHashImpl(int version, String consistentHashClass)
Defines theConsistentHash
implementation to use for the specified version.Configuration
create()
Create the configuration beanConfigurationBuilder
forceReturnValues(boolean forceReturnValues)
Whether or not to implicitly FORCE_RETURN_VALUE for all calls.ConfigurationBuilder
keySizeEstimate(int keySizeEstimate)
This hint allows sizing of byte buffers when serializing and deserializing keys, to minimize array resizing.ConfigurationBuilder
marshaller(Class<? extends Marshaller> marshaller)
Allows you to specify a customMarshaller
implementation to serialize and deserialize user objects.ConfigurationBuilder
marshaller(String marshaller)
Allows you to specify a customMarshaller
implementation to serialize and deserialize user objects.ConfigurationBuilder
marshaller(Marshaller marshaller)
Allows you to specify an instance ofMarshaller
to serialize and deserialize user objects.ConfigurationBuilder
maxRetries(int maxRetries)
It sets the maximum number of retries for each request.NearCacheConfigurationBuilder
nearCache()
static void
parseServers(String servers, BiConsumer<String,Integer> c)
ConfigurationBuilder
protocolVersion(String protocolVersion)
Deprecated.Useversion(ProtocolVersion)
instead.ConfigurationBuilder
read(Configuration template)
Reads the configuration from an already created configuration bean into this builder.SecurityConfigurationBuilder
security()
Security ConfigurationConfigurationBuilder
socketTimeout(int socketTimeout)
This property defines the maximum socket read timeout in milliseconds before giving up waiting for bytes from the server.StatisticsConfigurationBuilder
statistics()
Configures client-side statistics.ConfigurationBuilder
tcpKeepAlive(boolean keepAlive)
Affects TCP KEEPALIVE on the TCP stack.ConfigurationBuilder
tcpNoDelay(boolean tcpNoDelay)
Affects TCP NODELAY on the TCP stack.TransactionConfigurationBuilder
transaction()
Transaction configurationConfigurationBuilder
transportFactory(Class<? extends org.infinispan.client.hotrod.impl.transport.TransportFactory> transportFactory)
Controls which transport to use.ConfigurationBuilder
transportFactory(String transportFactory)
Controls which transport to use.void
validate()
Validate the data in this builder before building the configuration beanConfigurationBuilder
valueSizeEstimate(int valueSizeEstimate)
This hint allows sizing of byte buffers when serializing and deserializing values, to minimize array resizing.ConfigurationBuilder
version(ProtocolVersion protocolVersion)
This property defines the protocol version that this client should use.ConfigurationBuilder
withProperties(Properties properties)
Configures this builder using the specified properties.
-
-
-
Method Detail
-
addServer
public ServerConfigurationBuilder addServer()
Description copied from interface:ConfigurationChildBuilder
Adds a new remote server- Specified by:
addServer
in interfaceConfigurationChildBuilder
-
addCluster
public ClusterConfigurationBuilder addCluster(String clusterName)
Description copied from interface:ConfigurationChildBuilder
Adds a new remote server cluster- Specified by:
addCluster
in interfaceConfigurationChildBuilder
-
addServers
public ConfigurationBuilder addServers(String servers)
Description copied from interface:ConfigurationChildBuilder
Adds a list of remote servers in the form: host1[:port][;host2[:port]]...- Specified by:
addServers
in interfaceConfigurationChildBuilder
-
parseServers
public static final void parseServers(String servers, BiConsumer<String,Integer> c)
-
asyncExecutorFactory
public ExecutorFactoryConfigurationBuilder asyncExecutorFactory()
Description copied from interface:ConfigurationChildBuilder
Configuration for the executor service used for asynchronous work on the Transport, including asynchronous marshalling and Cache 'async operations' such as Cache.putAsync().- Specified by:
asyncExecutorFactory
in interfaceConfigurationChildBuilder
-
balancingStrategy
public ConfigurationBuilder balancingStrategy(String balancingStrategy)
Description copied from interface:ConfigurationChildBuilder
For replicated (vs distributed) Hot Rod server clusters, the client balances requests to the servers according to this strategy.- Specified by:
balancingStrategy
in interfaceConfigurationChildBuilder
-
balancingStrategy
@Deprecated public ConfigurationBuilder balancingStrategy(FailoverRequestBalancingStrategy balancingStrategy)
Deprecated.Description copied from interface:ConfigurationChildBuilder
For replicated (vs distributed) Hot Rod server clusters, the client balances requests to the servers according to this strategy.- Specified by:
balancingStrategy
in interfaceConfigurationChildBuilder
-
balancingStrategy
public ConfigurationBuilder balancingStrategy(Supplier<FailoverRequestBalancingStrategy> balancingStrategyFactory)
Description copied from interface:ConfigurationChildBuilder
For replicated (vs distributed) Hot Rod server clusters, the client balances requests to the servers according to this strategy.- Specified by:
balancingStrategy
in interfaceConfigurationChildBuilder
-
balancingStrategy
public ConfigurationBuilder balancingStrategy(Class<? extends FailoverRequestBalancingStrategy> balancingStrategy)
Description copied from interface:ConfigurationChildBuilder
For replicated (vs distributed) Hot Rod server clusters, the client balances requests to the servers according to this strategy.- Specified by:
balancingStrategy
in interfaceConfigurationChildBuilder
-
classLoader
public ConfigurationBuilder classLoader(ClassLoader cl)
Description copied from interface:ConfigurationChildBuilder
Specifies theClassLoader
used to find certain resources used by configuration when specified by name (e.g. certificate stores). Infinispan will search through the classloader which loaded this class, the system classloader, the TCCL and the OSGi classloader (if applicable).- Specified by:
classLoader
in interfaceConfigurationChildBuilder
-
clientIntelligence
public ConfigurationBuilder clientIntelligence(ClientIntelligence clientIntelligence)
Description copied from interface:ConfigurationChildBuilder
Specifies the level of "intelligence" the client should have- Specified by:
clientIntelligence
in interfaceConfigurationChildBuilder
-
connectionPool
public ConnectionPoolConfigurationBuilder connectionPool()
Description copied from interface:ConfigurationChildBuilder
Configures the connection pool- Specified by:
connectionPool
in interfaceConfigurationChildBuilder
-
connectionTimeout
public ConfigurationBuilder connectionTimeout(int connectionTimeout)
Description copied from interface:ConfigurationChildBuilder
This property defines the maximum socket connect timeout before giving up connecting to the server.- Specified by:
connectionTimeout
in interfaceConfigurationChildBuilder
-
consistentHashImpl
public ConfigurationBuilder consistentHashImpl(int version, Class<? extends org.infinispan.client.hotrod.impl.consistenthash.ConsistentHash> consistentHashClass)
Description copied from interface:ConfigurationChildBuilder
Defines theConsistentHash
implementation to use for the specified version. By default,ConsistentHashV2
is used for version 1 andConsistentHashV2
is used for version 2.- Specified by:
consistentHashImpl
in interfaceConfigurationChildBuilder
-
consistentHashImpl
public ConfigurationBuilder consistentHashImpl(int version, String consistentHashClass)
Description copied from interface:ConfigurationChildBuilder
Defines theConsistentHash
implementation to use for the specified version. By default,ConsistentHashV2
is used for version 1 andConsistentHashV2
is used for version 2.- Specified by:
consistentHashImpl
in interfaceConfigurationChildBuilder
-
forceReturnValues
public ConfigurationBuilder forceReturnValues(boolean forceReturnValues)
Description copied from interface:ConfigurationChildBuilder
Whether or not to implicitly FORCE_RETURN_VALUE for all calls.- Specified by:
forceReturnValues
in interfaceConfigurationChildBuilder
-
keySizeEstimate
public ConfigurationBuilder keySizeEstimate(int keySizeEstimate)
Description copied from interface:ConfigurationChildBuilder
This hint allows sizing of byte buffers when serializing and deserializing keys, to minimize array resizing. It defaults to 64.- Specified by:
keySizeEstimate
in interfaceConfigurationChildBuilder
-
marshaller
public ConfigurationBuilder marshaller(String marshaller)
Description copied from interface:ConfigurationChildBuilder
Allows you to specify a customMarshaller
implementation to serialize and deserialize user objects. This method is mutually exclusive withConfigurationChildBuilder.marshaller(Marshaller)
.- Specified by:
marshaller
in interfaceConfigurationChildBuilder
-
marshaller
public ConfigurationBuilder marshaller(Class<? extends Marshaller> marshaller)
Description copied from interface:ConfigurationChildBuilder
Allows you to specify a customMarshaller
implementation to serialize and deserialize user objects. This method is mutually exclusive withConfigurationChildBuilder.marshaller(Marshaller)
.- Specified by:
marshaller
in interfaceConfigurationChildBuilder
-
marshaller
public ConfigurationBuilder marshaller(Marshaller marshaller)
Description copied from interface:ConfigurationChildBuilder
Allows you to specify an instance ofMarshaller
to serialize and deserialize user objects. This method is mutually exclusive withConfigurationChildBuilder.marshaller(Class)
.- Specified by:
marshaller
in interfaceConfigurationChildBuilder
-
nearCache
public NearCacheConfigurationBuilder nearCache()
-
protocolVersion
@Deprecated public ConfigurationBuilder protocolVersion(String protocolVersion)
Deprecated.Useversion(ProtocolVersion)
instead.Description copied from interface:ConfigurationChildBuilder
This property defines the protocol version that this client should use. Defaults to the latest protocol version supported by this client.- Specified by:
protocolVersion
in interfaceConfigurationChildBuilder
-
version
public ConfigurationBuilder version(ProtocolVersion protocolVersion)
Description copied from interface:ConfigurationChildBuilder
This property defines the protocol version that this client should use. Defaults to the latest protocol version supported by this client.- Specified by:
version
in interfaceConfigurationChildBuilder
-
security
public SecurityConfigurationBuilder security()
Description copied from interface:ConfigurationChildBuilder
Security Configuration- Specified by:
security
in interfaceConfigurationChildBuilder
-
socketTimeout
public ConfigurationBuilder socketTimeout(int socketTimeout)
Description copied from interface:ConfigurationChildBuilder
This property defines the maximum socket read timeout in milliseconds before giving up waiting for bytes from the server. Defaults to 60000 (1 minute)- Specified by:
socketTimeout
in interfaceConfigurationChildBuilder
-
tcpNoDelay
public ConfigurationBuilder tcpNoDelay(boolean tcpNoDelay)
Description copied from interface:ConfigurationChildBuilder
Affects TCP NODELAY on the TCP stack. Defaults to enabled- Specified by:
tcpNoDelay
in interfaceConfigurationChildBuilder
-
tcpKeepAlive
public ConfigurationBuilder tcpKeepAlive(boolean keepAlive)
Description copied from interface:ConfigurationChildBuilder
Affects TCP KEEPALIVE on the TCP stack. Defaults to disable- Specified by:
tcpKeepAlive
in interfaceConfigurationChildBuilder
-
transportFactory
public ConfigurationBuilder transportFactory(String transportFactory)
Description copied from interface:ConfigurationChildBuilder
Controls which transport to use.- Specified by:
transportFactory
in interfaceConfigurationChildBuilder
-
transportFactory
public ConfigurationBuilder transportFactory(Class<? extends org.infinispan.client.hotrod.impl.transport.TransportFactory> transportFactory)
Description copied from interface:ConfigurationChildBuilder
Controls which transport to use.- Specified by:
transportFactory
in interfaceConfigurationChildBuilder
-
valueSizeEstimate
public ConfigurationBuilder valueSizeEstimate(int valueSizeEstimate)
Description copied from interface:ConfigurationChildBuilder
This hint allows sizing of byte buffers when serializing and deserializing values, to minimize array resizing. It defaults to 512- Specified by:
valueSizeEstimate
in interfaceConfigurationChildBuilder
-
maxRetries
public ConfigurationBuilder maxRetries(int maxRetries)
Description copied from interface:ConfigurationChildBuilder
It sets the maximum number of retries for each request. A valid value should be greater or equals than 0 (zero). Zero means no retry will made in case of a network failure. It defaults to 10.- Specified by:
maxRetries
in interfaceConfigurationChildBuilder
-
addJavaSerialWhiteList
public ConfigurationBuilder addJavaSerialWhiteList(String... regEx)
Description copied from interface:ConfigurationChildBuilder
List of regular expressions for classes that can be deserialized using standard Java deserialization when reading data that might have been stored with a different endpoint, e.g. REST.- Specified by:
addJavaSerialWhiteList
in interfaceConfigurationChildBuilder
-
batchSize
public ConfigurationBuilder batchSize(int batchSize)
Description copied from interface:ConfigurationChildBuilder
Sets the batch size of internal iterators (ie.keySet().iterator()
. Defaults to 10_000- Specified by:
batchSize
in interfaceConfigurationChildBuilder
- Parameters:
batchSize
- the batch size to set- Returns:
- this configuration builder with the batch size set
-
statistics
public StatisticsConfigurationBuilder statistics()
Description copied from interface:ConfigurationChildBuilder
Configures client-side statistics.- Specified by:
statistics
in interfaceConfigurationChildBuilder
-
transaction
public TransactionConfigurationBuilder transaction()
Description copied from interface:ConfigurationChildBuilder
Transaction configuration- Specified by:
transaction
in interfaceConfigurationChildBuilder
-
withProperties
public ConfigurationBuilder withProperties(Properties properties)
Description copied from interface:ConfigurationChildBuilder
Configures this builder using the specified properties. SeeConfigurationBuilder
for a list.- Specified by:
withProperties
in interfaceConfigurationChildBuilder
-
validate
public void validate()
Description copied from interface:Builder
Validate the data in this builder before building the configuration bean- Specified by:
validate
in interfaceBuilder<Configuration>
-
create
public Configuration create()
Description copied from interface:Builder
Create the configuration bean- Specified by:
create
in interfaceBuilder<Configuration>
- Returns:
-
build
public Configuration build()
Description copied from interface:ConfigurationChildBuilder
Builds a configuration object- Specified by:
build
in interfaceConfigurationChildBuilder
-
build
public Configuration build(boolean validate)
-
read
public ConfigurationBuilder read(Configuration template)
Description copied from interface:Builder
Reads the configuration from an already created configuration bean into this builder. Returns an appropriate builder to allow fluent configuration- Specified by:
read
in interfaceBuilder<Configuration>
- Parameters:
template
- the configuration from which to "clone" this config if needed.
-
-