Exemplo n.º 1
0
 public void CheckForChanges()
 {
     try
     {
         Log.Debug("Checking for changes");
         var buildStates = _tfsClient.GetLatestBuildStates();
         Log.InfoFormat("Found {0} build states", buildStates.Count);
         foreach (var buildState in buildStates.Where(BuildIsDone))
         {
             string previousBuild;
             _latestBuilds.TryGetValue(buildState.Name, out previousBuild);
             if (!string.Equals(buildState.Uri, previousBuild) && buildState.FinishTime > DateTime.Now.AddMinutes(-15))
             {
                 Log.DebugFormat("Notifying:\n {0}", buildState);
                 _changeNotifier.Notify(buildState);
             }
             _latestBuilds[buildState.Name] = buildState.Uri;
         }
     }
     catch (Exception e)
     {
         Log.Error("Error while checking for changes", e);
     }
 }