public void OnPackageLoad(IdeIntegration ideIntegration) { IdeIntegration = ideIntegration; if (IsDevBuild) { tracer.Trace("Running on 'dev' version on {0}", this, ideIntegration); } var today = DateTime.Today; var status = GetInstallStatus(); if (!status.IsInstalled) { // new user if (ShowNotification(GuidanceNotification.AfterInstall)) { _analyticsTransmitter.TransmitExtensionInstalledEvent(); status.InstallDate = today; status.InstalledVersion = CurrentVersion; status.LastUsedDate = today; UpdateStatus(status); CheckFileAssociation(); } } else if (status.InstalledVersion < CurrentVersion) { //upgrading user CheckFileAssociation(); } _analyticsTransmitter.TransmitExtensionLoadedEvent(); }
public void OnPackageLoad(IdeIntegration ideIntegration) { IdeIntegration = ideIntegration; if (IsDevBuild) { tracer.Trace("Running on 'dev' version on {0}", this, ideIntegration); } var today = DateTime.Today; var status = GetInstallStatus(); if (!status.IsInstalled) { // new user if (ShowNotification(GuidanceNotification.AfterInstall)) { status.InstallDate = today; status.InstalledVersion = CurrentVersion; status.LastUsedDate = today; UpdateStatus(status); CheckFileAssociation(); } } else if (status.InstalledVersion < CurrentVersion) { //upgrading user CheckFileAssociation(); } }
public InstallServices(IGuidanceNotificationService notificationService, IIdeTracer tracer, IFileAssociationDetector fileAssociationDetector, IStatusAccessor statusAccessor, IAnalyticsTransmitter analyticsTransmitter, ICurrentExtensionVersionProvider currentExtensionVersionProvider, IDevBuildChecker devBuildChecker) { this.notificationService = notificationService; this.tracer = tracer; this.fileAssociationDetector = fileAssociationDetector; this.statusAccessor = statusAccessor; _analyticsTransmitter = analyticsTransmitter; _currentExtensionVersionProvider = currentExtensionVersionProvider; _devBuildChecker = devBuildChecker; IdeIntegration = IdeIntegration.Unknown; }