def METHOD_NAME(self, timeout):
    """Set the timeout seconds on the socket."""
    # The problem we're trying to solve is to prevent .read() calls from
    # hanging.  This can happen in rare cases.  What we'd like to ideally
    # do is set a timeout on the .read() call so that callers can retry
    # the request.
    # Unfortunately, this isn't currently possible in requests.
    # See: https://github.com/kennethreitz/requests/issues/1803
    # So what we're going to do is reach into the guts of the stream and
    # grab the socket object, which we can set the timeout on.  We're
    # putting in a check here so in case this interface goes away, we'll
    # know.
    try:
        METHOD_NAME(self._raw_stream, timeout)
    except AttributeError:
        logger.error(
            "Cannot access the socket object of "
            "a streaming response.  It's possible "
            "the interface has changed.",
            exc_info=True,
        )
        raise