public async Task <ActionResult> AddReceivedReceipt( [FromBody] MessageReceivedReceipt receipt, CancellationToken cancellationToken) { await _store.AddReadReceiptAsync(receipt, cancellationToken); return(Ok()); }
public async Task AddReceivedReceiptAsync( MessageReceivedReceipt readReceipt, CancellationToken cancellationToken) { HttpClient client = _httpClientFactory.CreateClient("Magnet"); var request = new HttpRequestMessage( HttpMethod.Post, $"{client.BaseAddress}stream/receipt"); request.Content = new StringContent( JsonConvert.SerializeObject(readReceipt), Encoding.UTF8, "application/json"); HttpResponseMessage result = await client.SendAsync(request, default); result.EnsureSuccessStatusCode(); }
public async Task AddReadReceiptAsync( MessageReceivedReceipt receipt, CancellationToken cancellationToken) { _logger.LogInformation("Add ReadReceipt to store {messageId}", receipt.MessageId); var log = new MessageReceivedLog { ClientName = receipt.ClientName, IsMatch = receipt.IsMatch, ReceivedAt = receipt.ReceivedAt }; UpdateDefinition <MessageRecord> update = Builders <MessageRecord> .Update.Push(x => x.ReceivedLog, log); UpdateResult updRes = await _dbContext.Messages.UpdateOneAsync( x => x.Id == receipt.MessageId, update, options : new UpdateOptions { IsUpsert = false }, cancellationToken); }
public Task AddReceivedReceiptAsync( MessageReceivedReceipt readReceipt, CancellationToken cancellationToken) { return(Task.CompletedTask); }