All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.auth.policy.resources.SQSQueueResource Maven / Gradle / Ivy

/*
 * Copyright 2010-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 *
 *  http://aws.amazon.com/apache2.0
 *
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.auth.policy.resources;

import com.amazonaws.auth.policy.Resource;
import com.amazonaws.services.sqs.AmazonSQS;

/**
 * AWS access control policy resource that identifies an Amazon SQS queue.
 * 

* This is an older style of referencing an Amazon SQS queue. You can also use the queue's Amazon * Resource Name (ARN), which you can obtain by calling * {@link AmazonSQS#getQueueAttributes(com.amazonaws.services.sqs.model.GetQueueAttributesRequest)} * and requesting the "QueueArn" attribute. */ public class SQSQueueResource extends Resource { /** * Constructs a new SQS queue resource for an access control policy. A policy statement using * this resource will allow or deny actions on the specified queue. * * @param accountId * The AWS account ID of the queue owner. * @param queueName * The name of the Amazon SQS queue. */ public SQSQueueResource(String accountId, String queueName) { super("/" + formatAccountId(accountId) + "/" + queueName); } private static String formatAccountId(String accountId) { if (accountId == null) { throw new IllegalArgumentException("Account ID cannot be null"); } return accountId.trim().replaceAll("-", ""); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy