public void Dispose() { _eventListener?.Dispose(); _eventListener = null; GC.SuppressFinalize(this); }
public ExtensibilityTelemetryCollector() { _eventListener = new ExtensibilityEventListener(this); _counts = new Dictionary <string, Count>() { // INuGetProjectService [nameof(INuGetProjectService) + "." + nameof(INuGetProjectService.GetInstalledPackagesAsync)] = new Count(), // IVsFrameworkCompatibility [nameof(IVsFrameworkCompatibility) + "." + nameof(IVsFrameworkCompatibility.GetNetStandardFrameworks)] = new Count(), [nameof(IVsFrameworkCompatibility) + "." + nameof(IVsFrameworkCompatibility.GetFrameworksSupportingNetStandard)] = new Count(), [nameof(IVsFrameworkCompatibility) + "." + nameof(IVsFrameworkCompatibility.GetNearest)] = new Count(), // IVsFrameworkCompatibility2 #pragma warning disable CS0618 // Type or member is obsolete [nameof(IVsFrameworkCompatibility2) + "." + nameof(IVsFrameworkCompatibility2.GetNearest)] = new Count(), #pragma warning restore CS0618 // Type or member is obsolete // IVsFrameworkCompatibility2 [nameof(IVsFrameworkCompatibility3) + "." + nameof(IVsFrameworkCompatibility3.GetNearest) + ".2"] = new Count(), [nameof(IVsFrameworkCompatibility3) + "." + nameof(IVsFrameworkCompatibility3.GetNearest) + ".3"] = new Count(), // IVsFrameworkParser #pragma warning disable CS0618 // Type or member is obsolete [nameof(IVsFrameworkParser) + "." + nameof(IVsFrameworkParser.ParseFrameworkName)] = new Count(), [nameof(IVsFrameworkParser) + "." + nameof(IVsFrameworkParser.GetShortFrameworkName)] = new Count(), #pragma warning restore CS0618 // Type or member is obsolete // IVsFrameworkParser2 [nameof(IVsFrameworkParser2) + "." + nameof(IVsFrameworkParser2.TryParse)] = new Count(), // IVsGlobalPackagesInitScriptExecutor [nameof(IVsGlobalPackagesInitScriptExecutor) + "." + nameof(IVsGlobalPackagesInitScriptExecutor.ExecuteInitScriptAsync)] = new Count(), // IVsPackageInstaller [nameof(IVsPackageInstaller) + "." + nameof(IVsPackageInstaller.InstallPackage) + ".1"] = new Count(), [nameof(IVsPackageInstaller) + "." + nameof(IVsPackageInstaller.InstallPackage) + ".2"] = new Count(), [nameof(IVsPackageInstaller) + "." + nameof(IVsPackageInstaller.InstallPackage) + ".3"] = new Count(), [nameof(IVsPackageInstaller) + "." + nameof(IVsPackageInstaller.InstallPackagesFromRegistryRepository) + ".1"] = new Count(), [nameof(IVsPackageInstaller) + "." + nameof(IVsPackageInstaller.InstallPackagesFromRegistryRepository) + ".2"] = new Count(), [nameof(IVsPackageInstaller) + "." + nameof(IVsPackageInstaller.InstallPackagesFromVSExtensionRepository) + ".1"] = new Count(), [nameof(IVsPackageInstaller) + "." + nameof(IVsPackageInstaller.InstallPackagesFromVSExtensionRepository) + ".2"] = new Count(), // IVsPackageInstaller2 [nameof(IVsPackageInstaller2) + "." + nameof(IVsPackageInstaller2.InstallLatestPackage)] = new Count(), // IVsPackageInstallerEvents [nameof(IVsPackageInstallerEvents) + "." + nameof(IVsPackageInstallerEvents.PackageInstalled)] = new Count(), [nameof(IVsPackageInstallerEvents) + "." + nameof(IVsPackageInstallerEvents.PackageInstalling)] = new Count(), [nameof(IVsPackageInstallerEvents) + "." + nameof(IVsPackageInstallerEvents.PackageReferenceAdded)] = new Count(), [nameof(IVsPackageInstallerEvents) + "." + nameof(IVsPackageInstallerEvents.PackageReferenceRemoved)] = new Count(), [nameof(IVsPackageInstallerEvents) + "." + nameof(IVsPackageInstallerEvents.PackageUninstalled)] = new Count(), [nameof(IVsPackageInstallerEvents) + "." + nameof(IVsPackageInstallerEvents.PackageUninstalling)] = new Count(), // IVsPackageInstallerProjectEvents [nameof(IVsPackageInstallerProjectEvents) + "." + nameof(IVsPackageInstallerProjectEvents.BatchStart)] = new Count(), [nameof(IVsPackageInstallerProjectEvents) + "." + nameof(IVsPackageInstallerProjectEvents.BatchEnd)] = new Count(), // IVsPackageInstallerServices #pragma warning disable CS0618 // Type or member is obsolete [nameof(IVsPackageInstallerServices) + "." + nameof(IVsPackageInstallerServices.GetInstalledPackages)] = new Count(), [nameof(IVsPackageInstallerServices) + "." + nameof(IVsPackageInstallerServices.GetInstalledPackages) + ".1"] = new Count(), [nameof(IVsPackageInstallerServices) + "." + nameof(IVsPackageInstallerServices.IsPackageInstalled) + ".2"] = new Count(), [nameof(IVsPackageInstallerServices) + "." + nameof(IVsPackageInstallerServices.IsPackageInstalled) + ".3"] = new Count(), [nameof(IVsPackageInstallerServices) + "." + nameof(IVsPackageInstallerServices.IsPackageInstalledEx)] = new Count(), #pragma warning restore CS0618 // Type or member is obsolete // IVsPackageMetadata [nameof(IVsPackageMetadata) + "." + nameof(IVsPackageMetadata.Authors)] = new Count(), [nameof(IVsPackageMetadata) + "." + nameof(IVsPackageMetadata.Description)] = new Count(), [nameof(IVsPackageMetadata) + "." + nameof(IVsPackageMetadata.Id)] = new Count(), [nameof(IVsPackageMetadata) + "." + nameof(IVsPackageMetadata.InstallPath)] = new Count(), [nameof(IVsPackageMetadata) + "." + nameof(IVsPackageMetadata.Title)] = new Count(), #pragma warning disable CS0618 // Type or member is obsolete [nameof(IVsPackageMetadata) + "." + nameof(IVsPackageMetadata.Version)] = new Count(), #pragma warning restore CS0618 // Type or member is obsolete [nameof(IVsPackageMetadata) + "." + nameof(IVsPackageMetadata.VersionString)] = new Count(), // IVsPackageProjectMetadata [nameof(IVsPackageProjectMetadata) + "." + nameof(IVsPackageProjectMetadata.BatchId)] = new Count(), [nameof(IVsPackageProjectMetadata) + "." + nameof(IVsPackageProjectMetadata.ProjectName)] = new Count(), // IVsPackageRestorer [nameof(IVsPackageRestorer) + "." + nameof(IVsPackageRestorer.IsUserConsentGranted)] = new Count(), [nameof(IVsPackageRestorer) + "." + nameof(IVsPackageRestorer.RestorePackages)] = new Count(), // IVsPackageSourceProvider [nameof(IVsPackageSourceProvider) + "." + nameof(IVsPackageSourceProvider.GetSources)] = new Count(), [nameof(IVsPackageSourceProvider) + "." + nameof(IVsPackageSourceProvider.SourcesChanged)] = new Count(), // IVsPackageUninstaller [nameof(IVsPackageUninstaller) + "." + nameof(IVsPackageUninstaller.UninstallPackage)] = new Count(), // IVsPathContext [nameof(IVsPathContext) + "." + nameof(IVsPathContext.UserPackageFolder)] = new Count(), [nameof(IVsPathContext) + "." + nameof(IVsPathContext.FallbackPackageFolders)] = new Count(), [nameof(IVsPathContext) + "." + nameof(IVsPathContext.TryResolvePackageAsset)] = new Count(), // IVsPathContext2 [nameof(IVsPathContext2) + "." + nameof(IVsPathContext2.SolutionPackageFolder)] = new Count(), // IVsPathContextProvider [nameof(IVsPathContextProvider) + "." + nameof(IVsPathContextProvider.TryCreateContext)] = new Count(), // IVsPathContextProvider2 [nameof(IVsPathContextProvider2) + "." + nameof(IVsPathContextProvider2.TryCreateSolutionContext) + ".1"] = new Count(), [nameof(IVsPathContextProvider2) + "." + nameof(IVsPathContextProvider2.TryCreateSolutionContext) + ".2"] = new Count(), [nameof(IVsPathContextProvider2) + "." + nameof(IVsPathContextProvider2.TryCreateNoSolutionContext)] = new Count(), // IVsProjectJsonToPackageReferenceMigrator [nameof(IVsProjectJsonToPackageReferenceMigrator) + "." + nameof(IVsProjectJsonToPackageReferenceMigrator.MigrateProjectJsonToPackageReferenceAsync)] = new Count(), // IVsSemanticVersionComparer [nameof(IVsSemanticVersionComparer) + "." + nameof(IVsSemanticVersionComparer.Compare)] = new Count(), // IVsSolutionRestoreService [nameof(IVsSolutionRestoreService) + "." + nameof(IVsSolutionRestoreService.CurrentRestoreOperation)] = new Count(), [nameof(IVsSolutionRestoreService) + "." + nameof(IVsSolutionRestoreService.NominateProjectAsync)] = new Count(), // IVsSolutionRestoreService2 [nameof(IVsSolutionRestoreService2) + "." + nameof(IVsSolutionRestoreService2.NominateProjectAsync)] = new Count(), // IVsSolutionRestoreService3 [nameof(IVsSolutionRestoreService3) + "." + nameof(IVsSolutionRestoreService3.CurrentRestoreOperation)] = new Count(), [nameof(IVsSolutionRestoreService3) + "." + nameof(IVsSolutionRestoreService3.NominateProjectAsync)] = new Count(), // IVsSolutionRestoreService4 [nameof(IVsSolutionRestoreService4) + "." + nameof(IVsSolutionRestoreService4.RegisterRestoreInfoSourceAsync)] = new Count(), // IVsNuGetProjectUpdateEvents [nameof(IVsNuGetProjectUpdateEvents) + "." + nameof(IVsNuGetProjectUpdateEvents.SolutionRestoreStarted)] = new Count(), [nameof(IVsNuGetProjectUpdateEvents) + "." + nameof(IVsNuGetProjectUpdateEvents.SolutionRestoreFinished)] = new Count(), [nameof(IVsNuGetProjectUpdateEvents) + "." + nameof(IVsNuGetProjectUpdateEvents.ProjectUpdateStarted)] = new Count(), [nameof(IVsNuGetProjectUpdateEvents) + "." + nameof(IVsNuGetProjectUpdateEvents.ProjectUpdateFinished)] = new Count(), }; }