in iot-onboarding-service/src/cloudrack-lambda-core/db/db.go [395:431]
func (dbc DBConfig) FindStartingWith(pk string, value string, data interface{}) error {
var queryInput = &dynamodb.QueryInput{
TableName: aws.String(dbc.TableName),
KeyConditions: map[string]*dynamodb.Condition{
dbc.PrimaryKey: {
ComparisonOperator: aws.String("EQ"),
AttributeValueList: []*dynamodb.AttributeValue{
{
S: aws.String(pk),
},
},
},
dbc.SortKey: {
ComparisonOperator: aws.String("BEGINS_WITH"),
AttributeValueList: []*dynamodb.AttributeValue{
{
S: aws.String(value),
},
},
},
},
}
fmt.Println("DB:FindStartingWith> rq: %+v", queryInput)
var result, err = dbc.DbService.QueryWithContext(dbc.LambdaContext, queryInput)
if err != nil {
fmt.Println("DB:FindStartingWith> NOT FOUND")
fmt.Println(err.Error())
return err
}
err = dynamodbattribute.UnmarshalListOfMaps(result.Items, data)
if err != nil {
panic(fmt.Sprintf("Failed to unmarshal Record, %v", err))
}
return err
}