using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Amazon.Runtime.SharedInterfaces { /// /// ICoreAmazonSQS is not meant to use directly. It defines SQS with basic .NET types /// and allows other services to be able to use SQS as a runtime dependency. This interface /// is implemented by the AmazonSQSClient defined in the SQS assembly. /// public interface ICoreAmazonSQS { #if BCL /// /// /// This method is used internally to access the Amazon SQS service within other service assemblies. /// Please use AmazonSQSClient to access Amazon SQS instead. /// /// Get the attributes for the queue identified by the queue URL. /// /// The queue URL to get attributes for. /// The attributes for the queue. Dictionary GetAttributes(string queueUrl); #endif #if AWS_ASYNC_API /// /// Get the attributes for the queue identified by the queue URL asynchronously. /// /// The queue URL to get attributes for. /// A Task containing the result of a dictionary of attributes for the queue. System.Threading.Tasks.Task> GetAttributesAsync(string queueUrl); #endif #if BCL /// /// /// This method is used internally to access the Amazon SQS service within other service assemblies. /// Please use AmazonSQSClient to access Amazon SQS instead. /// /// Set the attributes on the queue identified by the queue URL. /// /// The queue URL to set the attributues. /// The attributes to set. void SetAttributes(string queueUrl, Dictionary attributes); #endif #if AWS_ASYNC_API /// /// Set the attributes on the queue identified by the queue URL asynchronously. /// /// The queue URL to set the attributues. /// The attributes to set. /// A Task System.Threading.Tasks.Task SetAttributesAsync(string queueUrl, Dictionary attributes); #endif } }