public void RunService() { try { _refreshTokenTimer.Start(); var publications = _bulkEmailRepository.GetPublications(_token); var publicationOperationIds = new Dictionary <MpBulkEmailPublication, List <string> >(); foreach (var publication in publications) { PullSubscriptionStatusChangesFromThirdParty(publication); var pageViewIds = _bulkEmailRepository.GetPageViewIds(_token, publication.PublicationId); var subscribers = _bulkEmailRepository.GetSubscribers(_token, publication.PublicationId, pageViewIds); var operationIds = CreateAndSendBatches(publication, subscribers); publicationOperationIds.Add(publication, operationIds); } ProcessSynchronizationResultsWithRetries(publicationOperationIds); } finally { _refreshTokenTimer.Stop(); } }
private string GetPublicationId(string token, string publicationName) { var publications = _bulkEmailRepository.GetPublications(token); string publicationId = publications.First(r => r.Title == publicationName).ThirdPartyPublicationId; return(publicationId); }