code: def _ExtractFileEntry(
        self, path_spec, destination_path, output_writer, skip_duplicates=True):
      
      file_entry = path_spec_resolver.Resolver.OpenFileEntry(path_spec)
  
      if not file_entry:
        logger.warning('Unable to open file entry for path spec: {0:s}'.format(
            path_spec.comparable))
        return
  
      if not self._filter_collection.Matches(file_entry):
        return
  
      file_entry_processed = False
      for data_stream in file_entry.data_streams:
        if self._abort:
          break
  
        self._ExtractDataStream(
            file_entry, data_stream.name, destination_path, output_writer,
            skip_duplicates=skip_duplicates)
  
        file_entry_processed = True
  
      if not file_entry_processed:
        self._ExtractDataStream(
            file_entry, '', destination_path, output_writer,
            skip_duplicates=skip_duplicates)
docs: Extracts a file entry.
  
      Args:
        path_spec (dfvfs.PathSpec): path specification of the source file.
        destination_path (str): path where the extracted files should be stored.
        output_writer (CLIOutputWriter): output writer.
        skip_duplicates (Optional[bool]): True if files with duplicate content
            should be skipped.