Struggling to understand how to deserialize a json object sent from AWS DynamoDB. I'm able to successfully call dynamoDB.describeTable(describeTableInput!) and receive a detailed response ...
2017-02-08 20:30:36.054 AWS_Test[84241:3626357] AWSiOSSDK v2.5.0 [Debug] AWSURLResponseSerialization.m line:63 | -[AWSJSONResponseSerializer responseObjectForResponse:originalRequest:currentRequest:data:error:] | Response body:
{"Table":{"AttributeDefinitions":[{"AttributeName":"Author","AttributeType":"S"},{"AttributeName":"ISBN","AttributeType":"S"}],"CreationDateTime":1.486165623131E9,"GlobalSecondaryIndexes":[{"IndexArn":"arn:aws:dynamodb:ap-southeast-2:xxxxxxxxxxxxxxx:table/Books/index/ISBN-index","IndexName":"ISBN-index","IndexSizeBytes":94946,"IndexStatus":"ACTIVE","ItemCount":1780,"KeySchema":[{"AttributeName":"ISBN","KeyType":"HASH"}],"Projection":{"ProjectionType":"ALL"},"ProvisionedThroughput":{"NumberOfDecreasesToday":0,"ReadCapacityUnits":5,"WriteCapacityUnits":5}},{"IndexArn":"arn:aws:dynamodb:ap-southeast-2:xxxxxxxxxxxxxx:table/Books/index/Author-index","IndexName":"Author-index","IndexSizeBytes":94946,"IndexStatus":"ACTIVE","ItemCount":1780,"KeySchema":[{"AttributeName":"Author","KeyType":"HASH"}],"Projection":{"ProjectionType":"ALL"},"ProvisionedThroughput":{"NumberOfDecreasesToday":0,"ReadCapacityUnits":5,"WriteCapacityUnits":5}}],"ItemCount":1780,"KeySchema":[{"AttributeName":"ISBN","KeyType":"HASH"}],"ProvisionedThroughput":{"NumberOfDecreasesToday":0,"ReadCapacityUnits":5,"WriteCapacityUnits":5},"TableArn":"arn:aws:dynamodb:ap-southeast-2:xxxxxxxxxxxxxxxxx:table/Books","TableName":"Books","TableSizeBytes":94946,"TableStatus":"ACTIVE"}}
My function calling Dynamo ...
func describeTable() {
let dynamoDB = AWSDynamoDB.default()
let describeTableInput = AWSDynamoDBDescribeTableInput()
describeTableInput?.tableName = "Books"
let tableDescription = dynamoDB.describeTable(describeTableInput!) as! AWSTask<AnyObject>
let jsonResult: NSDictionary = try JSONSerialization.JSONObjectWithData(Data, options: JSONSerialization.ReadingOptions.MutableContainers) as! NSDictionary
print(jsonResult.object(forKey: "ItemCount")!)
// let's dump everything to see what was returned
dump(tableDescription)
}
But I've been struggling for days now trying to work out how to deserialize the response and store in my own dictionary.
Anyone able to assist!? thx!