<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def GetMessage(self, log_source, lcid, message_identifier):
 """Retrieves a specific message for a specific Event Log source. Args: log_source (str):
 Event Log source. lcid (int):
 language code identifier (LCID). message_identifier (int):
 message identifier. Returns: str: message string or None if not available. """

    event_log_provider_key = self._GetEventLogProviderKey(log_source)
    if not event_log_provider_key:
      return None

    generator = self._GetMessageFileKeys(event_log_provider_key)
    if not generator:
      return None

    # TODO: cache a number of message strings.
    message_string = None
    for message_file_key in generator:
      message_string = self._GetMessage(
          message_file_key, lcid, message_identifier)

      if message_string:
        break

    if self._string_format == 'wrc':
      message_string = self._ReformatMessageString(message_string)

    return message_string