public override void ExecuteCmdlet()
        {
            PSQueueAttributes queueAttributes = new PSQueueAttributes();

            if (InputObject != null)
            {
                PSNamespaceAttributes getNamespaceLoc = Client.GetNamespace(ResourceGroupName, Namespace);
                queueAttributes = InputObject;
            }

            if (ShouldProcess(target: Name, action: string.Format(Resources.UpdateQueue, Name, Namespace)))
            {
                WriteObject(Client.CreateUpdateQueue(ResourceGroupName, Namespace, queueAttributes.Name, queueAttributes));
            }
        }
        public override void ExecuteCmdlet()
        {
            PSQueueAttributes queueAttributes = new PSQueueAttributes();

            if (InputObject != null)
            {
                PSNamespaceAttributes getNamespaceLoc = Client.GetNamespace(ResourceGroupName, Namespace);
                queueAttributes = InputObject;
            }

            if (ShouldProcess(target: Name, action: string.Format(Resources.UpdateQueue, Name, Namespace)))
            {
                try
                {
                    WriteObject(Client.CreateUpdateQueue(ResourceGroupName, Namespace, queueAttributes.Name, queueAttributes));
                }
                catch (ErrorResponseException ex)
                {
                    WriteError(ServiceBusClient.WriteErrorforBadrequest(ex));
                }
            }
        }
        public override void ExecuteCmdlet()
        {
            try
            {
                PSCheckNameAvailabilityResultAttributes checkNameresult = new PSCheckNameAvailabilityResultAttributes();
                try
                {
                    if (ParameterSetName.Equals(QueueCheckNameAvailabilityParameterSet) && Queue.IsPresent)
                    {
                        PSQueueAttributes getQueueResult = Client.GetQueue(ResourceGroupName, Namespace, Name);
                        if (getQueueResult.Name.Equals(Name))
                        {
                            WriteObject(false);
                        }
                    }

                    if (ParameterSetName.Equals(TopicCheckNameAvailabilityParameterSet) && Topic.IsPresent)
                    {
                        PSTopicAttributes getTopicResult = Client.GetTopic(ResourceGroupName, Namespace, Name);
                        if (getTopicResult.Name.Equals(Name))
                        {
                            WriteObject(false);
                        }
                    }
                }
                catch (ErrorResponseException ex)
                {
                    if (ex.Message.ToLower().Contains("notfound"))
                    {
                        WriteObject(true);
                    }
                }
            }
            catch (ErrorResponseException ex)
            {
                WriteError(ServiceBusClient.WriteErrorforBadrequest(ex));
            }
        }
Beispiel #4
0
        public PSQueueAttributes CreateUpdateQueue(string resourceGroupName, string namespaceName, string queueName, PSQueueAttributes queue)
        {
            SBQueue parameters = new SBQueue();

            if (queue.LockDuration != null)
            {
                parameters.LockDuration = (TimeSpan?)AzureServiceBusCmdletBase.ParseTimespan(queue.LockDuration);
            }
            if (queue.AutoDeleteOnIdle != null)
            {
                parameters.AutoDeleteOnIdle = (TimeSpan?)AzureServiceBusCmdletBase.ParseTimespan(queue.AutoDeleteOnIdle);
            }
            if (queue.DefaultMessageTimeToLive != null)
            {
                parameters.DefaultMessageTimeToLive = (TimeSpan?)AzureServiceBusCmdletBase.ParseTimespan(queue.DefaultMessageTimeToLive);
            }
            if (queue.DuplicateDetectionHistoryTimeWindow != null)
            {
                parameters.DuplicateDetectionHistoryTimeWindow = (TimeSpan?)AzureServiceBusCmdletBase.ParseTimespan(queue.DuplicateDetectionHistoryTimeWindow);
            }
            if (queue.DeadLetteringOnMessageExpiration.HasValue)
            {
                parameters.DeadLetteringOnMessageExpiration = queue.DeadLetteringOnMessageExpiration;
            }
            if (queue.EnableExpress.HasValue)
            {
                parameters.EnableExpress = queue.EnableExpress;
            }
            if (queue.EnableBatchedOperations.HasValue)
            {
                parameters.EnableBatchedOperations = queue.EnableBatchedOperations;
            }
            if (queue.EnablePartitioning.HasValue)
            {
                parameters.EnablePartitioning = queue.EnablePartitioning;
            }
            if (queue.MaxDeliveryCount.HasValue)
            {
                parameters.MaxDeliveryCount = queue.MaxDeliveryCount;
            }
            if (queue.MaxSizeInMegabytes.HasValue)
            {
                parameters.MaxSizeInMegabytes = queue.MaxSizeInMegabytes;
            }
            if (queue.RequiresDuplicateDetection.HasValue)
            {
                parameters.RequiresDuplicateDetection = queue.RequiresDuplicateDetection;
            }
            if (queue.RequiresSession.HasValue)
            {
                parameters.RequiresSession = queue.RequiresSession;
            }
            if (queue.Status.HasValue)
            {
                parameters.Status = queue.Status;
            }
            if (!string.IsNullOrEmpty(queue.ForwardDeadLetteredMessagesTo))
            {
                parameters.ForwardDeadLetteredMessagesTo = queue.ForwardDeadLetteredMessagesTo;
            }
            if (!string.IsNullOrEmpty(queue.ForwardTo))
            {
                parameters.ForwardTo = queue.ForwardTo;
            }

            SBQueue response = Client.Queues.CreateOrUpdate(resourceGroupName, namespaceName, queueName, parameters);

            return(new PSQueueAttributes(response));
        }
        public override void ExecuteCmdlet()
        {
            PSQueueAttributes queueAttributes = new PSQueueAttributes();

            PSNamespaceAttributes getNamespaceLoc = Client.GetNamespace(ResourceGroupName, Namespace);

            queueAttributes.Name = Name;

            queueAttributes.EnablePartitioning = EnablePartitioning;

            if (LockDuration != null)
            {
                queueAttributes.LockDuration = LockDuration;
            }

            if (AutoDeleteOnIdle != null)
            {
                queueAttributes.AutoDeleteOnIdle = AutoDeleteOnIdle;
            }

            if (DefaultMessageTimeToLive != null)
            {
                queueAttributes.DefaultMessageTimeToLive = DefaultMessageTimeToLive;
            }

            if (DuplicateDetectionHistoryTimeWindow != null)
            {
                queueAttributes.DuplicateDetectionHistoryTimeWindow = DuplicateDetectionHistoryTimeWindow;
            }

            if (DeadLetteringOnMessageExpiration != null)
            {
                queueAttributes.DeadLetteringOnMessageExpiration = DeadLetteringOnMessageExpiration;
            }

            queueAttributes.EnableBatchedOperations = EnableBatchedOperations.IsPresent;

            if (EnableExpress != null)
            {
                queueAttributes.EnableExpress = EnableExpress;
            }

            if (MaxDeliveryCount != null)
            {
                queueAttributes.MaxDeliveryCount = MaxDeliveryCount;
            }

            if (MaxSizeInMegabytes != null)
            {
                queueAttributes.MaxSizeInMegabytes = (int?)MaxSizeInMegabytes;
            }

            if (MessageCount != null)
            {
                queueAttributes.MessageCount = MessageCount;
            }

            if (RequiresDuplicateDetection != null)
            {
                queueAttributes.RequiresDuplicateDetection = RequiresDuplicateDetection;
            }

            if (RequiresSession != null)
            {
                queueAttributes.RequiresSession = RequiresSession;
            }

            if (SizeInBytes != null)
            {
                queueAttributes.SizeInBytes = SizeInBytes;
            }

            if (ForwardTo != null)
            {
                queueAttributes.ForwardTo = ForwardTo;
            }

            if (ForwardDeadLetteredMessagesTo != null)
            {
                queueAttributes.ForwardDeadLetteredMessagesTo = ForwardDeadLetteredMessagesTo;
            }


            if (ShouldProcess(target: Name, action: string.Format(Resources.CreateQueue, Name, Namespace)))
            {
                try
                {
                    WriteObject(Client.CreateUpdateQueue(ResourceGroupName, Namespace, Name, queueAttributes));
                }
                catch (ErrorResponseException ex)
                {
                    WriteError(ServiceBusClient.WriteErrorforBadrequest(ex));
                }
            }
        }