K
- the key type.V
- the value type.public class CacheConfig<K,V> extends Object
ICache
.Modifier and Type | Field and Description |
---|---|
protected javax.cache.configuration.Factory<javax.cache.integration.CacheLoader<K,V>> |
cacheLoaderFactory
The
Factory for the CacheLoader . |
protected javax.cache.configuration.Factory<javax.cache.integration.CacheWriter<? super K,? super V>> |
cacheWriterFactory
The
Factory for the CacheWriter . |
protected javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy> |
expiryPolicyFactory
The
Factory for the ExpiryPolicy . |
protected HotRestartConfig |
hotRestartConfig |
protected boolean |
isManagementEnabled
Whether management is enabled
|
protected boolean |
isReadThrough
A flag indicating if "read-through" mode is required.
|
protected boolean |
isStatisticsEnabled
A flag indicating if statistics gathering is enabled.
|
protected boolean |
isStoreByValue
A flag indicating if the cache will be store-by-value or store-by-reference.
|
protected boolean |
isWriteThrough
A flag indicating if "write-through" mode is required.
|
protected Class<K> |
keyType
The type of keys for
Cache s configured with this
Configuration . |
protected Set<javax.cache.configuration.CacheEntryListenerConfiguration<K,V>> |
listenerConfigurations
The
CacheEntryListenerConfiguration s for the Configuration . |
protected Class<V> |
valueType
The type of values for
Cache s configured with this
Configuration . |
Constructor and Description |
---|
CacheConfig() |
CacheConfig(CacheSimpleConfig simpleConfig) |
CacheConfig(javax.cache.configuration.CompleteConfiguration<K,V> configuration) |
CacheConfig(String name) |
Modifier and Type | Method and Description |
---|---|
CacheConfiguration<K,V> |
addCacheEntryListenerConfiguration(javax.cache.configuration.CacheEntryListenerConfiguration<K,V> cacheEntryListenerConfiguration)
Add a configuration for a
CacheEntryListener . |
protected Set<javax.cache.configuration.CacheEntryListenerConfiguration<K,V>> |
createConcurrentSet() |
boolean |
equals(Object o) |
CacheConfigReadOnly<K,V> |
getAsReadOnly()
Gets immutable version of this cache configuration.
|
int |
getAsyncBackupCount()
Gets the number of asynchronous backups for this
ICache . |
int |
getBackupCount()
Gets the number of synchronous backups for this
ICache . |
Iterable<javax.cache.configuration.CacheEntryListenerConfiguration<K,V>> |
getCacheEntryListenerConfigurations() |
javax.cache.configuration.Factory<javax.cache.integration.CacheLoader<K,V>> |
getCacheLoaderFactory() |
javax.cache.configuration.Factory<javax.cache.integration.CacheWriter<? super K,? super V>> |
getCacheWriterFactory() |
CacheEvictionConfig |
getEvictionConfig()
Gets the
EvictionConfig instance of the eviction configuration for this ICache . |
javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy> |
getExpiryPolicyFactory() |
HotRestartConfig |
getHotRestartConfig()
Gets the
HotRestartConfig for this CacheConfiguration |
InMemoryFormat |
getInMemoryFormat()
Gets the data type that will be used to store records.
|
Class<K> |
getKeyType() |
String |
getManagerPrefix()
Gets the manager prefix of the
ICache , such as "hz://". |
String |
getMergePolicy()
Gets the class name of
CacheMergePolicy
implementation of this cache config. |
String |
getName()
Gets the name of this
ICache . |
String |
getNameWithPrefix()
Gets the full name of the
ICache , including the manager scope prefix. |
List<CachePartitionLostListenerConfig> |
getPartitionLostListenerConfigs()
Gets the partition lost listener references added to cache configuration.
|
String |
getQuorumName()
Gets the name of the associated quorum if any.
|
int |
getTotalBackupCount()
Gets the total backup count (
backupCount + asyncBackupCount ) of the cache. |
String |
getUriString()
Gets the URI string which is the global identifier for this
ICache . |
Class<V> |
getValueType() |
WanReplicationRef |
getWanReplicationRef() |
int |
hashCode() |
boolean |
isManagementEnabled() |
boolean |
isReadThrough() |
boolean |
isStatisticsEnabled() |
boolean |
isStoreByValue() |
boolean |
isWriteThrough() |
void |
readData(ObjectDataInput in)
Reads fields from the input stream
|
CacheConfiguration<K,V> |
removeCacheEntryListenerConfiguration(javax.cache.configuration.CacheEntryListenerConfiguration<K,V> cacheEntryListenerConfiguration)
Remove a configuration for a
CacheEntryListener . |
CacheConfig<K,V> |
setAsyncBackupCount(int asyncBackupCount)
Sets the number of asynchronous backups for this
ICache . |
CacheConfig<K,V> |
setBackupCount(int backupCount)
Sets the number of synchronous backups.
|
CacheConfiguration<K,V> |
setCacheLoaderFactory(javax.cache.configuration.Factory<? extends javax.cache.integration.CacheLoader<K,V>> cacheLoaderFactory)
Set the
CacheLoader factory. |
CacheConfiguration<K,V> |
setCacheWriterFactory(javax.cache.configuration.Factory<? extends javax.cache.integration.CacheWriter<? super K,? super V>> cacheWriterFactory)
Set the
CacheWriter factory. |
CacheConfig |
setEvictionConfig(EvictionConfig evictionConfig)
Sets the
EvictionConfig instance for eviction configuration for this ICache . |
CacheConfiguration<K,V> |
setExpiryPolicyFactory(javax.cache.configuration.Factory<? extends javax.cache.expiry.ExpiryPolicy> expiryPolicyFactory)
Set the
Factory for the ExpiryPolicy . |
CacheConfiguration<K,V> |
setHotRestartConfig(HotRestartConfig hotRestartConfig)
Sets the
HotRestartConfig for this CacheConfiguration |
CacheConfig<K,V> |
setInMemoryFormat(InMemoryFormat inMemoryFormat)
Data type that will be used to store records in this
ICache . |
CacheConfiguration<K,V> |
setManagementEnabled(boolean enabled)
Sets whether or not management is enabled on this cache.
|
CacheConfig<K,V> |
setManagerPrefix(String managerPrefix)
Sets the manager prefix of the
ICache . |
void |
setMergePolicy(String mergePolicy)
Sets the class name of
CacheMergePolicy
implementation to this cache config. |
CacheConfig<K,V> |
setName(String name)
Sets the name of this
ICache . |
CacheConfig |
setPartitionLostListenerConfigs(List<CachePartitionLostListenerConfig> partitionLostListenerConfigs)
Sets the WAN target replication reference.
|
CacheConfig |
setQuorumName(String quorumName)
Associates this cache configuration to a quorum.
|
CacheConfiguration<K,V> |
setReadThrough(boolean isReadThrough)
Set if read-through caching should be used.
|
CacheConfiguration<K,V> |
setStatisticsEnabled(boolean enabled)
Sets whether or not statistics gathering is enabled on this cache.
|
CacheConfiguration<K,V> |
setStoreByValue(boolean storeByValue)
Set if a configured cache should use store-by-value or store-by-reference
semantics.
|
CacheConfiguration<K,V> |
setTypes(Class<K> keyType,
Class<V> valueType)
Sets the expected type of keys and values for a
Cache
configured with this Configuration . |
CacheConfig<K,V> |
setUriString(String uriString)
Sets the URI string, which is the global identifier of the
ICache . |
CacheConfig |
setWanReplicationRef(WanReplicationRef wanReplicationRef) |
CacheConfiguration<K,V> |
setWriteThrough(boolean isWriteThrough)
Set if write-through caching should be used.
|
String |
toString() |
void |
writeData(ObjectDataOutput out)
Writes object fields to output stream
|
protected Set<javax.cache.configuration.CacheEntryListenerConfiguration<K,V>> listenerConfigurations
CacheEntryListenerConfiguration
s for the Configuration
.protected Class<K> keyType
Cache
s configured with this
Configuration
.protected Class<V> valueType
Cache
s configured with this
Configuration
.protected javax.cache.configuration.Factory<javax.cache.integration.CacheLoader<K,V>> cacheLoaderFactory
Factory
for the CacheLoader
.protected javax.cache.configuration.Factory<javax.cache.integration.CacheWriter<? super K,? super V>> cacheWriterFactory
Factory
for the CacheWriter
.protected javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy> expiryPolicyFactory
Factory
for the ExpiryPolicy
.protected boolean isReadThrough
protected boolean isWriteThrough
protected boolean isStatisticsEnabled
protected boolean isStoreByValue
protected boolean isManagementEnabled
protected HotRestartConfig hotRestartConfig
public CacheConfig()
public CacheConfig(String name)
public CacheConfig(CacheSimpleConfig simpleConfig) throws Exception
Exception
public CacheConfigReadOnly<K,V> getAsReadOnly()
public CacheConfig<K,V> setName(String name)
ICache
.name
- The name to set for this ICache
.public String getManagerPrefix()
ICache
, such as "hz://".ICache
.public CacheConfig<K,V> setManagerPrefix(String managerPrefix)
ICache
.managerPrefix
- The manager prefix to set for this ICache
.public String getUriString()
ICache
.ICache
.public CacheConfig<K,V> setUriString(String uriString)
ICache
.uriString
- The URI string to set for this ICache
.public String getNameWithPrefix()
ICache
, including the manager scope prefix.ICache
, including the manager scope prefix.public int getBackupCount()
ICache
.ICache
.getAsyncBackupCount()
public CacheConfig<K,V> setBackupCount(int backupCount)
backupCount
- The number of synchronous backups to set for
this ICache
.IllegalArgumentException
- if backupCount smaller than 0,
or larger than the maximum number of backup,
or the sum of the synchronous and asynchronous backups is larger than
the maximum number of backups.setAsyncBackupCount(int)
public int getAsyncBackupCount()
ICache
.ICache
.setBackupCount(int)
public CacheConfig<K,V> setAsyncBackupCount(int asyncBackupCount)
ICache
.asyncBackupCount
- The number of asynchronous backups to set
for this ICache
.new
- IllegalArgumentException if asyncBackupCount is smaller than 0,
or larger than the maximum number of backups,
or the sum of the synchronous and asynchronous backups is larger
than the maximum number of backups.setBackupCount(int)
,
getAsyncBackupCount()
public int getTotalBackupCount()
backupCount + asyncBackupCount
) of the cache.backupCount + asyncBackupCount
) of the cache.public CacheEvictionConfig getEvictionConfig()
EvictionConfig
instance of the eviction configuration for this ICache
.EvictionConfig
instance of the eviction configuration.public CacheConfig setEvictionConfig(EvictionConfig evictionConfig)
EvictionConfig
instance for eviction configuration for this ICache
.evictionConfig
- The EvictionConfig
instance to set for the eviction configuration.public WanReplicationRef getWanReplicationRef()
public CacheConfig setWanReplicationRef(WanReplicationRef wanReplicationRef)
public List<CachePartitionLostListenerConfig> getPartitionLostListenerConfigs()
public CacheConfig setPartitionLostListenerConfigs(List<CachePartitionLostListenerConfig> partitionLostListenerConfigs)
partitionLostListenerConfigs
- CachePartitionLostListenerConfig list.public InMemoryFormat getInMemoryFormat()
public CacheConfig<K,V> setInMemoryFormat(InMemoryFormat inMemoryFormat)
ICache
.
Possible values:
BINARY (default): keys and values will be stored as binary data.
OBJECT: values will be stored in their object forms.inMemoryFormat
- the record type to set.IllegalArgumentException
- if inMemoryFormat is null.public String getQuorumName()
public CacheConfig setQuorumName(String quorumName)
quorumName
- name of the desired quorum.public String getMergePolicy()
CacheMergePolicy
implementation of this cache config.CacheMergePolicy
implementation of this cache configpublic void setMergePolicy(String mergePolicy)
CacheMergePolicy
implementation to this cache config.mergePolicy
- the class name of CacheMergePolicy
implementation to be set to this cache configpublic void writeData(ObjectDataOutput out) throws IOException
DataSerializable
out
- outputIOException
public void readData(ObjectDataInput in) throws IOException
DataSerializable
in
- inputIOException
public int hashCode()
public boolean equals(Object o)
public CacheConfiguration<K,V> addCacheEntryListenerConfiguration(javax.cache.configuration.CacheEntryListenerConfiguration<K,V> cacheEntryListenerConfiguration)
CacheEntryListener
.addCacheEntryListenerConfiguration
in interface CacheConfiguration<K,V>
cacheEntryListenerConfiguration
- the CacheEntryListenerConfiguration
CacheConfig
IllegalArgumentException
- if the same CacheEntryListenerConfiguration
is used more than oncepublic CacheConfiguration<K,V> removeCacheEntryListenerConfiguration(javax.cache.configuration.CacheEntryListenerConfiguration<K,V> cacheEntryListenerConfiguration)
CacheEntryListener
.removeCacheEntryListenerConfiguration
in interface CacheConfiguration<K,V>
cacheEntryListenerConfiguration
- the CacheEntryListenerConfiguration
to removeCacheConfig
public Iterable<javax.cache.configuration.CacheEntryListenerConfiguration<K,V>> getCacheEntryListenerConfigurations()
getCacheEntryListenerConfigurations
in interface javax.cache.configuration.CompleteConfiguration<K,V>
public boolean isReadThrough()
isReadThrough
in interface javax.cache.configuration.CompleteConfiguration<K,V>
public CacheConfiguration<K,V> setReadThrough(boolean isReadThrough)
CacheConfiguration
It is an invalid configuration to set this to true without specifying a
CacheLoader
Factory
.
setReadThrough
in interface CacheConfiguration<K,V>
isReadThrough
- true if read-through is required, false otherwiseCacheConfiguration
to permit fluent-style method callspublic boolean isWriteThrough()
isWriteThrough
in interface javax.cache.configuration.CompleteConfiguration<K,V>
public CacheConfiguration<K,V> setWriteThrough(boolean isWriteThrough)
CacheConfiguration
It is an invalid configuration to set this to true without specifying a
CacheWriter
Factory
.
setWriteThrough
in interface CacheConfiguration<K,V>
isWriteThrough
- true if write-through is required, false otherwiseCacheConfiguration
to permit fluent-style method callspublic boolean isStatisticsEnabled()
isStatisticsEnabled
in interface javax.cache.configuration.CompleteConfiguration<K,V>
public CacheConfiguration<K,V> setStatisticsEnabled(boolean enabled)
CacheManager.enableStatistics(String, boolean)
.setStatisticsEnabled
in interface CacheConfiguration<K,V>
enabled
- true to enable statistics, false to disable.CacheConfig
public boolean isManagementEnabled()
isManagementEnabled
in interface javax.cache.configuration.CompleteConfiguration<K,V>
public CacheConfiguration<K,V> setManagementEnabled(boolean enabled)
CacheManager.enableManagement(String, boolean)
.setManagementEnabled
in interface CacheConfiguration<K,V>
enabled
- true to enable statistics, false to disable.CacheConfig
public HotRestartConfig getHotRestartConfig()
HotRestartConfig
for this CacheConfiguration
public CacheConfiguration<K,V> setHotRestartConfig(HotRestartConfig hotRestartConfig)
HotRestartConfig
for this CacheConfiguration
hotRestartConfig
- hot restart configCacheConfiguration
instancepublic javax.cache.configuration.Factory<javax.cache.integration.CacheLoader<K,V>> getCacheLoaderFactory()
getCacheLoaderFactory
in interface javax.cache.configuration.CompleteConfiguration<K,V>
public CacheConfiguration<K,V> setCacheLoaderFactory(javax.cache.configuration.Factory<? extends javax.cache.integration.CacheLoader<K,V>> cacheLoaderFactory)
CacheConfiguration
CacheLoader
factory.setCacheLoaderFactory
in interface CacheConfiguration<K,V>
cacheLoaderFactory
- the CacheLoader
Factory
CacheConfiguration
to permit fluent-style method callspublic CacheConfiguration<K,V> setExpiryPolicyFactory(javax.cache.configuration.Factory<? extends javax.cache.expiry.ExpiryPolicy> expiryPolicyFactory)
CacheConfiguration
Factory
for the ExpiryPolicy
. If null
is specified the default ExpiryPolicy
is used.setExpiryPolicyFactory
in interface CacheConfiguration<K,V>
expiryPolicyFactory
- the ExpiryPolicy
Factory
CacheConfiguration
to permit fluent-style method callspublic CacheConfiguration<K,V> setCacheWriterFactory(javax.cache.configuration.Factory<? extends javax.cache.integration.CacheWriter<? super K,? super V>> cacheWriterFactory)
CacheConfiguration
CacheWriter
factory.setCacheWriterFactory
in interface CacheConfiguration<K,V>
cacheWriterFactory
- the CacheWriter
Factory
CacheConfiguration
to permit fluent-style method callspublic javax.cache.configuration.Factory<javax.cache.integration.CacheWriter<? super K,? super V>> getCacheWriterFactory()
getCacheWriterFactory
in interface javax.cache.configuration.CompleteConfiguration<K,V>
public javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy> getExpiryPolicyFactory()
getExpiryPolicyFactory
in interface javax.cache.configuration.CompleteConfiguration<K,V>
public Class<K> getKeyType()
getKeyType
in interface javax.cache.configuration.Configuration<K,V>
public Class<V> getValueType()
getValueType
in interface javax.cache.configuration.Configuration<K,V>
public CacheConfiguration<K,V> setTypes(Class<K> keyType, Class<V> valueType)
Cache
configured with this Configuration
. Setting both to
Object.class
means type-safety checks are not required.
This is used by CacheManager
to ensure that the key and value
types are the same as those configured for the Cache
prior to
returning a requested cache from this method.
Implementations may further perform type checking on mutative cache operations
and throw a ClassCastException
if these checks fail.setTypes
in interface CacheConfiguration<K,V>
keyType
- the expected key typevalueType
- the expected value typeCacheConfig
NullPointerException
- should the key or value type be nullCacheManager.getCache(String, Class, Class)
public boolean isStoreByValue()
isStoreByValue
in interface javax.cache.configuration.Configuration<K,V>
public CacheConfiguration<K,V> setStoreByValue(boolean storeByValue)
setStoreByValue
in interface CacheConfiguration<K,V>
storeByValue
- true
if store-by-value is required,
false
for store-by-referenceCacheConfig
protected Set<javax.cache.configuration.CacheEntryListenerConfiguration<K,V>> createConcurrentSet()
Copyright © 2016 Hazelcast, Inc.. All Rights Reserved.