code: def _refresh_token(self):
      with self.__LOCK:
          try:
              self._refresh_session_token()
          except OAuth2Error:
              # for some reason oauth session is no longer valid. Retry by creating new fresh session
              # we can safely ignore this error, as it will be thrown again if it's persistent
              try:
                  self.session.close()
              except Exception:
                  pass
              self.session = self.session_factory()
              self._refresh_session_token()
  
imports: import threading
  import time
  import jwt
  from bravado.exception import HTTPUnauthorized
  from bravado.requests_client import Authenticator
  from oauthlib.oauth2 import OAuth2Error, TokenExpiredError
  from requests.auth import AuthBase
  from requests_oauthlib import OAuth2Session
  from neptune.common.backends.utils import with_api_exceptions_handler
  from neptune.common.exceptions import NeptuneInvalidApiTokenException
  from neptune.common.utils import update_session_proxies
label_desc: Use image node_id 5 for calling the NeptuneAuth obj's underlying member method code with example usage: obj._refresh_token() without return types