public void PushJob(AdvertJob job) { _channel.BasicPublish( exchange: "", routingKey: QueueName(job.SourceType), basicProperties: null, body: Encoding.UTF8.GetBytes(job.Id) ); }
public AdvertJobResult Process(AdvertJob job) { var result = new AdvertJobResult { Job = job }; var adResponse = _client.GetAsync(_config.GetAdvertDataUrl(job.Id)).Result; if (adResponse.IsSuccessStatusCode) { result.Text = ExtractAdTextFromJsonString(adResponse.Content.ReadAsStringAsync().Result); } else { throw new HttpRequestException("Response code: " + adResponse.StatusCode); } var contactsResponse = _client.GetAsync(_config.GetAdvertContactUrl(job.Id)).Result; if (contactsResponse.IsSuccessStatusCode) { result.Contacts = ExtractAdContactsFromJsonString(contactsResponse.Content.ReadAsStringAsync().Result); } return(result); }
private void HandleError(Exception e, AdvertEntry entry, AdvertJob job) { _logger.LogWarning(new EventId(), $"Grabber {job.SourceType} task {job.Id} failed: {e.Message}"); entry.RunningJobsCount--; }