def decode(msg): msg.next_frame() initial_frame = msg.next_frame() type = FixSizedTypesCodec.decode_int(initial_frame.buf, _TYPE_DECODE_OFFSET) is_nullable_exists = False nullable = False if len(initial_frame.buf ) >= _NULLABLE_DECODE_OFFSET + BOOLEAN_SIZE_IN_BYTES: nullable = FixSizedTypesCodec.decode_boolean( initial_frame.buf, _NULLABLE_DECODE_OFFSET) is_nullable_exists = True name = StringCodec.decode(msg) CodecUtil.fast_forward_to_end_frame(msg) return SqlColumnMetadata(name, type, is_nullable_exists, nullable)
def decode_response(msg): initial_frame = msg.next_frame() response = dict() response["status"] = FixSizedTypesCodec.decode_byte( initial_frame.buf, _RESPONSE_STATUS_OFFSET) response["member_uuid"] = FixSizedTypesCodec.decode_uuid( initial_frame.buf, _RESPONSE_MEMBER_UUID_OFFSET) response["serialization_version"] = FixSizedTypesCodec.decode_byte( initial_frame.buf, _RESPONSE_SERIALIZATION_VERSION_OFFSET) response["partition_count"] = FixSizedTypesCodec.decode_int( initial_frame.buf, _RESPONSE_PARTITION_COUNT_OFFSET) response["cluster_id"] = FixSizedTypesCodec.decode_uuid( initial_frame.buf, _RESPONSE_CLUSTER_ID_OFFSET) response["failover_supported"] = FixSizedTypesCodec.decode_boolean( initial_frame.buf, _RESPONSE_FAILOVER_SUPPORTED_OFFSET) response["address"] = CodecUtil.decode_nullable(msg, AddressCodec.decode) response["server_hazelcast_version"] = StringCodec.decode(msg) return response
def decode(msg): msg.next_frame() initial_frame = msg.next_frame() uuid = FixSizedTypesCodec.decode_uuid(initial_frame.buf, _UUID_DECODE_OFFSET) lite_member = FixSizedTypesCodec.decode_boolean( initial_frame.buf, _LITE_MEMBER_DECODE_OFFSET) address = AddressCodec.decode(msg) attributes = MapCodec.decode(msg, StringCodec.decode, StringCodec.decode) version = MemberVersionCodec.decode(msg) is_address_map_exists = False address_map = None if not msg.peek_next_frame().is_end_frame(): address_map = MapCodec.decode(msg, EndpointQualifierCodec.decode, AddressCodec.decode) is_address_map_exists = True CodecUtil.fast_forward_to_end_frame(msg) return MemberInfo(address, uuid, attributes, lite_member, version, is_address_map_exists, address_map)
def decode_response(msg): initial_frame = msg.next_frame() return FixSizedTypesCodec.decode_boolean(initial_frame.buf, _RESPONSE_RESPONSE_OFFSET)
def test_boolean(self): FixSizedTypesCodec.encode_boolean(self.buf, 16, True) message = self.write_and_decode() buf = message.next_frame().buf self.assertEqual(True, FixSizedTypesCodec.decode_boolean(buf, 10))