public void PopulateQueueAttributes(QueueDescription queue) { var req = new GetQueueAttributesRequest() { QueueUrl = queue.Url }; req.AttributeName.Add("ApproximateNumberOfMessages"); req.AttributeName.Add("MessageRetentionPeriod"); var response = client.GetQueueAttributes(req); var result = new Dictionary<string, string>(10); if (response.IsSetGetQueueAttributesResult() && response.GetQueueAttributesResult.IsSetAttribute()) { foreach (Amazon.SQS.Model.Attribute att in response.GetQueueAttributesResult.Attribute) { switch (att.Name) { case "MessageRetentionPeriod": queue.MessageRetentionPeriod = TimeSpan.FromSeconds(Double.Parse(att.Value)); break; case "ApproximateNumberOfMessages": queue.ApproximateNumberOfMessages = Int32.Parse(att.Value); break; } } } }
public void PopulateQueueAttributes(QueueDescription queue) { var req = new GetQueueAttributesRequest() { QueueUrl = queue.Url }; req.AttributeNames.Add("ApproximateNumberOfMessages"); req.AttributeNames.Add("MessageRetentionPeriod"); var response = client.GetQueueAttributes(req); if (response.Attributes != null && response.Attributes.Any()) { foreach (KeyValuePair<string, string> att in response.Attributes) { switch (att.Key) { case "MessageRetentionPeriod": queue.MessageRetentionPeriod = TimeSpan.FromSeconds(Double.Parse(att.Value)); break; case "ApproximateNumberOfMessages": queue.ApproximateNumberOfMessages = Int32.Parse(att.Value); break; } } } }