code: def ParseLeakFilesTable(
        self, parser_mediator, database=None, table=None, **unused_kwargs):
      
      if database is None:
        raise ValueError('Missing database value.')
  
      if table is None:
        raise ValueError('Missing table value.')
  
      for esedb_record in table.records:
        if parser_mediator.abort:
          break
  
        record_values = self._GetRecordValues(
            parser_mediator, table.name, esedb_record)
  
        event_data = MsieWebCacheLeakFilesEventData()
        event_data.cached_filename = record_values.get('Filename', None)
        event_data.leak_identifier = record_values.get('LeakId', None)
  
        timestamp = record_values.get('CreationTime', None)
        if timestamp:
          date_time = dfdatetime_filetime.Filetime(timestamp=timestamp)
          event = time_events.DateTimeValuesEvent(
              date_time, definitions.TIME_DESCRIPTION_CREATION)
          parser_mediator.ProduceEventWithEventData(event, event_data)
docs: Parses the LeakFiles table.
  
      Args:
        parser_mediator (ParserMediator): mediates interactions between parsers
            and other components, such as storage and dfvfs.
        database (Optional[pyesedb.file]): ESE database.
        table (Optional[pyesedb.table]): table.
  
      Raises:
        ValueError: if the database or table value is missing.