Package com.hazelcast.config
Class AbstractCacheConfig<K,V>
java.lang.Object
com.hazelcast.config.AbstractCacheConfig<K,V>
- Type Parameters:
K
- the key typeV
- the value type
- All Implemented Interfaces:
CacheConfiguration<K,
,V> DataSerializable
,IdentifiedDataSerializable
,Serializable
,javax.cache.configuration.CompleteConfiguration<K,
,V> javax.cache.configuration.Configuration<K,
V>
- Direct Known Subclasses:
CacheConfig
public abstract class AbstractCacheConfig<K,V>
extends Object
implements CacheConfiguration<K,V>, IdentifiedDataSerializable
Base class for
CacheConfig
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.Factory<javax.cache.integration.CacheLoader<K,
V>>> TheFactory
for theCacheLoader
.protected com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.Factory<javax.cache.integration.CacheWriter<? super K,
? super V>>> TheFactory
for theCacheWriter
.protected ClassLoader
The ClassLoader to be used to resolve key & value types, if setprotected DataPersistenceConfig
protected EventJournalConfig
protected com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy>>
TheFactory
for theExpiryPolicy
.protected HotRestartConfig
protected boolean
Whether management is enabledprotected boolean
A flag indicating if "read-through" mode is required.protected boolean
A flag indicating if statistics gathering is enabled.protected boolean
A flag indicating if the cache will be store-by-value or store-by-reference.protected boolean
A flag indicating if "write-through" mode is required.protected Set<com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.CacheEntryListenerConfiguration<K,
V>>> TheCacheEntryListenerConfiguration
s for theConfiguration
.protected com.hazelcast.internal.serialization.SerializationService
-
Constructor Summary
ConstructorDescriptionAbstractCacheConfig
(javax.cache.configuration.CompleteConfiguration<K, V> configuration) -
Method Summary
Modifier and TypeMethodDescriptionaddCacheEntryListenerConfiguration
(javax.cache.configuration.CacheEntryListenerConfiguration<K, V> cacheEntryListenerConfiguration) Add a configuration for aCacheEntryListener
.protected Set<com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.CacheEntryListenerConfiguration<K,
V>>> boolean
Gets thePersistConfig
for thisCacheConfiguration
Gets theEventJournalConfig
for thisCacheConfiguration
javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy>
int
Returns DataSerializableFactory factory ID for this class.Gets theHotRestartConfig
for thisCacheConfiguration
int
hashCode()
protected boolean
boolean
boolean
boolean
boolean
boolean
protected boolean
removeCacheEntryListenerConfiguration
(javax.cache.configuration.CacheEntryListenerConfiguration<K, V> cacheEntryListenerConfiguration) Remove a configuration for aCacheEntryListener
.setCacheLoaderFactory
(javax.cache.configuration.Factory<? extends javax.cache.integration.CacheLoader<K, V>> cacheLoaderFactory) Set theCacheLoader
factory.setCacheWriterFactory
(javax.cache.configuration.Factory<? extends javax.cache.integration.CacheWriter<? super K, ? super V>> cacheWriterFactory) Set theCacheWriter
factory.protected void
setClassLoader
(ClassLoader classLoader) setDataPersistenceConfig
(DataPersistenceConfig dataPersistenceConfig) Sets theDataPersistenceConfig
for thisCacheConfiguration
setEventJournalConfig
(EventJournalConfig eventJournalConfig) Sets theEventJournalConfig
for thisCacheConfiguration
setExpiryPolicyFactory
(javax.cache.configuration.Factory<? extends javax.cache.expiry.ExpiryPolicy> expiryPolicyFactory) Set theFactory
for theExpiryPolicy
.setHotRestartConfig
(HotRestartConfig hotRestartConfig) Deprecated.setKeyClassName
(String keyClassName) setKeyType
(Class<K> keyType) protected CacheConfiguration<K,
V> setListenerConfigurations
(Set<javax.cache.configuration.CacheEntryListenerConfiguration<K, V>> listeners) setManagementEnabled
(boolean enabled) Sets whether or not management is enabled on this cache.setReadThrough
(boolean isReadThrough) Set if read-through caching should be used.setStatisticsEnabled
(boolean enabled) Sets whether or not statistics gathering is enabled on this cache.setStoreByValue
(boolean storeByValue) Set if a configured cache should use store-by-value or store-by-reference semantics.Sets the expected type of keys and values for aCache
configured with thisConfiguration
.setValueClassName
(String valueClassName) setValueType
(Class<V> valueType) setWriteThrough
(boolean isWriteThrough) Set if write-through caching should be used.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.hazelcast.nio.serialization.DataSerializable
readData, writeData
Methods inherited from interface com.hazelcast.nio.serialization.IdentifiedDataSerializable
getClassId
-
Field Details
-
cacheLoaderFactory
protected com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.Factory<javax.cache.integration.CacheLoader<K,V>>> cacheLoaderFactoryTheFactory
for theCacheLoader
. -
cacheWriterFactory
protected com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.Factory<javax.cache.integration.CacheWriter<? super K,? super V>>> cacheWriterFactoryTheFactory
for theCacheWriter
. -
expiryPolicyFactory
protected com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy>> expiryPolicyFactoryTheFactory
for theExpiryPolicy
. -
isReadThrough
protected boolean isReadThroughA flag indicating if "read-through" mode is required. -
isWriteThrough
protected boolean isWriteThroughA flag indicating if "write-through" mode is required. -
isStatisticsEnabled
protected boolean isStatisticsEnabledA flag indicating if statistics gathering is enabled. -
isStoreByValue
protected boolean isStoreByValueA flag indicating if the cache will be store-by-value or store-by-reference. -
isManagementEnabled
protected boolean isManagementEnabledWhether management is enabled -
hotRestartConfig
-
dataPersistenceConfig
-
eventJournalConfig
-
classLoader
The ClassLoader to be used to resolve key & value types, if set -
serializationService
protected transient com.hazelcast.internal.serialization.SerializationService serializationService -
listenerConfigurations
protected Set<com.hazelcast.cache.impl.DeferredValue<javax.cache.configuration.CacheEntryListenerConfiguration<K,V>>> listenerConfigurationsTheCacheEntryListenerConfiguration
s for theConfiguration
.
-
-
Constructor Details
-
AbstractCacheConfig
public AbstractCacheConfig() -
AbstractCacheConfig
-
-
Method Details
-
addCacheEntryListenerConfiguration
public CacheConfiguration<K,V> addCacheEntryListenerConfiguration(javax.cache.configuration.CacheEntryListenerConfiguration<K, V> cacheEntryListenerConfiguration) Add a configuration for aCacheEntryListener
.- Specified by:
addCacheEntryListenerConfiguration
in interfaceCacheConfiguration<K,
V> - Parameters:
cacheEntryListenerConfiguration
- theCacheEntryListenerConfiguration
- Returns:
- the
CacheConfig
- Throws:
IllegalArgumentException
- if the same CacheEntryListenerConfiguration is used more than once
-
removeCacheEntryListenerConfiguration
public CacheConfiguration<K,V> removeCacheEntryListenerConfiguration(javax.cache.configuration.CacheEntryListenerConfiguration<K, V> cacheEntryListenerConfiguration) Remove a configuration for aCacheEntryListener
.- Specified by:
removeCacheEntryListenerConfiguration
in interfaceCacheConfiguration<K,
V> - Parameters:
cacheEntryListenerConfiguration
- theCacheEntryListenerConfiguration
to remove- Returns:
- the
CacheConfig
-
getCacheEntryListenerConfigurations
-
isReadThrough
public boolean isReadThrough() -
setReadThrough
Description copied from interface:CacheConfiguration
Set if read-through caching should be used.It is an invalid configuration to set this to
true
without specifying aCacheLoader
Factory
.- Specified by:
setReadThrough
in interfaceCacheConfiguration<K,
V> - Parameters:
isReadThrough
-true
if read-through is required,false
otherwise- Returns:
- the
CacheConfiguration
to permit fluent-style method calls
-
isWriteThrough
public boolean isWriteThrough() -
setWriteThrough
Description copied from interface:CacheConfiguration
Set if write-through caching should be used.It is an invalid configuration to set this to
true
without specifying aCacheWriter
Factory
.- Specified by:
setWriteThrough
in interfaceCacheConfiguration<K,
V> - Parameters:
isWriteThrough
-true
if write-through is required,false
otherwise- Returns:
- the
CacheConfiguration
to permit fluent-style method calls
-
isStatisticsEnabled
public boolean isStatisticsEnabled() -
setStatisticsEnabled
Sets whether or not statistics gathering is enabled on this cache.Statistics may be enabled or disabled at runtime via
CacheManager.enableStatistics(String, boolean)
.- Specified by:
setStatisticsEnabled
in interfaceCacheConfiguration<K,
V> - Parameters:
enabled
-true
to enable statistics,false
to disable- Returns:
- the
CacheConfig
-
isManagementEnabled
public boolean isManagementEnabled() -
setManagementEnabled
Sets whether or not management is enabled on this cache.Management may be enabled or disabled at runtime via
CacheManager.enableManagement(String, boolean)
.- Specified by:
setManagementEnabled
in interfaceCacheConfiguration<K,
V> - Parameters:
enabled
-true
to enable management,false
to disable- Returns:
- the
CacheConfig
-
getHotRestartConfig
Gets theHotRestartConfig
for thisCacheConfiguration
- Returns:
- hot restart config
-
getDataPersistenceConfig
Gets thePersistConfig
for thisCacheConfiguration
- Returns:
- dataPersistenceConfig config
-
setHotRestartConfig
@Deprecated public CacheConfiguration<K,V> setHotRestartConfig(@Nonnull HotRestartConfig hotRestartConfig) Deprecated.since 5.0 usesetDataPersistenceConfig(DataPersistenceConfig)
Sets theHotRestartConfig
for thisCacheConfiguration
- Parameters:
hotRestartConfig
- hot restart config- Returns:
- this
CacheConfiguration
instance
-
setDataPersistenceConfig
public CacheConfiguration<K,V> setDataPersistenceConfig(@Nonnull DataPersistenceConfig dataPersistenceConfig) Sets theDataPersistenceConfig
for thisCacheConfiguration
- Parameters:
dataPersistenceConfig
- dataPersistenceConfig config- Returns:
- this
CacheConfiguration
instance
-
getEventJournalConfig
Gets theEventJournalConfig
for thisCacheConfiguration
- Returns:
- event journal config
-
setEventJournalConfig
public CacheConfiguration<K,V> setEventJournalConfig(@Nonnull EventJournalConfig eventJournalConfig) Sets theEventJournalConfig
for thisCacheConfiguration
- Parameters:
eventJournalConfig
- event journal config- Returns:
- this
CacheConfiguration
instance
-
getCacheLoaderFactory
-
setCacheLoaderFactory
public CacheConfiguration<K,V> setCacheLoaderFactory(javax.cache.configuration.Factory<? extends javax.cache.integration.CacheLoader<K, V>> cacheLoaderFactory) Description copied from interface:CacheConfiguration
Set theCacheLoader
factory.- Specified by:
setCacheLoaderFactory
in interfaceCacheConfiguration<K,
V> - Parameters:
cacheLoaderFactory
- theCacheLoader
Factory
- Returns:
- the
CacheConfiguration
to permit fluent-style method calls
-
setExpiryPolicyFactory
public CacheConfiguration<K,V> setExpiryPolicyFactory(javax.cache.configuration.Factory<? extends javax.cache.expiry.ExpiryPolicy> expiryPolicyFactory) Description copied from interface:CacheConfiguration
Set theFactory
for theExpiryPolicy
. Ifnull
is specified the defaultExpiryPolicy
is used.- Specified by:
setExpiryPolicyFactory
in interfaceCacheConfiguration<K,
V> - Parameters:
expiryPolicyFactory
- theExpiryPolicy
Factory
- Returns:
- the
CacheConfiguration
to permit fluent-style method calls
-
setCacheWriterFactory
public CacheConfiguration<K,V> setCacheWriterFactory(javax.cache.configuration.Factory<? extends javax.cache.integration.CacheWriter<? super K, ? super V>> cacheWriterFactory) Description copied from interface:CacheConfiguration
Set theCacheWriter
factory.- Specified by:
setCacheWriterFactory
in interfaceCacheConfiguration<K,
V> - Parameters:
cacheWriterFactory
- theCacheWriter
Factory
- Returns:
- the
CacheConfiguration
to permit fluent-style method calls
-
getCacheWriterFactory
-
getExpiryPolicyFactory
public javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy> getExpiryPolicyFactory() -
getKeyType
-
getKeyClassName
-
setKeyClassName
-
getValueType
-
getValueClassName
-
setValueClassName
-
setTypes
Sets the expected type of keys and values for aCache
configured with thisConfiguration
. Setting both toObject.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 theCache
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.- Specified by:
setTypes
in interfaceCacheConfiguration<K,
V> - Parameters:
keyType
- the expected key typevalueType
- the expected value type- Returns:
- the
CacheConfig
- Throws:
NullPointerException
- should the key or value type be null- See Also:
-
CacheManager.getCache(String, Class, Class)
-
isStoreByValue
public boolean isStoreByValue() -
setStoreByValue
Set if a configured cache should use store-by-value or store-by-reference semantics.- Specified by:
setStoreByValue
in interfaceCacheConfiguration<K,
V> - Parameters:
storeByValue
-true
if store-by-value is required,false
for store-by-reference- Returns:
- the
CacheConfig
-
getFactoryId
public int getFactoryId()Description copied from interface:IdentifiedDataSerializable
Returns DataSerializableFactory factory ID for this class.- Specified by:
getFactoryId
in interfaceIdentifiedDataSerializable
- Returns:
- factory ID
-
createConcurrentSet
-
setKeyType
-
setValueType
-
setListenerConfigurations
-
setListenerConfigurations
-
getListenerConfigurations
-
hasListenerConfiguration
protected boolean hasListenerConfiguration() -
hashCode
public int hashCode() -
equals
-
setClassLoader
-
keyValueTypesEqual
-
setDataPersistenceConfig(DataPersistenceConfig)