code: def _ParseLayerConfigJSON(self, parser_mediator, file_object):
      
      file_content = file_object.read()
      file_content = codecs.decode(file_content, self._ENCODING)
  
      json_dict = json.loads(file_content)
  
      if 'docker_version' not in json_dict:
        raise errors.UnableToParseFile(
            'not a valid Docker layer configuration file, missing '
            '\'docker_version\' key.')
  
      if 'created' in json_dict:
        layer_creation_command_array = [
            x.strip() for x in json_dict['container_config']['Cmd']]
        layer_creation_command = ' '.join(layer_creation_command_array).replace(
            '\t', '')
  
        event_data = DockerJSONLayerEventData()
        event_data.command = layer_creation_command
        event_data.layer_id = self._GetIdentifierFromPath(parser_mediator)
  
        timestamp = timelib.Timestamp.FromTimeString(json_dict['created'])
        event = time_events.TimestampEvent(
            timestamp, definitions.TIME_DESCRIPTION_ADDED)
        parser_mediator.ProduceEventWithEventData(event, event_data)
docs: Extracts events from a Docker filesystem layer configuration file.
  
      The path of each filesystem layer config file is:
      DOCKER_DIR/graph/<layer_id>/json
  
      Args:
        parser_mediator (ParserMediator): mediates interactions between parsers
            and other components, such as storage and dfvfs.
        file_object (dfvfs.FileIO): a file-like object.
  
      Raises:
        UnableToParseFile: when the file is not a valid layer config file.