@@ -39,13 +39,15 @@ def dispatch(self, method: str, params: dict = None, **kwargs):
3939 return self ._call_api (method , params , ** kwargs )
4040
4141 def _call_api (self , method : str , params : dict = None , ** kwargs ):
42+ token = kwargs .get ('token' )
43+
4244 self ._check_mock_mode (method )
4345
4446 resource , verb = self ._parse_method (method )
4547 self ._check_method (resource , verb )
4648
4749 params = params or {}
48- kwargs ['metadata' ] = self ._get_connection_metadata ()
50+ kwargs ['metadata' ] = self ._get_connection_metadata (token )
4951
5052 response_or_iterator = getattr (getattr (self ._client , resource ), verb )(params , ** kwargs )
5153
@@ -89,11 +91,13 @@ def _generate_response(self, response_iterator):
8991 for response in response_iterator :
9092 yield self ._change_message (response )
9193
92- def _get_connection_metadata (self ):
94+ def _get_connection_metadata (self , token = None ):
9395 metadata = []
94- if self ._token :
95- metadata .append (('token' , self ._token ))
9696
97+ if token :
98+ metadata .append (('token' , token ))
99+ elif self ._token :
100+ metadata .append (('token' , self ._token ))
97101 elif token := self .transaction .meta .get ('token' ):
98102 metadata .append (('token' , token ))
99103
0 commit comments