dispose method
void
dispose()
Implementation
void dispose() {
_closing = true;
_markDisconnected(reason: closeReason, kind: closeKind ?? ProtocolCloseKind.client);
final closingState = _clientClosedTerminalState();
_setTerminalState(state: closingState);
_failPendingRequests(closingState.requestError());
unawaited(_failToolCallStreams(error: closingState.toolCallError()));
sync.dispose();
unawaited(messaging.stop());
_protocolInstance.dispose();
_entered = false;
_closeKind = ProtocolCloseKind.client;
_completeRoomClosed();
_invokeTerminalCallbacks(useErrorCallback: false);
_localParticipant = null;
}