def METHOD_NAME(self, timeout=None):
    """Poll and wait for the Future to be resolved.
    Args:
        timeout (int):
            How long (in seconds) to wait for the operation to complete.
            If None, wait indefinitely.
    """
    if self._result_set:
        return
    retry_ = self._retry.with_deadline(timeout)
    try:
        retry_(self._done_or_raise)()
    except exceptions.RetryError:
        raise concurrent.futures.TimeoutError(
            'Operation did not complete within the designated '
            'timeout.')