'Gets one or all attributes of a Queue
:type queue: A Queue object
:param queue: The SQS queue to get attributes for
:type attribute: str
:param attribute: The specific attribute requested.  If not
supplied, the default is to return all attributes.  Valid
attributes are:
* All
* ApproximateNumberOfMessages
* ApproximateNumberOfMessagesNotVisible
* VisibilityTimeout
* CreatedTimestamp
* LastModifiedTimestamp
* Policy
* MaximumMessageSize
* MessageRetentionPeriod
* QueueArn
* ApproximateNumberOfMessagesDelayed
* DelaySeconds
* ReceiveMessageWaitTimeSeconds
* RedrivePolicy
:rtype: :class:`boto.sqs.attributes.Attributes`
:return: An Attributes object containing request value(s).'

def get_queue_attributes(self, queue, attribute='All'):

    params = {'AttributeName': attribute}
    return self.get_object('GetQueueAttributes', params, Attributes, queue.id)
