unsubscribeAllFor method
Future<void>
unsubscribeAllFor({
- required Client client,
- required MCPUIRuntime runtime,
- required String ownerKey,
Unsubscribes every resource associated with ownerKey. Used by the
orchestrator's closeApp path to prevent leaked subscriptions.
Implementation
Future<void> unsubscribeAllFor({
required Client client,
required MCPUIRuntime runtime,
required String ownerKey,
}) async {
final uris = _active[ownerKey];
if (uris == null || uris.isEmpty) return;
for (final uri in List<String>.from(uris)) {
try {
await unsubscribe(
client: client,
runtime: runtime,
uri: uri,
ownerKey: ownerKey,
);
} catch (e) {
_logger.warn('unsubscribeAllFor: unsubscribe failed', {
'uri': uri,
'ownerKey': ownerKey,
}, e);
}
}
}