public async Task <QueueDefinition> CreateQueue(IWorkContext context, QueueDefinition queueDefinition) { context.Verify(nameof(context)).IsNotNull(); queueDefinition.Verify(nameof(queueDefinition)).IsNotNull(); QueueDescription createdDescription = await _managementClient.CreateQueueAsync(queueDefinition.ConvertTo(), context.CancellationToken); return(createdDescription.ConvertTo()); }
public CreateQueueState(IQueueManagement queueManagement, QueueDefinition queueDefinition) { queueManagement.Verify(nameof(queueManagement)).IsNotNull(); queueDefinition.Verify(nameof(queueDefinition)).IsNotNull(); queueDefinition.QueueName.Verify(nameof(queueDefinition.QueueName)).IsNotNull(); _queueDefinition = queueDefinition; _managementClient = queueManagement; }
public QueueRegistration(string serviceHubNamespace, string nodeId, QueueDefinition queueDefinition) { serviceHubNamespace.Verify(nameof(serviceHubNamespace)).IsNotEmpty(); nodeId.Verify(nameof(nodeId)).IsNotEmpty(); queueDefinition.Verify(nameof(queueDefinition)).IsNotNull(); ServiceHubNamespace = serviceHubNamespace; NodeId = nodeId; QueueDefinition = queueDefinition; }
public static QueueDescription ConvertTo(this QueueDefinition subject) { subject.Verify(nameof(subject)).IsNotNull(); subject.QueueName !.Verify(nameof(subject.QueueName)).IsNotEmpty(); return(new QueueDescription(subject.QueueName) { LockDuration = subject.LockDuration, RequiresDuplicateDetection = subject.RequiresDuplicateDetection, DuplicateDetectionHistoryTimeWindow = subject.DuplicateDetectionHistoryTimeWindow, RequiresSession = subject.RequiresSession, DefaultMessageTimeToLive = subject.DefaultMessageTimeToLive, AutoDeleteOnIdle = subject.AutoDeleteOnIdle, EnableDeadLetteringOnMessageExpiration = subject.EnableDeadLetteringOnMessageExpiration, MaxDeliveryCount = subject.MaxDeliveryCount, EnablePartitioning = subject.EnablePartitioning, }); }