SirenOfShame.Lib.Watcher.RulesEngine.TrySynchronizeMyPointsAndAchievements C# (CSharp) Method

TrySynchronizeMyPointsAndAchievements() private method

private TrySynchronizeMyPointsAndAchievements ( IList changedBuildStatuses ) : void
changedBuildStatuses IList
return void
        private void TrySynchronizeMyPointsAndAchievements(IList<BuildStatus> changedBuildStatuses)
        {
            if (DisableSosOnline) return;
            if (!changedBuildStatuses.Any(i => i.IsWorkingOrBroken())) return;
            var anyBuildsAreMine = changedBuildStatuses.Any(i => i.RequestedBy == _settings.MyRawName && i.IsWorkingOrBroken());
            if (!anyBuildsAreMine) return;
            var exportedBuilds = SosDb.ExportNewBuilds(_settings);
            var noBuildsToExport = exportedBuilds == null;
            if (noBuildsToExport)
            {
                _log.Error("No builds were found to export from sosDb to sos online even though one was changed");
                return;
            }
            _log.Debug("Uploading the following builds to sos online: " + exportedBuilds);
            string exportedAchievements = _settings.ExportNewAchievements();
            SosOnlineService.Synchronize(_settings, exportedBuilds, exportedAchievements, OnAddBuildsSuccess, OnAddBuildsFail);
        }