public async Task <IActionResult> RecheckDkim(DkimInfoRequest request) { if (!ModelState.IsValid) { return(BadRequest(new ErrorResponse(ModelState.Values))); } DkimRecordsExpired recordsExpired = new DkimRecordsExpired(request.Domain, Guid.NewGuid().ToString(), null); await _messagePublisher.Publish(recordsExpired, _config.SnsTopicArn); return(new OkObjectResult("{}")); }
public async Task Handle(DkimRecordsExpired message) { string id = message.Id.ToLower(); DkimEntityState state = await LoadDkimState(id, message.Timestamp, nameof(DkimRecordsExpired)); if (!state.CanUpdate(nameof(DkimRecordsExpired).ToLower(), message.Timestamp)) { _log.LogInformation($"Cannot handle event DkimRecordsExpired as newer state exists for {id}."); return; } DkimPollPending dkimPollPending = state.UpdatePendingState(); state.Version++; await _dao.Save(state); _dispatcher.Dispatch(dkimPollPending, _config.SnsTopicArn); _log.LogInformation("Updated DkimEntity poll pending state for {Id}", id); }