(items map[string]types.AttributeValue)
| 290 | } |
| 291 | |
| 292 | func convertAttributeValueMapToRow(items map[string]types.AttributeValue) map[string]*dynamodbQueryResultMeta { |
| 293 | result := make(map[string]*dynamodbQueryResultMeta, len(items)) |
| 294 | var columnType string |
| 295 | for item, attributeValue := range items { |
| 296 | switch attributeValue.(type) { |
| 297 | case *types.AttributeValueMemberB: |
| 298 | columnType = "Binary" |
| 299 | case *types.AttributeValueMemberBOOL: |
| 300 | columnType = "Boolean" |
| 301 | case *types.AttributeValueMemberBS: |
| 302 | columnType = "BinarySet" |
| 303 | case *types.AttributeValueMemberL: |
| 304 | columnType = "List" |
| 305 | case *types.AttributeValueMemberM: |
| 306 | columnType = "Map" |
| 307 | case *types.AttributeValueMemberN: |
| 308 | columnType = "Number" |
| 309 | case *types.AttributeValueMemberNS: |
| 310 | columnType = "NumberSet" |
| 311 | case *types.AttributeValueMemberNULL: |
| 312 | columnType = "Null" |
| 313 | case *types.AttributeValueMemberS: |
| 314 | columnType = "String" |
| 315 | case *types.AttributeValueMemberSS: |
| 316 | columnType = "StringSet" |
| 317 | default: |
| 318 | columnType = "Unknown" |
| 319 | } |
| 320 | value, err := convertAttributeValueToRowValue(attributeValue) |
| 321 | var r *v1pb.RowValue |
| 322 | if err != nil { |
| 323 | r = &v1pb.RowValue{ |
| 324 | Kind: &v1pb.RowValue_StringValue{StringValue: err.Error()}, |
| 325 | } |
| 326 | } else { |
| 327 | r = value |
| 328 | } |
| 329 | result[item] = &dynamodbQueryResultMeta{ |
| 330 | columnType: columnType, |
| 331 | value: r, |
| 332 | } |
| 333 | } |
| 334 | return result |
| 335 | } |
| 336 | |
| 337 | func convertAttributeValueToRowValue(attributeValue types.AttributeValue) (*v1pb.RowValue, error) { |
| 338 | switch attributeValue := attributeValue.(type) { |
no test coverage detected