public Backend(InstanceType instanceType, AppType appType) { settingsCollection = SettingsCollectionSerializer.DeSerialize(); trackUsage = new TrackUsage(settingsCollection.AppSettings, settingsCollection.InternalSettings, instanceType, appType); versionControl = new VersionControl(instanceType, appType, trackUsage); jiraTimerCollection = new JiraTimerCollection(settingsCollection.ExportSettings); jiraTimerCollection.exportPrompt += OnExportPromptEvent; jiraConnection = new JiraConnection(trackUsage); idleTimerCollection = new IdleTimerCollection(); ActivityChecker = new ActivityChecker(jiraTimerCollection, settingsCollection.AppSettings); ActivityChecker.NoActivityEvent += OnNoActivityEvent; hearbeat = new Timer(1800000); hearbeat.Elapsed += HearbeatOnElapsed; hearbeat.Start(); if (Settings.AppSettings.TimerRunningOnShutdown.HasValue) { var timer = jiraTimerCollection.GetTimer(Settings.AppSettings.TimerRunningOnShutdown.Value); if (timer != null && timer.DateStarted.Date == DateTime.Now.Date) { JiraTimerCollection.StartTimer(Settings.AppSettings.TimerRunningOnShutdown.Value); } Settings.AppSettings.TimerRunningOnShutdown = null; SaveSettings(false); } HearbeatOnElapsed(this, null); }
internal JiraTimerCollection(ISettingsCollection settingsCollection, ITrackUsage trackUsage) { this.settingsCollection = settingsCollection; this.trackUsage = trackUsage; timerList = new List <JiraTimer>(); isIntialised = false; }
public JiraConnection(ITrackUsage trackUsage, IRecentJiraCollection recentJiraCollection) { this.trackUsage = trackUsage; this.recentJiraCollection = recentJiraCollection; jiraProjectCodeCache = new List <string>(); lastCacheUpdate = DateTime.MinValue; }
public JiraConnection(ITrackUsage trackUsage) { this.trackUsage = trackUsage; recentJiraCollection = new RecentJiraCollection(); jiraProjectCache = new List <JiraProject>(); lastCacheUpdate = DateTime.MinValue; }
public VersionControl(InstanceType instanceType, ITrackUsage trackUsage) { this.trackUsage = trackUsage; InstanceType = instanceType; lastUpdateCheck = DateTime.MinValue; SetVersionName(); var instance = InstanceType == InstanceType.Stable ? "" : $" ({InstanceType})"; AppName = $"Gallifrey {instance}"; }
public VersionControl(InstanceType instanceType, AppType appType, ITrackUsage trackUsage) { this.trackUsage = trackUsage; InstanceType = instanceType; AppType = appType; lastUpdateCheck = DateTime.MinValue; SetVersionName(); var instance = InstanceType == InstanceType.Stable ? "" : string.Format(" ({0})", InstanceType); var appName = AppType == AppType.Classic ? "Gallifrey Classic" : "Gallifrey"; AppName = string.Format("{0}{1}", appName, instance); }
public VersionControl(InstanceType instanceType, AppType appType, ITrackUsage trackUsage) { this.trackUsage = trackUsage; InstanceType = instanceType; AppType = appType; lastUpdateCheck = DateTime.MinValue; SetVersionName(); var instance = InstanceType == InstanceType.Stable ? "" : $" ({InstanceType})"; var appName = AppType == AppType.Classic ? "Gallifrey Classic" : "Gallifrey"; AppName = $"{appName}{instance}"; }
public Backend(InstanceType instanceType) { settingsCollection = SettingsCollectionSerializer.DeSerialize(); versionControl = new VersionControl(instanceType); trackUsage = new TrackUsage(versionControl, settingsCollection, instanceType); versionControl.UpdateCheckOccured += (sender, b) => trackUsage.TrackAppUsage(b ? TrackingType.UpdateCheckManual : TrackingType.UpdateCheck); jiraTimerCollection = new JiraTimerCollection(settingsCollection, trackUsage); jiraTimerCollection.exportPrompt += OnExportPromptEvent; jiraConnection = new JiraConnection(trackUsage); idleTimerCollection = new IdleTimerCollection(); ActivityChecker = new ActivityChecker(jiraTimerCollection, settingsCollection); withThanksCreator = new WithThanksCreator(); premiumChecker = new PremiumChecker(); ActivityChecker.NoActivityEvent += OnNoActivityEvent; var cleanUpAndTrackingHeartbeat = new Timer(TimeSpan.FromMinutes(15).TotalMilliseconds); cleanUpAndTrackingHeartbeat.Elapsed += CleanUpAndTrackingHearbeatOnElapsed; cleanUpAndTrackingHeartbeat.Start(); exportedHeartbeatMutex = new Mutex(false); var jiraExportHearbeat = new Timer(TimeSpan.FromMinutes(10).TotalMilliseconds); jiraExportHearbeat.Elapsed += JiraExportHearbeatHearbeatOnElapsed; jiraExportHearbeat.Start(); if (Settings.AppSettings.TimerRunningOnShutdown.HasValue) { var timer = jiraTimerCollection.GetTimer(Settings.AppSettings.TimerRunningOnShutdown.Value); if (timer != null && timer.DateStarted.Date == DateTime.Now.Date) { JiraTimerCollection.StartTimer(Settings.AppSettings.TimerRunningOnShutdown.Value); } Settings.AppSettings.TimerRunningOnShutdown = null; SaveSettings(false, false); } }
public Backend(InstanceType instanceType) { settingsCollection = new SettingsCollection(SettingsCollectionSerializer.DeSerialize()); versionControl = new VersionControl(instanceType); trackUsage = new TrackUsage(versionControl, settingsCollection, instanceType); jiraTimerCollection = new JiraTimerCollection(settingsCollection, trackUsage); recentJiraCollection = new RecentJiraCollection(); jiraConnection = new JiraConnection(trackUsage, recentJiraCollection); idleTimerCollection = new IdleTimerCollection(); ActivityChecker = new ActivityChecker(jiraTimerCollection, settingsCollection); withThanksCreator = new WithThanksCreator(); versionControl.UpdateCheckOccured += (sender, b) => trackUsage.TrackAppUsage(b ? TrackingType.UpdateCheckManual : TrackingType.UpdateCheck); jiraTimerCollection.ExportPrompt += OnExportPromptEvent; ActivityChecker.NoActivityEvent += OnNoActivityEvent; cleanUpAndTrackingHeartbeat = new Timer(TimeSpan.FromMinutes(15).TotalMilliseconds); cleanUpAndTrackingHeartbeat.Elapsed += CleanUpAndTrackingHeartbeatOnElapsed; exportedHeartbeatMutex = new Mutex(false); jiraExportHeartbeat = new Timer(TimeSpan.FromMinutes(10).TotalMilliseconds); jiraExportHeartbeat.Elapsed += JiraExportHeartbeatHeartbeatOnElapsed; }
public Backend(InstanceType instanceType, AppType appType) { settingsCollection = SettingsCollectionSerializer.DeSerialize(); trackUsage = new TrackUsage(settingsCollection.AppSettings, settingsCollection.InternalSettings, instanceType, appType); versionControl = new VersionControl(instanceType, appType, trackUsage); jiraTimerCollection = new JiraTimerCollection(settingsCollection.ExportSettings, trackUsage); jiraTimerCollection.exportPrompt += OnExportPromptEvent; jiraConnection = new JiraConnection(trackUsage); idleTimerCollection = new IdleTimerCollection(); ActivityChecker = new ActivityChecker(jiraTimerCollection, settingsCollection.AppSettings); withThanksCreator = new WithThanksCreator(); ActivityChecker.NoActivityEvent += OnNoActivityEvent; var cleanUpAndTrackingHearbeat = new Timer(1800000); // 30 minutes cleanUpAndTrackingHearbeat.Elapsed += CleanUpAndTrackingHearbeatOnElapsed; cleanUpAndTrackingHearbeat.Start(); exportedHeartbeatMutex = new Mutex(false); var jiraExportHearbeat = new Timer(600000); //10 minutes jiraExportHearbeat.Elapsed += JiraExportHearbeatHearbeatOnElapsed; jiraExportHearbeat.Start(); if (Settings.AppSettings.TimerRunningOnShutdown.HasValue) { var timer = jiraTimerCollection.GetTimer(Settings.AppSettings.TimerRunningOnShutdown.Value); if (timer != null && timer.DateStarted.Date == DateTime.Now.Date) { JiraTimerCollection.StartTimer(Settings.AppSettings.TimerRunningOnShutdown.Value); } Settings.AppSettings.TimerRunningOnShutdown = null; SaveSettings(false); } }
internal JiraTimerCollection(IExportSettings exportSettings, ITrackUsage trackUsage) { this.exportSettings = exportSettings; this.trackUsage = trackUsage; timerList = JiraTimerCollectionSerializer.DeSerialize(); }
public JiraConnection(ITrackUsage trackUsage) { this.trackUsage = trackUsage; recentJiraCollection = new RecentJiraCollection(); jiraProjectCache = new List <JiraProject>(); }
public Backend(InstanceType instanceType) { settingsCollection = SettingsCollectionSerializer.DeSerialize(); trackUsage = new TrackUsage(settingsCollection.AppSettings, settingsCollection.InternalSettings, instanceType); versionControl = new VersionControl(instanceType, trackUsage); jiraTimerCollection = new JiraTimerCollection(settingsCollection.ExportSettings, trackUsage); jiraTimerCollection.exportPrompt += OnExportPromptEvent; jiraConnection = new JiraConnection(trackUsage); idleTimerCollection = new IdleTimerCollection(); ActivityChecker = new ActivityChecker(jiraTimerCollection, settingsCollection.AppSettings); withThanksCreator = new WithThanksCreator(); premiumChecker = new PremiumChecker(); ActivityChecker.NoActivityEvent += OnNoActivityEvent; var cleanUpAndTrackingHearbeat = new Timer(TimeSpan.FromMinutes(15).TotalMilliseconds); cleanUpAndTrackingHearbeat.Elapsed += CleanUpAndTrackingHearbeatOnElapsed; cleanUpAndTrackingHearbeat.Start(); exportedHeartbeatMutex = new Mutex(false); var jiraExportHearbeat = new Timer(TimeSpan.FromMinutes(10).TotalMilliseconds); jiraExportHearbeat.Elapsed += JiraExportHearbeatHearbeatOnElapsed; jiraExportHearbeat.Start(); if (Settings.AppSettings.TimerRunningOnShutdown.HasValue) { var timer = jiraTimerCollection.GetTimer(Settings.AppSettings.TimerRunningOnShutdown.Value); if (timer != null && timer.DateStarted.Date == DateTime.Now.Date) { JiraTimerCollection.StartTimer(Settings.AppSettings.TimerRunningOnShutdown.Value); } Settings.AppSettings.TimerRunningOnShutdown = null; SaveSettings(false); } }
internal JiraTimerCollection(ISettingsCollection settingsCollection, ITrackUsage trackUsage) { this.settingsCollection = settingsCollection; this.trackUsage = trackUsage; timerList = JiraTimerCollectionSerializer.DeSerialize(); }
public JiraConnection(ITrackUsage trackUsage) { this.trackUsage = trackUsage; recentJiraCollection = new RecentJiraCollection(); jiraProjectCache = new List<JiraProject>(); lastCacheUpdate = DateTime.MinValue; }
public JiraConnection(ITrackUsage trackUsage) { this.trackUsage = trackUsage; recentJiraCollection = new RecentJiraCollection(); jiraProjectCache = new List<JiraProject>(); }