MCPcopy Create free account
hub / github.com/dbProjectRED/redimo.go / HSET

Method HSET

hashes.go:28–55  ·  view source on GitHub ↗
(key string, fieldValues map[string]Value)

Source from the content-addressed store, hash-verified

26}
27
28func (c Client) HSET(key string, fieldValues map[string]Value) (newlySavedFields map[string]Value, err error) {
29 newlySavedFields = make(map[string]Value)
30
31 for field, value := range fieldValues {
32 builder := newExpresionBuilder()
33 builder.updateSetAV(vk, value.ToAV())
34
35 resp, err := c.ddbClient.UpdateItemRequest(&dynamodb.UpdateItemInput{
36 ConditionExpression: builder.conditionExpression(),
37 ExpressionAttributeNames: builder.expressionAttributeNames(),
38 ExpressionAttributeValues: builder.expressionAttributeValues(),
39 Key: keyDef{pk: key, sk: field}.toAV(c),
40 ReturnValues: dynamodb.ReturnValueAllOld,
41 TableName: aws.String(c.table),
42 UpdateExpression: builder.updateExpression(),
43 }).Send(context.TODO())
44
45 if err != nil {
46 return newlySavedFields, err
47 }
48
49 if len(resp.Attributes) < 1 {
50 newlySavedFields[field] = value
51 }
52 }
53
54 return
55}
56
57func (c Client) HMSET(key string, fieldValues map[string]Value) (err error) {
58 items := make([]dynamodb.TransactWriteItem, 0, len(fieldValues))

Callers 2

xGroupCursorSetMethod · 0.95
TestBasicHashesFunction · 0.80

Calls 9

newExpresionBuilderFunction · 0.85
updateSetAVMethod · 0.80
conditionExpressionMethod · 0.80
updateExpressionMethod · 0.80
ToAVMethod · 0.65
toAVMethod · 0.45
StringMethod · 0.45

Tested by 1

TestBasicHashesFunction · 0.64