def convert_to_binary_record()

in datahub/batch/batch_serializer.py [0:0]


    def convert_to_binary_record(record, schema_object):
        if isinstance(record, BlobRecord):
            binary_record = BinaryRecord(schema=None, version_id=-1)
            binary_record.set_field(0, record.blob_data)
        else:
            schema = RecordSchema(record.field_list)
            version_id = 0
            if schema_object.schema_register:
                version_id_new = int(schema_object) if isinstance(schema_object, str) else schema_object.schema_register.get_version_id(schema_object.project, schema_object.topic, schema)
                if version_id_new:
                    version_id = version_id_new
            binary_record = BinaryRecord(schema=schema, version_id=version_id)
            for i in range(len(schema.field_list)):
                value = record.get_value(i)
                binary_record.set_field(i, value)
        if record.attributes:
            for key, val in record.attributes.items():
                binary_record.add_attribute(key, val)
        return binary_record