Serialization¶
User API for Serialization.
- class ObjectDataOutput[source]¶
Bases:
object
ObjectDataOutput provides an interface to convert any of primitive types or arrays of them to series of bytes and write them on a stream.
- write_from(buff: bytearray, offset: Optional[int] = None, length: Optional[int] = None) None [source]¶
Writes the content of the buffer to this output stream.
- Parameters
buff – Input buffer.
offset – Offset of the buffer where copy begin.
length – Length of data to be copied from the offset into stream.
- write_boolean(val: bool) None [source]¶
Writes a bool value to this output stream.
Single byte value 1 represent True, 0 represent False
- Parameters
val – The bool to be written.
- write_byte(val: int) None [source]¶
Writes a byte value to this output stream.
- Parameters
val – The byte value to be written.
- write_short(val: int) None [source]¶
Writes a short value to this output stream.
- Parameters
val – The short value to be written.
- write_char(val: str) None [source]¶
Writes a char value to this output stream.
- Parameters
val – The char value to be written.
- write_int(val: int) None [source]¶
Writes an int value to this output stream.
- Parameters
val – The int value to be written.
- write_long(val: int) None [source]¶
Writes a long value to this output stream.
- Parameters
val – The long value to be written.
- write_float(val: float) None [source]¶
Writes a float value to this output stream.
- Parameters
val – The float value to be written.
- write_double(val: float) None [source]¶
Writes a double value to this output stream.
- Parameters
val – The double value to be written.
- write_bytes(val: str) None [source]¶
Writes a string to this output stream.
- Parameters
val – The string to be written.
- write_chars(val: str) None [source]¶
Writes every character of string to this output stream.
- Parameters
val – The string to be written.
- write_string(val: str) None [source]¶
Writes UTF-8 string to this output stream.
- Parameters
val – The UTF-8 string to be written.
- write_utf(val: str) None [source]¶
Writes UTF-8 string to this output stream.
Deprecated since version 4.1: This method is deprecated and will be removed in the next major version. Use
write_string()
instead.- Parameters
val – The UTF-8 string to be written.
- write_byte_array(val: bytearray) None [source]¶
Writes a byte array to this output stream.
- Parameters
val – The byte array to be written.
- write_boolean_array(val: Sequence[bool]) None [source]¶
Writes a bool array to this output stream.
- Parameters
val – The bool array to be written.
- write_char_array(val: Sequence[str]) None [source]¶
Writes a char array to this output stream.
- Parameters
val – The char array to be written.
- write_int_array(val: Sequence[int]) None [source]¶
Writes a int array to this output stream.
- Parameters
val – The int array to be written.
- write_long_array(val: Sequence[int]) None [source]¶
Writes a long array to this output stream.
- Parameters
val – The long array to be written.
- write_double_array(val: Sequence[float]) None [source]¶
Writes a double array to this output stream.
- Parameters
val – The double array to be written.
- write_float_array(val: Sequence[float]) None [source]¶
Writes a float array to this output stream.
- Parameters
val – The float array to be written.
- write_short_array(val: Sequence[int]) None [source]¶
Writes a short array to this output stream.
- Parameters
val – The short array to be written.
- write_string_array(val: Sequence[str]) None [source]¶
Writes a UTF-8 String array to this output stream.
- Parameters
val – The UTF-8 String array to be written.
- write_utf_array(val: Sequence[str]) None [source]¶
Writes a UTF-8 String array to this output stream.
Deprecated since version 4.1: This method is deprecated and will be removed in the next major version. Use
write_string_array()
instead.- Parameters
val – The UTF-8 String array to be written.
- write_object(val: Any) None [source]¶
Writes an object to this output stream.
- Parameters
val – The object to be written.
- class ObjectDataInput[source]¶
Bases:
object
ObjectDataInput provides an interface to read bytes from a stream and reconstruct it to any of primitive types or arrays of them.
- read_into(buff: bytearray, offset: Optional[int] = None, length: Optional[int] = None) bytearray [source]¶
Reads the content of the buffer into an array of bytes.
- Parameters
buff – Input buffer.
offset – Offset of the buffer where the read begin.
length – Length of data to be read.
- Returns
The read data.
- skip_bytes(count: int) int [source]¶
Skips over given number of bytes from input stream.
- Parameters
count – Number of bytes to be skipped.
- Returns
The actual number of bytes skipped.
- read_boolean() bool [source]¶
Reads 1 byte from input stream and convert it to a bool value.
- Returns
The bool value read.
- read_byte() int [source]¶
Reads 1 byte from input stream and returns it.
- Returns
The byte value read.
- read_unsigned_byte() int [source]¶
Reads 1 byte from input stream, zero-extends it and returns.
- Returns
The unsigned byte value read.
- read_short() int [source]¶
Reads 2 bytes from input stream and returns a short value.
- Returns
The short value read.
- read_unsigned_short() int [source]¶
Reads 2 bytes from input stream and returns an int value.
- Returns
The unsigned short value read.
- read_char() str [source]¶
Reads 2 bytes from the input stream and returns a str value.
- Returns
The char value read.
- read_int() int [source]¶
Reads 4 bytes from input stream and returns an int value.
- Returns
The int value read.
- read_long() int [source]¶
Reads 8 bytes from input stream and returns a long value.
- Returns
The int value read.
- read_float() float [source]¶
Reads 4 bytes from input stream and returns a float value.
- Returns
The float value read.
- read_double() float [source]¶
Reads 8 bytes from input stream and returns a double value.
- Returns
The double value read.
- read_string() str [source]¶
Reads a UTF-8 string from input stream and returns it.
- Returns
The UTF-8 string read.
- read_utf() str [source]¶
Reads a UTF-8 string from input stream and returns it.
Deprecated since version 4.1: This method is deprecated and will be removed in the next major version. Use
read_string()
instead.- Returns
The UTF-8 string read.
- read_byte_array() bytearray [source]¶
Reads a byte array from input stream and returns it.
- Returns
The byte array read.
- read_boolean_array() List[bool] [source]¶
Reads a bool array from input stream and returns it.
- Returns
The bool array read.
- read_char_array() List[str] [source]¶
Reads a char array from input stream and returns it.
- Returns
The char array read.
- read_int_array() List[int] [source]¶
Reads a int array from input stream and returns it.
- Returns
The int array read.
- read_long_array() List[int] [source]¶
Reads a long array from input stream and returns it.
- Returns
The long array read.
- read_double_array() List[float] [source]¶
Reads a double array from input stream and returns it.
- Returns
The double array read.
- read_float_array() List[float] [source]¶
Reads a float array from input stream and returns it.
- Returns
The float array read.
- read_short_array() List[int] [source]¶
Reads a short array from input stream and returns it.
- Returns
The short array read.
- read_string_array() List[str] [source]¶
Reads a UTF-8 string array from input stream and returns it.
- Returns
The UTF-8 string array read.
- read_utf_array() List[str] [source]¶
Reads a UTF-8 string array from input stream and returns it.
Deprecated since version 4.1: This method is deprecated and will be removed in the next major version. Use
read_string_array()
instead.- Returns
The UTF-8 string array read.
- class IdentifiedDataSerializable[source]¶
Bases:
object
IdentifiedDataSerializable is an alternative serialization method to Python pickle, which also avoids reflection during de-serialization.
Each IdentifiedDataSerializable is created by a registered DataSerializableFactory.
- write_data(object_data_output: hazelcast.serialization.api.ObjectDataOutput) None [source]¶
Writes object fields to output stream.
- Parameters
object_data_output – The output.
- read_data(object_data_input: hazelcast.serialization.api.ObjectDataInput) None [source]¶
Reads fields from the input stream.
- Parameters
object_data_input – The input.
- class Portable[source]¶
Bases:
object
Portable provides an alternative serialization method.
Instead of relying on reflection, each Portable is created by a registered PortableFactory. Portable serialization has the following advantages:
Support multiversion of the same object type.
Fetching individual fields without having to rely on reflection.
Querying and indexing support without de-serialization and/or reflection.
- write_portable(writer: hazelcast.serialization.api.PortableWriter) None [source]¶
Serialize this portable object using given PortableWriter.
- Parameters
writer – The PortableWriter.
- read_portable(reader: hazelcast.serialization.api.PortableReader) None [source]¶
Read portable fields using PortableReader.
- Parameters
reader – The PortableReader.
- class StreamSerializer[source]¶
Bases:
object
A base class for custom serialization.
- write(out: hazelcast.serialization.api.ObjectDataOutput, obj: Any) None [source]¶
Writes object to ObjectDataOutput
- Parameters
out – Stream that object will be written to.
obj – The object to be written.
- read(inp: hazelcast.serialization.api.ObjectDataInput) Any [source]¶
Reads object from objectDataInputStream
- Parameters
inp – Stream that object will read from.
- Returns
The read object.
- class PortableReader[source]¶
Bases:
object
Provides a mean of reading portable fields from binary in form of Python primitives and arrays of these primitives, nested portable fields and array of portable fields.
- get_version() int [source]¶
Returns the global version of portable classes.
- Returns
Global version of portable classes.
- has_field(field_name: str) bool [source]¶
Determine whether the field name exists in this portable class or not.
- Parameters
field_name – name of the field (does not support nested paths).
- Returns
True
if the field name exists in class,False
otherwise.
- get_field_names() Set[str] [source]¶
Returns the set of field names on this portable class.
- Returns
Set of field names on this portable class.
- get_field_type(field_name: str) hazelcast.serialization.portable.classdef.FieldType [source]¶
Returns the field type of given field name.
- Parameters
field_name – Name of the field.
- Returns
The field type.
- get_field_class_id(field_name: str) int [source]¶
Returns the class id of given field.
- Parameters
field_name – Name of the field.
- Returns
Class id of given field.
- read_int(field_name: str) int [source]¶
Reads a primitive int.
- Parameters
field_name – Name of the field.
- Returns
The int value read.
- read_long(field_name: str) int [source]¶
Reads a primitive long.
- Parameters
field_name – Name of the field.
- Returns
The long value read.
- read_string(field_name: str) str [source]¶
Reads a UTF-8 String.
- Parameters
field_name – Name of the field.
- Returns
The UTF-8 String read.
- read_utf(field_name: str) str [source]¶
Reads a UTF-8 String.
Deprecated since version 4.1: This method is deprecated and will be removed in the next major version. Use
read_string()
instead.- Parameters
field_name – Name of the field.
- Returns
The UTF-8 String read.
- read_boolean(field_name: str) bool [source]¶
Reads a primitive bool.
- Parameters
field_name – Name of the field.
- Returns
The bool value read.
- read_byte(field_name: str) int [source]¶
Reads a primitive byte.
- Parameters
field_name – Name of the field.
- Returns
The byte value read.
- read_char(field_name: str) str [source]¶
Reads a primitive char.
- Parameters
field_name – Name of the field.
- Returns
The char value read.
- read_double(field_name: str) float [source]¶
Reads a primitive double.
- Parameters
field_name – Name of the field.
- Returns
The double value read.
- read_float(field_name: str) float [source]¶
Reads a primitive float.
- Parameters
field_name – Name of the field.
- Returns
The float value read.
- read_short(field_name: str) int [source]¶
Reads a primitive short.
- Parameters
field_name – Name of the field.
- Returns
The short value read.
- read_portable(field_name: str) hazelcast.serialization.api.Portable [source]¶
Reads a portable.
- Parameters
field_name – Name of the field.
- Returns
The portable read.
- read_byte_array(field_name: str) bytearray [source]¶
Reads a primitive byte array.
- Parameters
field_name – Name of the field.
- Returns
The byte array read.
- read_boolean_array(field_name: str) List[bool] [source]¶
Reads a primitive bool array.
- Parameters
field_name – Name of the field.
- Returns
The bool array read.
- read_char_array(field_name: str) List[str] [source]¶
Reads a primitive char array.
- Parameters
field_name – Name of the field.
- Returns
The char array read.
- read_int_array(field_name: str) List[int] [source]¶
Reads a primitive int array.
- Parameters
field_name – Name of the field.
- Returns
The int array read.
- read_long_array(field_name: str) List[int] [source]¶
Reads a primitive long array.
- Parameters
field_name – Name of the field.
- Returns
The long array read.
- read_double_array(field_name: str) List[float] [source]¶
Reads a primitive double array.
- Parameters
field_name – Name of the field.
- Returns
The double array read.
- read_float_array(field_name: str) List[float] [source]¶
Reads a primitive float array.
- Parameters
field_name – Name of the field.
- Returns
The float array read.
- read_short_array(field_name: str) List[int] [source]¶
Reads a primitive short array.
- Parameters
field_name – Name of the field.
- Returns
The short array read.
- read_string_array(field_name: str) List[str] [source]¶
Reads a UTF-8 String array.
- Parameters
field_name – Name of the field.
- Returns
The UTF-8 String array read.
- read_utf_array(field_name: str) List[str] [source]¶
Reads a UTF-8 String array.
Deprecated since version 4.1: This method is deprecated and will be removed in the next major version. Use
read_string_array()
instead.- Parameters
field_name – Name of the field.
- Returns
The UTF-8 String array read.
- read_portable_array(field_name: str) List[hazelcast.serialization.api.Portable] [source]¶
Reads a portable array.
- Parameters
field_name – Name of the field.
- Returns
The portable array read.
- get_raw_data_input() hazelcast.serialization.api.ObjectDataInput [source]¶
After reading portable fields, one can read remaining fields in old fashioned way consecutively from the end of stream. After get_raw_data_input() called, no data can be read.
- Returns
The input.
- class PortableWriter[source]¶
Bases:
object
Provides a mean of writing portable fields to a binary in form of Python primitives and arrays of these primitives, nested portable fields and array of portable fields.
- write_int(field_name: str, value: int) None [source]¶
Writes a primitive int.
- Parameters
field_name – Name of the field.
value – Int value to be written.
- write_long(field_name: str, value: int) None [source]¶
Writes a primitive long.
- Parameters
field_name – Name of the field.
value – Long value to be written.
- write_string(field_name: str, value: str) None [source]¶
Writes an UTF string.
- Parameters
field_name – Name of the field.
value – UTF string value to be written.
- write_utf(field_name: str, value: str) None [source]¶
Writes an UTF string.
Deprecated since version 4.1: This method is deprecated and will be removed in the next major version. Use
write_string()
instead.- Parameters
field_name – Name of the field.
value – UTF string value to be written.
- write_boolean(field_name: str, value: bool) None [source]¶
Writes a primitive bool.
- Parameters
field_name – Name of the field.
value – Bool value to be written.
- write_byte(field_name: str, value: int) None [source]¶
Writes a primitive byte.
- Parameters
field_name – Name of the field.
value – Byte value to be written.
- write_char(field_name: str, value: str) None [source]¶
Writes a primitive char.
- Parameters
field_name – Name of the field.
value – Char value to be written.
- write_double(field_name: str, value: float) None [source]¶
Writes a primitive double.
- Parameters
field_name – Name of the field.
value – Double value to be written.
- write_float(field_name: str, value: float) None [source]¶
Writes a primitive float.
- Parameters
field_name – Name of the field.
value – Float value to be written.
- write_short(field_name: str, value: int) None [source]¶
Writes a primitive short.
- Parameters
field_name – Name of the field.
value – Short value to be written.
- write_portable(field_name: str, portable: hazelcast.serialization.api.Portable) None [source]¶
Writes a Portable.
- Parameters
field_name – Name of the field.
portable – Portable to be written.
- write_null_portable(field_name: str, factory_id: int, class_id: int) None [source]¶
To write a null portable value, user needs to provide class and factory ids of related class.
- Parameters
field_name – Name of the field.
factory_id – Factory id of related portable class.
class_id – Class id of related portable class.
- write_byte_array(field_name: str, values: bytearray) None [source]¶
Writes a primitive byte array.
- Parameters
field_name – Name of the field.
values – Bytearray to be written.
- write_boolean_array(field_name: str, values: Sequence[bool]) None [source]¶
Writes a primitive bool array.
- Parameters
field_name – Name of the field.
values – Bool array to be written.
- write_char_array(field_name: str, values: Sequence[str]) None [source]¶
Writes a primitive char array.
- Parameters
field_name – Name of the field.
values – Char array to be written.
- write_int_array(field_name: str, values: Sequence[int]) None [source]¶
Writes a primitive int array.
- Parameters
field_name – Name of the field.
values – Int array to be written.
- write_long_array(field_name: str, values: Sequence[int]) None [source]¶
Writes a primitive long array.
- Parameters
field_name – Name of the field.
values – Long array to be written.
- write_double_array(field_name: str, values: Sequence[float]) None [source]¶
Writes a primitive double array.
- Parameters
field_name – Name of the field.
values – Double array to be written.
- write_float_array(field_name: str, values: Sequence[float]) None [source]¶
Writes a primitive float array.
- Parameters
field_name – Name of the field.
values – Float array to be written.
- write_short_array(field_name: str, values: Sequence[int]) None [source]¶
Writes a primitive short array.
- Parameters
field_name – Name of the field.
values – Short array to be written.
- write_string_array(field_name: str, values: Sequence[str]) None [source]¶
Writes a UTF-8 String array.
- Parameters
field_name – Name of the field.
values – UTF-8 String array to be written.
- write_utf_array(field_name: str, values: Sequence[str]) None [source]¶
Writes a UTF-8 String array.
Deprecated since version 4.1: This method is deprecated and will be removed in the next major version. Use
write_string_array()
instead.- Parameters
field_name – Name of the field.
values – UTF-8 String array to be written.
- write_portable_array(field_name: str, values: Sequence[hazelcast.serialization.api.Portable]) None [source]¶
Writes a portable array.
- Parameters
field_name – Name of the field.
values – Portable array to be written.
- get_raw_data_output() hazelcast.serialization.api.ObjectDataOutput [source]¶
After writing portable fields, one can write remaining fields in old fashioned way consecutively at the end of stream. After get_raw_data_output() called, no data can be written.
- Returns
The output.
- class CompactReader[source]¶
Bases:
abc.ABC
Provides means of reading compact serialized fields from the binary data.
Read operations might throw
HazelcastSerializationError
when a field with the given name is not found or there is a type mismatch. On such occasions, one might provide default values to the read methods to return it in case of the failure scenarios described above. Providing default values might be especially useful, if the class might evolve in future, either by adding or removing fields.Warning
This API is in the BETA status and any part of it might be changed without a prior notice, until it is promoted to the stable status.
- abstract get_field_kind(field_name)[source]¶
Returns the FieldKind for the given field.
- Parameters
field_name – Name of the field.
- Returns
Field kind for the given field. or FieldKind.NOT_AVAILABLE if the field does not exist.
- abstract read_boolean(field_name: str) bool [source]¶
Reads a boolean.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_nullable_boolean(field_name: str) Optional[bool] [source]¶
Reads a nullable boolean.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_int8(field_name: str) int [source]¶
Reads an 8-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_nullable_int8(field_name: str) Optional[int] [source]¶
Reads a nullable 8-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_int16(field_name: str) int [source]¶
Reads a 16-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_nullable_int16(field_name: str) Optional[int] [source]¶
Reads a nullable 16-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_int32(field_name: str) int [source]¶
Reads a 32-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_nullable_int32(field_name: str) Optional[int] [source]¶
Reads a nullable 32-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_int64(field_name: str) int [source]¶
Reads a 64-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_nullable_int64(field_name: str) Optional[int] [source]¶
Reads a nullable 64-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_float32(field_name: str) float [source]¶
Reads a 32-bit IEEE 754 floating point number.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_nullable_float32(field_name: str) Optional[float] [source]¶
Reads a nullable 32-bit IEEE 754 floating point number.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_float64(field_name: str) float [source]¶
Reads a 64-bit IEEE 754 floating point number.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_nullable_float64(field_name: str) Optional[float] [source]¶
Reads a nullable 64-bit IEEE 754 floating point number.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_string(field_name: str) Optional[str] [source]¶
Reads an UTF-8 encoded string.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_decimal(field_name: str) Optional[decimal.Decimal] [source]¶
Reads an arbitrary precision and scale floating point number.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_time(field_name: str) Optional[datetime.time] [source]¶
Reads a time consisting of hour, minute, second, and nanoseconds.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_date(field_name: str) Optional[datetime.date] [source]¶
Reads a date consisting of year, month, and day.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_timestamp(field_name: str) Optional[datetime.datetime] [source]¶
Reads a timestamp consisting of date and time.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_timestamp_with_timezone(field_name: str) Optional[datetime.datetime] [source]¶
Reads a timestamp with timezone consisting of date, time and timezone offset.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_compact(field_name: str) Optional[Any] [source]¶
Reads a compact object.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_boolean(field_name: str) Optional[List[bool]] [source]¶
Reads an array of booleans.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_nullable_boolean(field_name: str) Optional[List[Optional[bool]]] [source]¶
Reads an array of nullable booleans.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_int8(field_name: str) Optional[List[int]] [source]¶
Reads an array of 8-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_nullable_int8(field_name: str) Optional[List[Optional[int]]] [source]¶
Reads an array of nullable 8-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_int16(field_name: str) Optional[List[int]] [source]¶
Reads an array of 16-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_nullable_int16(field_name: str) Optional[List[Optional[int]]] [source]¶
Reads an array of nullable 16-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_int32(field_name: str) Optional[List[int]] [source]¶
Reads an array of 32-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_nullable_int32(field_name: str) Optional[List[Optional[int]]] [source]¶
Reads an array of nullable 32-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_int64(field_name: str) Optional[List[int]] [source]¶
Reads an array of 64-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_nullable_int64(field_name: str) Optional[List[Optional[int]]] [source]¶
Reads an array of nullable 64-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_float32(field_name: str) Optional[List[float]] [source]¶
Reads an array of 32-bit IEEE 754 floating point numbers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_nullable_float32(field_name: str) Optional[List[Optional[float]]] [source]¶
Reads an array of nullable 32-bit IEEE 754 floating point numbers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_float64(field_name: str) Optional[List[float]] [source]¶
Reads an array of 64-bit IEEE 754 floating point numbers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_nullable_float64(field_name: str) Optional[List[Optional[float]]] [source]¶
Reads an array of nullable 64-bit IEEE 754 floating point numbers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_string(field_name: str) Optional[List[Optional[str]]] [source]¶
Reads an array of UTF-8 encoded strings.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_decimal(field_name: str) Optional[List[Optional[decimal.Decimal]]] [source]¶
Reads an array of arbitrary precision and scale floating point numbers.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_time(field_name: str) Optional[List[Optional[datetime.time]]] [source]¶
Reads an array of times consisting of hour, minute, second, and nanoseconds.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_date(field_name: str) Optional[List[Optional[datetime.date]]] [source]¶
Reads an array of dates consisting of year, month, and day.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_timestamp(field_name: str) Optional[List[Optional[datetime.datetime]]] [source]¶
Reads an array of timestamps consisting of date and time.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_timestamp_with_timezone(field_name: str) Optional[List[Optional[datetime.datetime]]] [source]¶
Reads an array of timestamp with timezones consisting of date, time and timezone offset.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- abstract read_array_of_compact(field_name: str) Optional[List[Optional[Any]]] [source]¶
Reads an array of compact objects.
- Parameters
field_name – Name of the field.
- Returns
The value of the field.
- Raises
HazelcastSerializationError – If the field does not exist in the schema or the type of the field does not match with the one defined in the schema.
- class CompactWriter[source]¶
Bases:
abc.ABC
Provides means of writing compact serialized fields to the binary data.
Warning
This API is in the BETA status and any part of it might be changed without a prior notice, until it is promoted to the stable status.
- abstract write_boolean(field_name: str, value: bool) None [source]¶
Writes a boolean.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_nullable_boolean(field_name: str, value: Optional[bool]) None [source]¶
Writes a nullable boolean.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_int8(field_name: str, value: int) None [source]¶
Writes an 8-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_nullable_int8(field_name: str, value: Optional[int]) None [source]¶
Writes a nullable 8-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_int16(field_name: str, value: int) None [source]¶
Writes a 16-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_nullable_int16(field_name: str, value: Optional[int]) None [source]¶
Writes a nullable 16-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_int32(field_name: str, value: int) None [source]¶
Writes a 32-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_nullable_int32(field_name: str, value: Optional[int]) None [source]¶
Writes a nullable 32-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_int64(field_name: str, value: int) None [source]¶
Writes a 64-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_nullable_int64(field_name: str, value: Optional[int]) None [source]¶
Writes a nullable 64-bit two’s complement signed integer.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_float32(field_name: str, value: float) None [source]¶
Writes a 32-bit IEEE 754 floating point number.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_nullable_float32(field_name: str, value: Optional[float]) None [source]¶
Writes a nullable 32-bit IEEE 754 floating point number.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_float64(field_name: str, value: float) None [source]¶
Writes a 64-bit IEEE 754 floating point number.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_nullable_float64(field_name: str, value: Optional[float]) None [source]¶
Writes a nullable 64-bit IEEE 754 floating point number.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_string(field_name: str, value: Optional[str]) None [source]¶
Writes an UTF-8 encoded string.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_decimal(field_name: str, value: Optional[decimal.Decimal]) None [source]¶
Writes an arbitrary precision and scale floating point number.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_time(field_name: str, value: Optional[datetime.time]) None [source]¶
Writes a time consisting of hour, minute, second, and nanoseconds.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_date(field_name: str, value: Optional[datetime.date]) None [source]¶
Writes a date consisting of year, month, and day.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_timestamp(field_name: str, value: Optional[datetime.datetime]) None [source]¶
Writes a timestamp consisting of date and time.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_timestamp_with_timezone(field_name: str, value: Optional[datetime.datetime]) None [source]¶
Writes a timestamp with timezone consisting of date, time, and timezone offset.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_compact(field_name: str, value: Optional[Any]) None [source]¶
Writes a nested compact object.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_boolean(field_name: str, value: Optional[List[bool]]) None [source]¶
Writes an array of booleans.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_nullable_boolean(field_name: str, value: Optional[List[Optional[bool]]]) None [source]¶
Writes an array of nullable booleans.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_int8(field_name: str, value: Optional[List[int]]) None [source]¶
Writes an array of 8-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_nullable_int8(field_name: str, value: Optional[List[Optional[int]]]) None [source]¶
Writes an array of nullable 8-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_int16(field_name: str, value: Optional[List[int]]) None [source]¶
Writes an array of 16-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_nullable_int16(field_name: str, value: Optional[List[Optional[int]]]) None [source]¶
Writes an array of nullable 16-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_int32(field_name: str, value: Optional[List[int]]) None [source]¶
Writes an array of 32-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_nullable_int32(field_name: str, value: Optional[List[Optional[int]]]) None [source]¶
Writes an array of nullable 32-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_int64(field_name: str, value: Optional[List[int]]) None [source]¶
Writes an array of 64-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_nullable_int64(field_name: str, value: Optional[List[Optional[int]]]) None [source]¶
Writes an array of nullable 64-bit two’s complement signed integers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_float32(field_name: str, value: Optional[List[float]]) None [source]¶
Writes an array of 32-bit IEEE 754 floating point numbers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_nullable_float32(field_name: str, value: Optional[List[Optional[float]]]) None [source]¶
Writes an array of nullable 32-bit IEEE 754 floating point numbers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_float64(field_name: str, value: Optional[List[float]]) None [source]¶
Writes an array of 64-bit IEEE 754 floating point numbers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_nullable_float64(field_name: str, value: Optional[List[Optional[float]]]) None [source]¶
Writes an array of nullable 64-bit IEEE 754 floating point numbers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_string(field_name: str, value: Optional[List[Optional[str]]]) None [source]¶
Writes an array of UTF-8 encoded strings.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_decimal(field_name: str, value: Optional[List[Optional[decimal.Decimal]]]) None [source]¶
Writes an array of arbitrary precision and scale floating point numbers.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_time(field_name: str, value: Optional[List[Optional[datetime.time]]]) None [source]¶
Writes an array of times consisting of hour, minute, second, and nanoseconds.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_date(field_name: str, value: Optional[List[Optional[datetime.date]]]) None [source]¶
Writes an array of dates consisting of year, month, and day.
- Parameters
field_name – Name of the field.
value – Value to be written.
- abstract write_array_of_timestamp(field_name: str, value: Optional[List[Optional[datetime.datetime]]]) None [source]¶
Writes an array of timestamps consisting of date and time.
- Parameters
field_name – Name of the field.
value – Value to be written.
- class CompactSerializer(*args, **kwds)[source]¶
Bases:
Generic
[hazelcast.serialization.api.CompactSerializableClass
],abc.ABC
Defines the contract of the serializers used for Compact serialization.
write()
andread()
methods must be consistent with each other.Warning
This API is in the BETA status and any part of it might be changed without a prior notice, until it is promoted to the stable status.
- abstract read(reader: hazelcast.serialization.api.CompactReader) hazelcast.serialization.api.CompactSerializableClass [source]¶
Deserializes the object from the reader.
- Parameters
reader – Reader to read fields of an object.
- Returns
The object read.
- Raises
hazelcast.errors.HazelcastSerializationError – In case of failure to read.
- abstract write(writer: hazelcast.serialization.api.CompactWriter, obj: hazelcast.serialization.api.CompactSerializableClass) None [source]¶
Serializes the object to writer.
- Parameters
writer – Writer to serialize the fields.
obj – Object to be serialized.
- Raises
hazelcast.errors.HazelcastSerializationError – In case of failure to write.