public async Task RemoveOutputsAsync(IEnumerable <IOutput> outputs) { foreach (var output in outputs) { var index = await _indexByTransactionHash.GetDataAsync( IndexByTransactionHash.GeneratePartitionKey(output.TransactionHash), IndexByTransactionHash.GenerateRowKey(output.N)); if (index != null) { var entity = await _storage.DeleteAsync(index); if (entity != null) { await _indexByAddress.DeleteAsync(IndexByAddress.GeneratePartitionKey(entity.Address), IndexByAddress.GenerateRowKey(entity.TransactionHash, entity.N)); } await _indexByTransactionHash.DeleteAsync(index); } } }
public async Task <IEnumerable <IInternalOutput> > GetOutputsAsync(string address) { var indexes = await _indexByAddress.GetDataAsync(IndexByAddress.GeneratePartitionKey(address)); return(await _storage.GetDataAsync(indexes)); }