private void server_IntegrationCompleted(object sender, IntegrationCompletedEventArgs e)
 {
     lock (updateLock)
     {
         if (requests.Contains(e.ProjectName)) requests.Remove(e.ProjectName);
     }
 }
 /// <summary>
 /// Fires the IntegrationCompleted event.
 /// </summary>
 /// <param name="request">The integration request.</param>
 /// <param name="status">The outcome of the integration.</param>
 protected virtual void FireIntegrationCompleted(IntegrationRequest request, IntegrationStatus status)
 {
     if (IntegrationCompleted != null)
     {
         IntegrationCompletedEventArgs args = new IntegrationCompletedEventArgs(request,
             project.Name,
             status);
         IntegrationCompleted(this, args);
     }
 }
 /// <summary>
 /// Pass this event onto any listeners.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="args"></param>
 private void OnIntegrationCompleted(object sender, IntegrationCompletedEventArgs args)
 {
     FireIntegrationCompleted(args.Request, args.ProjectName, args.Status);
 }