def _token_valid(self):
        """
        checks if the token cached is valid or has expired by comparing
        the time token was created with current time
        :return: True if token has not expired yet and False is token is empty or
                it has expired
        """
        if not self._cache_token:
            return False
        now = time.time()
        if now - self._token.acquired_time > self._token_timeout:
            logger.debug('token needs to be reset')
            return False
        return True