[flutter_tool] Clean up usage events and custom dimensions (#36785)

diff --git a/packages/flutter_tools/lib/src/commands/build_aar.dart b/packages/flutter_tools/lib/src/commands/build_aar.dart
index e40f522..73c415a 100644
--- a/packages/flutter_tools/lib/src/commands/build_aar.dart
+++ b/packages/flutter_tools/lib/src/commands/build_aar.dart
@@ -9,7 +9,7 @@
 import '../base/os.dart';
 import '../build_info.dart';
 import '../project.dart';
-import '../reporting/usage.dart';
+import '../reporting/reporting.dart';
 import '../runner/flutter_command.dart' show DevelopmentArtifact, FlutterCommandResult;
 import 'build.dart';
 
@@ -38,20 +38,20 @@
   final String name = 'aar';
 
   @override
-  Future<Map<String, String>> get usageValues async {
-    final Map<String, String> usage = <String, String>{};
+  Future<Map<CustomDimensions, String>> get usageValues async {
+    final Map<CustomDimensions, String> usage = <CustomDimensions, String>{};
     final FlutterProject futterProject = _getProject();
     if (futterProject == null) {
       return usage;
     }
     if (futterProject.manifest.isModule) {
-      usage[kCommandBuildAarProjectType] = 'module';
+      usage[CustomDimensions.commandBuildAarProjectType] = 'module';
     } else if (futterProject.manifest.isPlugin) {
-      usage[kCommandBuildAarProjectType] = 'plugin';
+      usage[CustomDimensions.commandBuildAarProjectType] = 'plugin';
     } else {
-      usage[kCommandBuildAarProjectType] = 'app';
+      usage[CustomDimensions.commandBuildAarProjectType] = 'app';
     }
-    usage[kCommandBuildAarTargetPlatform] =
+    usage[CustomDimensions.commandBuildAarTargetPlatform] =
         (argResults['target-platform'] as List<String>).join(',');
     return usage;
   }
diff --git a/packages/flutter_tools/lib/src/commands/build_bundle.dart b/packages/flutter_tools/lib/src/commands/build_bundle.dart
index 7e3e21f..92b4474 100644
--- a/packages/flutter_tools/lib/src/commands/build_bundle.dart
+++ b/packages/flutter_tools/lib/src/commands/build_bundle.dart
@@ -10,7 +10,7 @@
 import '../bundle.dart';
 import '../features.dart';
 import '../project.dart';
-import '../reporting/usage.dart';
+import '../reporting/reporting.dart';
 import '../runner/flutter_command.dart' show FlutterOptions, FlutterCommandResult;
 import 'build.dart';
 
@@ -74,17 +74,15 @@
       ' iOS runtimes.';
 
   @override
-  Future<Map<String, String>> get usageValues async {
+  Future<Map<CustomDimensions, String>> get usageValues async {
     final String projectDir = fs.file(targetFile).parent.parent.path;
     final FlutterProject futterProject = FlutterProject.fromPath(projectDir);
-
     if (futterProject == null) {
-      return const <String, String>{};
+      return const <CustomDimensions, String>{};
     }
-
-    return <String, String>{
-      kCommandBuildBundleTargetPlatform: argResults['target-platform'],
-      kCommandBuildBundleIsModule: '${futterProject.isModule}'
+    return <CustomDimensions, String>{
+      CustomDimensions.commandBuildBundleTargetPlatform: argResults['target-platform'],
+      CustomDimensions.commandBuildBundleIsModule: '${futterProject.isModule}'
     };
   }
 
diff --git a/packages/flutter_tools/lib/src/commands/config.dart b/packages/flutter_tools/lib/src/commands/config.dart
index c98a971..9e4c6b7 100644
--- a/packages/flutter_tools/lib/src/commands/config.dart
+++ b/packages/flutter_tools/lib/src/commands/config.dart
@@ -11,7 +11,7 @@
 import '../convert.dart';
 import '../features.dart';
 import '../globals.dart';
-import '../reporting/usage.dart';
+import '../reporting/reporting.dart';
 import '../runner/flutter_command.dart';
 import '../version.dart';
 
diff --git a/packages/flutter_tools/lib/src/commands/create.dart b/packages/flutter_tools/lib/src/commands/create.dart
index 875beae..98f9227 100644
--- a/packages/flutter_tools/lib/src/commands/create.dart
+++ b/packages/flutter_tools/lib/src/commands/create.dart
@@ -23,7 +23,7 @@
 import '../features.dart';
 import '../globals.dart';
 import '../project.dart';
-import '../reporting/usage.dart';
+import '../reporting/reporting.dart';
 import '../runner/flutter_command.dart';
 import '../template.dart';
 import '../version.dart';
@@ -165,11 +165,11 @@
   String get invocation => '${runner.executableName} $name <output directory>';
 
   @override
-  Future<Map<String, String>> get usageValues async {
-    return <String, String>{
-      kCommandCreateProjectType: argResults['template'],
-      kCommandCreateAndroidLanguage: argResults['android-language'],
-      kCommandCreateIosLanguage: argResults['ios-language'],
+  Future<Map<CustomDimensions, String>> get usageValues async {
+    return <CustomDimensions, String>{
+      CustomDimensions.commandCreateProjectType: argResults['template'],
+      CustomDimensions.commandCreateAndroidLanguage: argResults['android-language'],
+      CustomDimensions.commandCreateIosLanguage: argResults['ios-language'],
     };
   }
 
diff --git a/packages/flutter_tools/lib/src/commands/packages.dart b/packages/flutter_tools/lib/src/commands/packages.dart
index 767a606..8b60b93 100644
--- a/packages/flutter_tools/lib/src/commands/packages.dart
+++ b/packages/flutter_tools/lib/src/commands/packages.dart
@@ -9,7 +9,7 @@
 import '../cache.dart';
 import '../dart/pub.dart';
 import '../project.dart';
-import '../reporting/usage.dart';
+import '../reporting/reporting.dart';
 import '../runner/flutter_command.dart';
 
 class PackagesCommand extends FlutterCommand {
@@ -71,8 +71,8 @@
   }
 
   @override
-  Future<Map<String, String>> get usageValues async {
-    final Map<String, String> usageValues = <String, String>{};
+  Future<Map<CustomDimensions, String>> get usageValues async {
+    final Map<CustomDimensions, String> usageValues = <CustomDimensions, String>{};
     final String workingDirectory = argResults.rest.length == 1 ? argResults.rest[0] : null;
     final String target = findProjectRoot(workingDirectory);
     if (target == null) {
@@ -82,11 +82,11 @@
     final bool hasPlugins = await rootProject.flutterPluginsFile.exists();
     if (hasPlugins) {
       final int numberOfPlugins = (await rootProject.flutterPluginsFile.readAsLines()).length;
-      usageValues[kCommandPackagesNumberPlugins] = '$numberOfPlugins';
+      usageValues[CustomDimensions.commandPackagesNumberPlugins] = '$numberOfPlugins';
     } else {
-      usageValues[kCommandPackagesNumberPlugins] = '0';
+      usageValues[CustomDimensions.commandPackagesNumberPlugins] = '0';
     }
-    usageValues[kCommandPackagesProjectModule] = '${rootProject.isModule}';
+    usageValues[CustomDimensions.commandPackagesProjectModule] = '${rootProject.isModule}';
     return usageValues;
   }
 
@@ -100,11 +100,11 @@
         checkLastModified: false,
       );
       pubGetTimer.stop();
-      flutterUsage.sendEvent('packages-pub-get', 'success');
+      PubGetEvent(success: true).send();
       flutterUsage.sendTiming('packages-pub-get', 'success', pubGetTimer.elapsed);
     } catch (_) {
       pubGetTimer.stop();
-      flutterUsage.sendEvent('packages-pub-get', 'failure');
+      PubGetEvent(success: false).send();
       flutterUsage.sendTiming('packages-pub-get', 'failure', pubGetTimer.elapsed);
       rethrow;
     }
diff --git a/packages/flutter_tools/lib/src/commands/run.dart b/packages/flutter_tools/lib/src/commands/run.dart
index 091b043..298386c 100644
--- a/packages/flutter_tools/lib/src/commands/run.dart
+++ b/packages/flutter_tools/lib/src/commands/run.dart
@@ -17,7 +17,7 @@
 import '../globals.dart';
 import '../macos/xcode.dart';
 import '../project.dart';
-import '../reporting/usage.dart';
+import '../reporting/reporting.dart';
 import '../resident_runner.dart';
 import '../resident_web_runner.dart';
 import '../run_cold.dart';
@@ -198,7 +198,7 @@
   }
 
   @override
-  Future<Map<String, String>> get usageValues async {
+  Future<Map<CustomDimensions, String>> get usageValues async {
     String deviceType, deviceOsVersion;
     bool isEmulator;
 
@@ -227,13 +227,13 @@
       hostLanguage.add(iosProject.isSwift ? 'swift' : 'objc');
     }
 
-    return <String, String>{
-      kCommandRunIsEmulator: '$isEmulator',
-      kCommandRunTargetName: deviceType,
-      kCommandRunTargetOsVersion: deviceOsVersion,
-      kCommandRunModeName: modeName,
-      kCommandRunProjectModule: '${FlutterProject.current().isModule}',
-      kCommandRunProjectHostLanguage: hostLanguage.join(','),
+    return <CustomDimensions, String>{
+      CustomDimensions.commandRunIsEmulator: '$isEmulator',
+      CustomDimensions.commandRunTargetName: deviceType,
+      CustomDimensions.commandRunTargetOsVersion: deviceOsVersion,
+      CustomDimensions.commandRunModeName: modeName,
+      CustomDimensions.commandRunProjectModule: '${FlutterProject.current().isModule}',
+      CustomDimensions.commandRunProjectHostLanguage: hostLanguage.join(','),
     };
   }