本文整理汇总了C#中System.Uri.Requires方法的典型用法代码示例。如果您正苦于以下问题:C# Uri.Requires方法的具体用法?C# Uri.Requires怎么用?C# Uri.Requires使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Uri
的用法示例。
在下文中一共展示了Uri.Requires方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Subscriber
public Subscriber(string name, Uri queueUrl, string queueArn, bool longLived)
{
name.Requires("name").IsNotNull();
queueUrl.Requires("queueUrl").IsNotNull();
queueArn.Requires("queueArn").IsNotNull();
Name = name;
QueueUrl = queueUrl;
QueueArn = queueArn;
LongLived = longLived;
}
示例2: GetQueueArn
public string GetQueueArn(Uri queueUrl)
{
queueUrl.Requires("queueUrl").IsNotNull();
var attributes = new List<string> {QueueAttributeName.QueueArn};
var attributeRequest = new GetQueueAttributesRequest(queueUrl.AbsoluteUri, attributes);
using (var sqs = amazonSqsFactory())
{
var queueAttributes = sqs.GetQueueAttributes(attributeRequest);
return queueAttributes.Attributes[QueueAttributeName.QueueArn];
}
}
示例3: DeleteMessage
public string DeleteMessage(Uri queueUrl, string receiptHandle)
{
queueUrl.Requires("queueUrl").IsNotNull();
receiptHandle.Requires("receiptHandle").IsNotNullOrWhiteSpace();
var deleteMessageRequest = new DeleteMessageRequest(queueUrl.AbsoluteUri, receiptHandle);
using (var sqs = amazonSqsFactory())
{
var deleteResponseMessage = sqs.DeleteMessage(deleteMessageRequest);
return deleteResponseMessage.ResponseMetadata.RequestId;
}
}
示例4: DeleteQueue
public string DeleteQueue(Uri queueUri)
{
queueUri.Requires("queueUri").IsNotNull();
var sqsDeleteRequest = new DeleteQueueRequest(queueUri.AbsoluteUri);
try
{
using (var sqs = amazonSqsFactory())
{
var deleteQueueResponse = sqs.DeleteQueue(sqsDeleteRequest);
return deleteQueueResponse.ResponseMetadata.RequestId;
}
}
catch (AmazonSQSException)
{
return null;
}
}
示例5: ReadQueue
public IEnumerable<Message> ReadQueue(Uri queueUrl)
{
queueUrl.Requires("queueUrl").IsNotNull();
var receiveMessageRequest = new ReceiveMessageRequest(queueUrl.AbsoluteUri);
using (var sqs = amazonSqsFactory())
{
var response = sqs.ReceiveMessage(receiveMessageRequest);
return response.Messages;
}
}
示例6: SetSqsPolicyForSnsPublish
public string SetSqsPolicyForSnsPublish(Uri queueUrl, string queueArn, string mytopicArn)
{
queueUrl.Requires("queueUrl").IsNotNull();
queueArn.Requires("queueArn").IsNotNullOrWhiteSpace();
mytopicArn.Requires("mytopicArn").IsNotNullOrWhiteSpace();
var sqsPolicy = new Policy().WithStatements(
new Statement(Statement.StatementEffect.Allow)
.WithResources(new Resource(queueArn))
.WithPrincipals(Principal.AllUsers)
.WithActionIdentifiers(SQSActionIdentifiers.SendMessage)
.WithConditions(ConditionFactory.NewCondition(ConditionFactory.ArnComparisonType.ArnEquals,
ConditionSourceArn, mytopicArn)));
var attributes = new Dictionary<string, string>
{
{QueueAttributeName.Policy, sqsPolicy.ToJson()}
};
var setQueueAttributesRequest = new SetQueueAttributesRequest(queueUrl.AbsoluteUri, attributes);
using (var sqs = amazonSqsFactory())
{
var response = sqs.SetQueueAttributes(setQueueAttributesRequest);
return response.ResponseMetadata.RequestId;
}
}