public async Task HandleAsync(string eventPayload) { var @event = DeserializeEvent <VacancyClonedEvent>(eventPayload); try { _logger.LogInformation($"Processing {nameof(VacancyClonedEvent)} for vacancy: {{VacancyId}}", @event.VacancyId); await _client.AssignVacancyNumber(@event.VacancyId); _logger.LogInformation($"Finished Processing {nameof(VacancyClonedEvent)} for vacancy: {{VacancyId}}", @event.VacancyId); } catch (Exception ex) { _logger.LogError(ex, "Unable to process {eventBody}", @event); throw; } }
public async Task HandleAsync(string eventPayload) { var @event = DeserializeEvent <DraftVacancyUpdatedEvent>(eventPayload); try { _logger.LogInformation($"Processing {nameof(DraftVacancyUpdatedEvent)} for vacancy: {{VacancyId}}", @event.VacancyId); await _client.AssignVacancyNumber(@event.VacancyId); await _client.PatchTrainingProviderAsync(@event.VacancyId); await _client.EnsureVacancyIsGeocodedAsync(@event.VacancyId); _logger.LogInformation($"Finished Processing {nameof(DraftVacancyUpdatedEvent)} for vacancy: {{VacancyId}}", @event.VacancyId); } catch (Exception ex) { _logger.LogError(ex, "Unable to process {eventBody}", @event); throw; } }