Package com.hazelcast.config
Class SerializationConfig
- java.lang.Object
-
- com.hazelcast.config.SerializationConfig
-
public class SerializationConfig extends java.lang.Object
Contains the serialization configuration ofHazelcastInstance
.
-
-
Constructor Summary
Constructors Constructor Description SerializationConfig()
SerializationConfig(SerializationConfig serializationConfig)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SerializationConfig
addClassDefinition(ClassDefinition classDefinition)
SerializationConfig
addDataSerializableFactory(int factoryId, DataSerializableFactory dataSerializableFactory)
SerializationConfig
addDataSerializableFactoryClass(int factoryId, java.lang.Class<? extends DataSerializableFactory> dataSerializableFactoryClass)
SerializationConfig
addDataSerializableFactoryClass(int factoryId, java.lang.String dataSerializableFactoryClass)
SerializationConfig
addPortableFactory(int factoryId, PortableFactory portableFactory)
SerializationConfig
addPortableFactoryClass(int factoryId, java.lang.Class<? extends PortableFactory> portableFactoryClass)
SerializationConfig
addPortableFactoryClass(int factoryId, java.lang.String portableFactoryClass)
SerializationConfig
addSerializerConfig(SerializerConfig serializerConfig)
boolean
equals(java.lang.Object o)
java.nio.ByteOrder
getByteOrder()
Note that result of useNativeByteOrder is not reflected to return value of this method.java.util.Set<ClassDefinition>
getClassDefinitions()
CompactSerializationConfig
getCompactSerializationConfig()
java.util.Map<java.lang.Integer,DataSerializableFactory>
getDataSerializableFactories()
java.util.Map<java.lang.Integer,java.lang.String>
getDataSerializableFactoryClasses()
GlobalSerializerConfig
getGlobalSerializerConfig()
JavaSerializationFilterConfig
getJavaSerializationFilterConfig()
java.util.Map<java.lang.Integer,PortableFactory>
getPortableFactories()
java.util.Map<java.lang.Integer,java.lang.String>
getPortableFactoryClasses()
int
getPortableVersion()
Portable version will be used to differentiate two versions of the same class that have changes on the class, like adding/removing a field or changing a type of a field.java.util.Collection<SerializerConfig>
getSerializerConfigs()
int
hashCode()
boolean
isAllowOverrideDefaultSerializers()
boolean
isAllowUnsafe()
Unsafe, it is not public api of java.boolean
isCheckClassDefErrors()
Default value istrue
(enabled).boolean
isEnableCompression()
Enables compression when default java serialization is used.boolean
isEnableSharedObject()
Enables shared object when default java serialization is used.boolean
isUseNativeByteOrder()
SerializationConfig
setAllowOverrideDefaultSerializers(boolean allowOverrideDefaultSerializers)
This configuration should be used cautiously.SerializationConfig
setAllowUnsafe(boolean allowUnsafe)
Unsafe, it is not public api of java.SerializationConfig
setByteOrder(java.nio.ByteOrder byteOrder)
Note that configuring use native byte order as enabled will override the byte order set by this method.SerializationConfig
setCheckClassDefErrors(boolean checkClassDefErrors)
When enabled, serialization system will check for class definitions error at start and throw an Serialization Exception with error definition.SerializationConfig
setClassDefinitions(java.util.Set<ClassDefinition> classDefinitions)
SerializationConfig
setCompactSerializationConfig(CompactSerializationConfig compactSerializationConfig)
SerializationConfig
setDataSerializableFactories(java.util.Map<java.lang.Integer,DataSerializableFactory> dataSerializableFactories)
SerializationConfig
setDataSerializableFactoryClasses(java.util.Map<java.lang.Integer,java.lang.String> dataSerializableFactoryClasses)
SerializationConfig
setEnableCompression(boolean enableCompression)
Enables compression when default java serialization is used.SerializationConfig
setEnableSharedObject(boolean enableSharedObject)
Enables shared object when default java serialization is used.SerializationConfig
setGlobalSerializerConfig(GlobalSerializerConfig globalSerializerConfig)
SerializationConfig
setJavaSerializationFilterConfig(JavaSerializationFilterConfig javaSerializationFilterConfig)
Allows to configure deserialization protection filter.SerializationConfig
setPortableFactories(java.util.Map<java.lang.Integer,PortableFactory> portableFactories)
SerializationConfig
setPortableFactoryClasses(java.util.Map<java.lang.Integer,java.lang.String> portableFactoryClasses)
SerializationConfig
setPortableVersion(int portableVersion)
SerializationConfig
setSerializerConfigs(java.util.Collection<SerializerConfig> serializerConfigs)
SerializationConfig
setUseNativeByteOrder(boolean useNativeByteOrder)
java.lang.String
toString()
-
-
-
Constructor Detail
-
SerializationConfig
public SerializationConfig()
-
SerializationConfig
public SerializationConfig(SerializationConfig serializationConfig)
-
-
Method Detail
-
getGlobalSerializerConfig
public GlobalSerializerConfig getGlobalSerializerConfig()
- Returns:
- the global serializer configuration
- See Also:
GlobalSerializerConfig
-
setGlobalSerializerConfig
public SerializationConfig setGlobalSerializerConfig(GlobalSerializerConfig globalSerializerConfig)
- Parameters:
globalSerializerConfig
- configuration of serializer that will be used if no other serializer is applicable- Returns:
- GlobalSerializerConfig
-
getSerializerConfigs
public java.util.Collection<SerializerConfig> getSerializerConfigs()
- Returns:
- list of
SerializerConfig
s
-
addSerializerConfig
public SerializationConfig addSerializerConfig(SerializerConfig serializerConfig)
- Parameters:
serializerConfig
- serializer configuration of a class type- Returns:
- configured
SerializerConfig
for chaining
-
setSerializerConfigs
public SerializationConfig setSerializerConfigs(java.util.Collection<SerializerConfig> serializerConfigs)
- Parameters:
serializerConfigs
- lists of serializer configs that will be registered- Returns:
- configured
SerializerConfig
for chaining
-
getPortableVersion
public int getPortableVersion()
Portable version will be used to differentiate two versions of the same class that have changes on the class, like adding/removing a field or changing a type of a field.- Returns:
- version of portable classes
-
setPortableVersion
public SerializationConfig setPortableVersion(int portableVersion)
- Parameters:
portableVersion
- int value for the version of portable classes- Returns:
- configured
SerializerConfig
for chaining
-
getDataSerializableFactoryClasses
public java.util.Map<java.lang.Integer,java.lang.String> getDataSerializableFactoryClasses()
- Returns:
- map of factory ID and corresponding factory class names
- See Also:
DataSerializableFactory
-
setDataSerializableFactoryClasses
public SerializationConfig setDataSerializableFactoryClasses(java.util.Map<java.lang.Integer,java.lang.String> dataSerializableFactoryClasses)
- Parameters:
dataSerializableFactoryClasses
- map of factory ID and corresponding factory class names- Returns:
- configured
SerializerConfig
for chaining - See Also:
DataSerializableFactory
-
addDataSerializableFactoryClass
public SerializationConfig addDataSerializableFactoryClass(int factoryId, java.lang.String dataSerializableFactoryClass)
- Parameters:
factoryId
- factory ID of dataSerializableFactory to be registereddataSerializableFactoryClass
- name of dataSerializableFactory class to be registered- Returns:
- configured
SerializerConfig
for chaining - See Also:
DataSerializableFactory
-
addDataSerializableFactoryClass
public SerializationConfig addDataSerializableFactoryClass(int factoryId, java.lang.Class<? extends DataSerializableFactory> dataSerializableFactoryClass)
- Parameters:
factoryId
- factory ID of dataSerializableFactory to be registereddataSerializableFactoryClass
- dataSerializableFactory class to be registered- Returns:
- configured
SerializerConfig
for chaining - See Also:
DataSerializableFactory
-
getDataSerializableFactories
public java.util.Map<java.lang.Integer,DataSerializableFactory> getDataSerializableFactories()
- Returns:
- map of factory ID and corresponding dataSerializable factories
- See Also:
DataSerializableFactory
-
setDataSerializableFactories
public SerializationConfig setDataSerializableFactories(java.util.Map<java.lang.Integer,DataSerializableFactory> dataSerializableFactories)
- Parameters:
dataSerializableFactories
- map of factory ID and corresponding dataSerializable objects- Returns:
- configured
SerializerConfig
for chaining - See Also:
DataSerializableFactory
-
addDataSerializableFactory
public SerializationConfig addDataSerializableFactory(int factoryId, DataSerializableFactory dataSerializableFactory)
- Parameters:
factoryId
- factory ID of DataSerializableFactory to be registereddataSerializableFactory
- DataSerializableFactory object to be registered- Returns:
- configured
SerializerConfig
for chaining - See Also:
DataSerializableFactory
-
getPortableFactoryClasses
public java.util.Map<java.lang.Integer,java.lang.String> getPortableFactoryClasses()
- Returns:
- map of factory ID and corresponding portable factory names
- See Also:
PortableFactory
-
setPortableFactoryClasses
public SerializationConfig setPortableFactoryClasses(java.util.Map<java.lang.Integer,java.lang.String> portableFactoryClasses)
- Parameters:
portableFactoryClasses
- map of factory ID and corresponding factory class names- Returns:
- configured
SerializerConfig
for chaining - See Also:
PortableFactory
-
addPortableFactoryClass
public SerializationConfig addPortableFactoryClass(int factoryId, java.lang.Class<? extends PortableFactory> portableFactoryClass)
- Parameters:
factoryId
- factory ID of portableFactory to be registeredportableFactoryClass
- portableFactory class to be registered- Returns:
- configured
SerializerConfig
for chaining - See Also:
PortableFactory
-
addPortableFactoryClass
public SerializationConfig addPortableFactoryClass(int factoryId, java.lang.String portableFactoryClass)
- Parameters:
factoryId
- factory ID of portableFactory to be registeredportableFactoryClass
- name of the portableFactory class to be registered- Returns:
- configured
SerializerConfig
for chaining - See Also:
PortableFactory
-
getPortableFactories
public java.util.Map<java.lang.Integer,PortableFactory> getPortableFactories()
- Returns:
- map of factory ID and corresponding portable factories
- See Also:
PortableFactory
-
setPortableFactories
public SerializationConfig setPortableFactories(java.util.Map<java.lang.Integer,PortableFactory> portableFactories)
- Parameters:
portableFactories
- map of factory ID and corresponding factory objects- Returns:
- configured
SerializerConfig
for chaining - See Also:
PortableFactory
-
addPortableFactory
public SerializationConfig addPortableFactory(int factoryId, PortableFactory portableFactory)
- Parameters:
factoryId
- factory ID of portableFactory to be registeredportableFactory
- portableFactory object to be registered- Returns:
- configured
SerializerConfig
for chaining - See Also:
PortableFactory
-
getClassDefinitions
public java.util.Set<ClassDefinition> getClassDefinitions()
- Returns:
- registered class definitions of portable classes
- See Also:
ClassDefinition
-
addClassDefinition
public SerializationConfig addClassDefinition(ClassDefinition classDefinition)
- Parameters:
classDefinition
- the class definition to be registered- Returns:
- configured
SerializerConfig
for chaining - See Also:
ClassDefinition
-
setClassDefinitions
public SerializationConfig setClassDefinitions(java.util.Set<ClassDefinition> classDefinitions)
- Parameters:
classDefinitions
- set of class definitions to be registered- Returns:
- configured
SerializerConfig
for chaining - See Also:
ClassDefinition
-
isCheckClassDefErrors
public boolean isCheckClassDefErrors()
Default value istrue
(enabled). When enabled, serialization system will check for class definitions error at start and throw an Serialization Exception with error definition.- Returns:
true
if enabled,false
otherwise
-
setCheckClassDefErrors
public SerializationConfig setCheckClassDefErrors(boolean checkClassDefErrors)
When enabled, serialization system will check for class definitions error at start and throw an Serialization Exception with error definition.- Parameters:
checkClassDefErrors
- set tofalse
to disable- Returns:
- configured
SerializerConfig
for chaining
-
isUseNativeByteOrder
public boolean isUseNativeByteOrder()
- Returns:
true
if serialization is configured to use native byte order of the underlying platform
-
setUseNativeByteOrder
public SerializationConfig setUseNativeByteOrder(boolean useNativeByteOrder)
- Parameters:
useNativeByteOrder
- set totrue
to use native byte order of the underlying platform- Returns:
- configured
SerializerConfig
for chaining
-
getByteOrder
public java.nio.ByteOrder getByteOrder()
Note that result of useNativeByteOrder is not reflected to return value of this method.- Returns:
- configured byte order
-
setByteOrder
public SerializationConfig setByteOrder(java.nio.ByteOrder byteOrder)
Note that configuring use native byte order as enabled will override the byte order set by this method.- Parameters:
byteOrder
- that serialization will use- Returns:
- configured
SerializerConfig
for chaining
-
isEnableCompression
public boolean isEnableCompression()
Enables compression when default java serialization is used.- Returns:
true
if compression enabled
-
setEnableCompression
public SerializationConfig setEnableCompression(boolean enableCompression)
Enables compression when default java serialization is used.- Parameters:
enableCompression
- set totrue
to enable compression- Returns:
- configured
SerializerConfig
for chaining
-
isEnableSharedObject
public boolean isEnableSharedObject()
Enables shared object when default java serialization is used.Default value is
true
.- Returns:
true
if enabled
-
setEnableSharedObject
public SerializationConfig setEnableSharedObject(boolean enableSharedObject)
Enables shared object when default java serialization is used.- Parameters:
enableSharedObject
- set tofalse
to disable- Returns:
- configured
SerializerConfig
for chaining
-
isAllowUnsafe
public boolean isAllowUnsafe()
Unsafe, it is not public api of java. Use with caution!Default value is
false
.- Returns:
true
if using unsafe is allowed,false
otherwise
-
setAllowUnsafe
public SerializationConfig setAllowUnsafe(boolean allowUnsafe)
Unsafe, it is not public api of java. Use with caution!- Parameters:
allowUnsafe
- set totrue
to allow usage of unsafe- Returns:
- configured
SerializerConfig
for chaining
-
isAllowOverrideDefaultSerializers
public boolean isAllowOverrideDefaultSerializers()
- Returns:
true
if default serializers may be overridden by custom serializers- Since:
- 4.2
-
setAllowOverrideDefaultSerializers
public SerializationConfig setAllowOverrideDefaultSerializers(boolean allowOverrideDefaultSerializers)
This configuration should be used cautiously.Default serializers are used heavily by the hazelcast internally. If any of the instance in the same cluster overrides a default serializer, all the members and clients in the same cluster must override it with the same serializer.
This configuration is introduced specifically to support the following case:
- There was a custom configuration by the user for a type
- Hazelcast decided to add a default serializer for the same type in a future release
To be able to support Rolling Upgrade from an old version to the new version, one needs to make sure of the backward compatibility of the serialization. As a solution, the user will set this property on the new version so that new instances will be able to override new default serializers with their existing custom serializers.
- Parameters:
allowOverrideDefaultSerializers
- value to set- Returns:
- configured
SerializerConfig
for chaining - Since:
- 4.2
-
getJavaSerializationFilterConfig
public JavaSerializationFilterConfig getJavaSerializationFilterConfig()
- Returns:
- the javaSerializationFilterConfig
-
setJavaSerializationFilterConfig
public SerializationConfig setJavaSerializationFilterConfig(JavaSerializationFilterConfig javaSerializationFilterConfig)
Allows to configure deserialization protection filter.- Parameters:
javaSerializationFilterConfig
- the javaSerializationFilterConfig to set (may benull
)
-
setCompactSerializationConfig
public SerializationConfig setCompactSerializationConfig(@Nonnull CompactSerializationConfig compactSerializationConfig)
- Parameters:
compactSerializationConfig
- config for the compact serialization format- Returns:
- configured
SerializerConfig
for chaining - Since:
- 5.2
-
getCompactSerializationConfig
public CompactSerializationConfig getCompactSerializationConfig()
- Returns:
- compact serialization config
- Since:
- 5.2
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-