def _get_refreshed_check_result(self, check_id):
        """
        Given the ``check_id``, return the dict of Trusted Advisor check
        results. This handles refreshing the Trusted Advisor check, if desired,
        according to ``self.refresh_mode`` and ``self.refresh_timeout``.

        :param check_id: the Trusted Advisor check ID
        :type check_id: str
        :returns: dict check result. The return value of
          :py:meth:`Support.Client.describe_trusted_advisor_check_result`
        :rtype: dict
        """
        # handle a refresh_mode of None right off the bat
        if self.refresh_mode is None:
            logger.info("Not refreshing Trusted Advisor check (refresh mode "
                        "is None)")
            return self._get_check_result(check_id)[0]
        logger.debug("Handling refresh of check: %s", check_id)
        # if we want to refresh, step 1 is to see if we can yet...
        if not self._can_refresh_check(check_id):
            return self._get_check_result(check_id)[0]
        # either it's not too soon to refresh, or we have no idea...
        if isinstance(self.refresh_mode, type(1)):
            # mode is an int, check the last refresh time and compare
            checks, check_datetime = self._get_check_result(check_id)
            logger.debug('ta_refresh_mode older; check last refresh: %s; '
                         'threshold=%d seconds', check_datetime,
                         self.refresh_mode)
            if check_datetime >= datetime.now(utc) - timedelta(
                    seconds=self.refresh_mode):
                logger.warning('Trusted Advisor check %s last refresh time '
                               'of %s is newer than refresh threshold of %d '
                               'seconds.', check_id, check_datetime,
                               self.refresh_mode)
                return self._get_check_result(check_id)[0]
        # do the refresh
        logger.info("Refreshing Trusted Advisor check: %s", check_id)
        self.conn.refresh_trusted_advisor_check(checkId=check_id)
        # if mode isn't trigger, wait for refresh up to timeout
        if self.refresh_mode == 'trigger':
            result = self._get_check_result(check_id)[0]
        else:
            result = self._poll_for_refresh(check_id)
        return result
Given the ``check_id``, return the dict of Trusted Advisor check
        results. This handles refreshing the Trusted Advisor check, if desired,
        according to ``self.refresh_mode`` and ``self.refresh_timeout``.

        :param check_id: the Trusted Advisor check ID
        :type check_id: str
        :returns: dict check result. The return value of
          :py:meth:`Support.Client.describe_trusted_advisor_check_result`
        :rtype: dict