public Task <SecretDetails> GetSecretDetails(string secret) { SecretDetails secretDetails = null; _db.TryGetValue(secret, out secretDetails); return(Task.FromResult(secretDetails)); }
public Task <bool> PutSecret(string secret, string challenge, string address, string fileHash) { var item = new SecretDetails() { Challenge = challenge, Address = address, FileHash = fileHash }; _db.Add(secret, item); return(Task.FromResult(true)); }
public async Task <SecretDetails> GetSecretDetails(string secret) { var request = new QueryRequest { TableName = tableName, KeyConditionExpression = string.Format("{0} = :v_Secret", columnSecret), ExpressionAttributeValues = new Dictionary <string, AttributeValue> { { ":v_Secret", new AttributeValue { S = secret } } }, ProjectionExpression = string.Format("{0}, {1}, {2}", columnAddress, columnChallenge, columnFileHash), ConsistentRead = true }; var response = await _client.QueryAsync(request); if (response.Count == 0) { return(null); } var item = response.Items.First(); AttributeValue attrAddress = null; item.TryGetValue(columnAddress, out attrAddress); var address = attrAddress.S; AttributeValue attrChallenge = null; item.TryGetValue(columnChallenge, out attrChallenge); var challenge = attrChallenge.S; AttributeValue attrFileHash = null; item.TryGetValue(columnFileHash, out attrFileHash); var fileHash = attrFileHash.S; var res = new SecretDetails() { Address = address, Challenge = challenge, FileHash = fileHash }; return(res); }