def _GetRecordValue(self, record, value_entry):
    """Retrieves a specific value from the record.

    Args:
      record (pyesedb.record): ESE record.
      value_entry (int): value entry.

    Returns:
      object: value.

    Raises:
      ValueError: if the value is not supported.
    """
    column_type = record.get_column_type(value_entry)
    long_value = None

    if record.is_long_value(value_entry):
      long_value = record.get_value_data_as_long_value(value_entry)

    if record.is_multi_value(value_entry):
      # TODO: implement
      raise ValueError('Multi value support not implemented yet.')

    if column_type == pyesedb.column_types.NULL:
      return None

    if column_type == pyesedb.column_types.BOOLEAN:
      # TODO: implement
      raise ValueError('Boolean value support not implemented yet.')

    if column_type in self.INTEGER_COLUMN_TYPES:
      if long_value:
        raise ValueError('Long integer value not supported.')
      return record.get_value_data_as_integer(value_entry)

    if column_type in self.FLOATING_POINT_COLUMN_TYPES:
      if long_value:
        raise ValueError('Long floating point value not supported.')
      return record.get_value_data_as_floating_point(value_entry)

    if column_type in self.STRING_COLUMN_TYPES:
      if long_value:
        return long_value.get_data_as_string()
      return record.get_value_data_as_string(value_entry)

    if column_type == pyesedb.column_types.GUID:
      # TODO: implement
      raise ValueError('GUID value support not implemented yet.')

    if long_value:
      return long_value.get_data()
    return record.get_value_data(value_entry)
def _GetRecordValue ( self , record , value_entry ) : column_type = record . get_column_type ( value_entry ) long_value = None if record . is_long_value ( value_entry ) : long_value = record . get_value_data_as_long_value ( value_entry ) if record . is_multi_value ( value_entry ) : raise ValueError ( 'Multi value support not implemented yet.' ) if column_type == pyesedb . column_types . NULL : return None if column_type == pyesedb . column_types . BOOLEAN : raise ValueError ( 'Boolean value support not implemented yet.' ) if column_type in self . INTEGER_COLUMN_TYPES : if long_value : raise ValueError ( 'Long integer value not supported.' ) return record . get_value_data_as_integer ( value_entry ) if column_type in self . FLOATING_POINT_COLUMN_TYPES : if long_value : raise ValueError ( 'Long floating point value not supported.' ) return record . get_value_data_as_floating_point ( value_entry ) if column_type in self . STRING_COLUMN_TYPES : if long_value : return long_value . get_data_as_string ( ) return record . get_value_data_as_string ( value_entry ) if column_type == pyesedb . column_types . GUID : raise ValueError ( 'GUID value support not implemented yet.' ) if long_value : return long_value . get_data ( ) return record . get_value_data ( value_entry )
Retrieves a specific value from the record.

    Args:
      record (pyesedb.record): ESE record.
      value_entry (int): value entry.

    Returns:
      object: value.

    Raises:
      ValueError: if the value is not supported.