From 7a9adfd1c792753ad29fe8dc6c82fec85d24944a Mon Sep 17 00:00:00 2001 From: Lau Ching Jun Date: Tue, 5 Dec 2023 00:32:25 -0800 Subject: [PATCH] Send an event when proxied DDS creates a connection. (#139530) The event allows tools to listen and connect to the original DDS port. --- packages/flutter_tools/lib/src/proxied_devices/devices.dart | 5 +++++ .../general.shard/proxied_devices/proxied_devices_test.dart | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/packages/flutter_tools/lib/src/proxied_devices/devices.dart b/packages/flutter_tools/lib/src/proxied_devices/devices.dart index 93df50e03f..4131e30bc5 100644 --- a/packages/flutter_tools/lib/src/proxied_devices/devices.dart +++ b/packages/flutter_tools/lib/src/proxied_devices/devices.dart @@ -775,6 +775,11 @@ class ProxiedDartDevelopmentService implements DartDevelopmentService { _localUri = remoteUri.replace(port: localPort); _logger.printTrace('Local port forwarded DDS on $_localUri.'); + _logger.sendEvent('device.proxied_dds_forwarded', { + 'deviceId': deviceId, + 'remoteUri': remoteUri.toString(), + 'localUri': _localUri!.toString(), + }); } @override diff --git a/packages/flutter_tools/test/general.shard/proxied_devices/proxied_devices_test.dart b/packages/flutter_tools/test/general.shard/proxied_devices/proxied_devices_test.dart index d6f982e35a..d68e3d7669 100644 --- a/packages/flutter_tools/test/general.shard/proxied_devices/proxied_devices_test.dart +++ b/packages/flutter_tools/test/general.shard/proxied_devices/proxied_devices_test.dart @@ -440,6 +440,11 @@ void main() { expect(dds.uri, Uri.parse('http://127.0.0.1:400/remote')); + expect( + bufferLogger.eventText.trim(), + '{"name":"device.proxied_dds_forwarded","args":{"deviceId":"test_id","remoteUri":"http://127.0.0.1:300/remote","localUri":"http://127.0.0.1:400/remote"}}', + ); + unawaited(dds.shutdown()); final DaemonMessage shutdownMessage = await broadcastOutput.first;