public AnalyticsTransmitter(IUserUniqueIdStore userUniqueIdStore, IEnableAnalyticsChecker enableAnalyticsChecker, IAnalyticsTransmitterSink analyticsTransmitterSink, IIdeInformationStore ideInformationStore, IProjectTargetFrameworksProvider projectTargetFrameworksProvider)
 {
     _userUniqueIdStore               = userUniqueIdStore;
     _enableAnalyticsChecker          = enableAnalyticsChecker;
     _analyticsTransmitterSink        = analyticsTransmitterSink;
     _ideInformationStore             = ideInformationStore;
     _projectTargetFrameworksProvider = projectTargetFrameworksProvider;
 }
        public AnalyticsTransmitter(IUserUniqueIdStore userUniqueIdStore, IEnableAnalyticsChecker enableAnalyticsChecker, IAnalyticsTransmitterSink analyticsTransmitterSink, IIdeInformationStore ideInformationStore, IProjectTargetFrameworksProvider projectTargetFrameworksProvider, ICurrentExtensionVersionProvider currentExtensionVersionProvider)
        {
            _enableAnalyticsChecker   = enableAnalyticsChecker;
            _analyticsTransmitterSink = analyticsTransmitterSink;

            _userUniqueId     = new Lazy <string>(userUniqueIdStore.GetUserId);
            _ideName          = new Lazy <string>(ideInformationStore.GetName);
            _ideVersion       = new Lazy <string>(ideInformationStore.GetVersion);
            _targetFrameworks = new Lazy <IEnumerable <string> >(projectTargetFrameworksProvider.GetProjectTargetFrameworks);
            _extensionVersion = new Lazy <string>(() => currentExtensionVersionProvider.GetCurrentExtensionVersion().ToString());
        }