public override void ExecuteCmdlet()
        {
            PSSubscriptionAttributes subscriptionAttributes = new PSSubscriptionAttributes();

            if (InputObject != null)
            {
                subscriptionAttributes = InputObject;
            }
            else
            {
                // subscriptionAttributes = SubscriptionObj;
            }

            if (ShouldProcess(target: subscriptionAttributes.Name, action: string.Format(Resources.UpdateSubscription, subscriptionAttributes.Name, Namespace)))
            {
                try
                {
                    WriteObject(Client.CreateUpdateSubscription(ResourceGroupName, Namespace, Topic, subscriptionAttributes.Name, subscriptionAttributes));
                }
                catch (ErrorResponseException ex)
                {
                    WriteError(ServiceBusClient.WriteErrorforBadrequest(ex));
                }
            }
        }
 public override void ExecuteCmdlet()
 {
     try
     {
         if (!string.IsNullOrEmpty(Name))
         {
             PSSubscriptionAttributes subscriptionAttributes = Client.GetSubscription(ResourceGroupName, Namespace, Topic, Name);
             WriteObject(subscriptionAttributes);
         }
         else
         {
             if (MaxCount.HasValue)
             {
                 IEnumerable <PSSubscriptionAttributes> subscriptionAttributes = Client.ListSubscriptions(ResourceGroupName, Namespace, Topic, MaxCount);
                 WriteObject(subscriptionAttributes, true);
             }
             else
             {
                 IEnumerable <PSSubscriptionAttributes> subscriptionAttributes = Client.ListSubscriptions(ResourceGroupName, Namespace, Topic);
                 WriteObject(subscriptionAttributes, true);
             }
         }
     }
     catch (Management.ServiceBus.Models.ErrorResponseException ex)
     {
         WriteError(ServiceBusClient.WriteErrorforBadrequest(ex));
     }
 }
        public override void ExecuteCmdlet()
        {
            PSSubscriptionAttributes subAttributes = new PSSubscriptionAttributes();

            subAttributes.Name = Name;

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

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

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

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

            subAttributes.DeadLetteringOnFilterEvaluationExceptions = DeadLetteringOnFilterEvaluationExceptions.IsPresent;

            if (EnableBatchedOperations != null)
            {
                subAttributes.EnableBatchedOperations = EnableBatchedOperations;
            }

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

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

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

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

            if (ShouldProcess(target: Name, action: string.Format(Resources.CreateSubscription, Name, Topic, Namespace)))
            {
                WriteObject(Client.CreateUpdateSubscription(ResourceGroupName, Namespace, Topic, Name, subAttributes));
            }
        }
 public override void ExecuteCmdlet()
 {
     if (!string.IsNullOrEmpty(Name))
     {
         PSSubscriptionAttributes subscriptionAttributes = Client.GetSubscription(ResourceGroupName, Namespace, Topic, Name);
         WriteObject(subscriptionAttributes);
     }
     else
     {
         IEnumerable <PSSubscriptionAttributes> subscriptionAttributes = Client.ListSubscriptions(ResourceGroupName, Namespace, Topic);
         WriteObject(subscriptionAttributes, true);
     }
 }
        public override void ExecuteCmdlet()
        {
            PSSubscriptionAttributes subscriptionAttributes = new PSSubscriptionAttributes();

            if (InputObject != null)
            {
                subscriptionAttributes = InputObject;
            }
            else
            {
                // subscriptionAttributes = SubscriptionObj;
            }

            if (ShouldProcess(target: subscriptionAttributes.Name, action: string.Format(Resources.UpdateSubscription, subscriptionAttributes.Name, Namespace)))
            {
                WriteObject(Client.CreateUpdateSubscription(ResourceGroupName, Namespace, Topic, subscriptionAttributes.Name, subscriptionAttributes));
            }
        }
Esempio n. 6
0
        public PSSubscriptionAttributes CreateUpdateSubscription(string resourceGroupName, string namespaceName, string topicName, string subscriptionName, PSSubscriptionAttributes subscription)
        {
            var parameters = new SBSubscription();

            if (subscription.AutoDeleteOnIdle != null)
            {
                parameters.AutoDeleteOnIdle = (TimeSpan?)AzureServiceBusCmdletBase.ParseTimespan(subscription.AutoDeleteOnIdle);
            }
            if (subscription.DefaultMessageTimeToLive != null)
            {
                parameters.DefaultMessageTimeToLive = (TimeSpan?)AzureServiceBusCmdletBase.ParseTimespan(subscription.DefaultMessageTimeToLive);
            }
            if (subscription.LockDuration != null)
            {
                parameters.LockDuration = (TimeSpan?)AzureServiceBusCmdletBase.ParseTimespan(subscription.LockDuration);
            }
            if (subscription.DeadLetteringOnMessageExpiration.HasValue)
            {
                parameters.DeadLetteringOnMessageExpiration = subscription.DeadLetteringOnMessageExpiration;
            }
            if (subscription.DeadLetteringOnFilterEvaluationExceptions.HasValue)
            {
                parameters.DeadLetteringOnFilterEvaluationExceptions = subscription.DeadLetteringOnFilterEvaluationExceptions;
            }
            if (subscription.EnableBatchedOperations.HasValue)
            {
                parameters.EnableBatchedOperations = subscription.EnableBatchedOperations;
            }
            if (subscription.MaxDeliveryCount.HasValue)
            {
                parameters.MaxDeliveryCount = subscription.MaxDeliveryCount;
            }
            if (subscription.RequiresSession.HasValue)
            {
                parameters.RequiresSession = subscription.RequiresSession;
            }
            if (subscription.Status.HasValue)
            {
                parameters.Status = subscription.Status;
            }
            if (!string.IsNullOrEmpty(subscription.ForwardTo))
            {
                parameters.ForwardTo = subscription.ForwardTo;
            }
            if (!string.IsNullOrEmpty(subscription.ForwardDeadLetteredMessagesTo))
            {
                parameters.ForwardDeadLetteredMessagesTo = subscription.ForwardDeadLetteredMessagesTo;
            }

            var response = Client.Subscriptions.CreateOrUpdate(resourceGroupName, namespaceName, topicName, subscriptionName, parameters);

            return(new PSSubscriptionAttributes(response));
        }