def _ws_handshake_transform(self, http_request_binding, http_headers_binding, native_userdata): if self._ws_handshake_transform_cb is None: _awscrt.mqtt_ws_handshake_transform_complete(None, native_userdata) return def _on_complete(f): _awscrt.mqtt_ws_handshake_transform_complete(f.exception(), native_userdata) future = Future() future.add_done_callback(_on_complete) http_request = HttpRequest._from_bindings(http_request_binding, http_headers_binding) transform_args = WebsocketHandshakeTransformArgs(self, http_request, future) try: self._ws_handshake_transform_cb(transform_args=transform_args) except Exception as e: # Call set_done() if user failed to do so before uncaught exception was raised, # there's a chance the callback wasn't callable and user has no idea we tried to hand them the baton. if not future.done(): transform_args.set_done(e)
def _on_complete(f): _awscrt.mqtt_ws_handshake_transform_complete( f.exception(), native_userdata)