docs: def create_exposed_session(self, session, key=None, context=None):
          """
          This was an overloaded method ported from java that should be refactored. (TBD)
          Until it is refactored, it is called in one of two ways:
              1) passing it session and session_context
              2) passing it session and session_key
          """
          if key:
              return WebDelegatingSession(self, key)
  
          web_registry = context['web_registry']
          session_key = WebSessionKey(session.session_id,
                                      web_registry=web_registry)
  
          return WebDelegatingSession(self, session_key)