code: @Override
      public SetQueueAttributesResult setQueueAttributes(SetQueueAttributesRequest request) {
          request = beforeClientExecution(request);
          return executeSetQueueAttributes(request);
      }
docs: <p>
  Sets the value of one or more queue attributes. When you change a queue's attributes, the change can take up to
  60 seconds for most of the attributes to propagate throughout the Amazon SQS system. Changes made to the
  <code>MessageRetentionPeriod</code> attribute can take up to 15 minutes.
  </p>
  <note>
  <p>
  In the future, new attributes might be added. If you write code that calls this action, we recommend that you
  structure your code so that it can handle new attributes gracefully.
  </p>
  <p>
  Cross-account permissions don't apply to this action. For more information, see see <a href=
  "http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name"
  >Grant Cross-Account Permissions to a Role and a User Name</a> in the <i>Amazon Simple Queue Service Developer
  Guide</i>.
  </p>
  </note>
  
  @param setQueueAttributesRequest
  @return Result of the SetQueueAttributes operation returned by the service.
  @throws InvalidAttributeNameException
  The specified attribute doesn't exist.
  @sample AmazonSQS.SetQueueAttributes
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SetQueueAttributes" target="_top">AWS API
  Documentation</a>