public async Task <xItem> UpdateAsync(xItem item) { item.IncrementCount(); await _repository.UpdateAsync(item); return(item); }
public void DoWork(xItem item) { _logger.LogInformation($"Item worked: item {item.Item}"); item.UpdateStatus("locked"); //NOTE: these two methods should be refactored into one using rabbitmq exchange with fanout, //currently implemented only as rabbitmq direct msg queue _busClient.PublishAsync(new ItemStatusUpdated1( item.Id, item.Item, item.Status, item.Count )); _busClient.PublishAsync(new ItemStatusUpdated2( item.Id, item.Item, item.Status, item.Count )); }
public async Task ProcessAsync(xItem item) { BackgroundJob.Schedule(() => DoWork(item), TimeSpan.FromMinutes(1)); }
public async Task UpdateAsync(xItem item) => await Collection.UpdateOneAsync( Builders <xItem> .Filter.Eq(s => s.Id, item.Id), Builders <xItem> .Update .Set("Count", item.Count) .Set("Status", item.Status));
public async Task AddAsync(xItem item) => await Collection.InsertOneAsync(item);
public async Task AddAsync(Guid id, string item, string status, int count) { var xItem = new xItem(id, item, "open", 1); await _repository.AddAsync(xItem); }