@@ -235,7 +235,11 @@ public PSQueueAttributes CreateUpdateQueue(string resourceGroupName, string name
235
235
parameters . RequiresSession = queue . RequiresSession ;
236
236
if ( queue . Status . HasValue )
237
237
parameters . Status = queue . Status ;
238
-
238
+ if ( ! string . IsNullOrEmpty ( queue . ForwardDeadLetteredMessagesTo ) )
239
+ parameters . ForwardDeadLetteredMessagesTo = queue . ForwardDeadLetteredMessagesTo ;
240
+ if ( ! string . IsNullOrEmpty ( queue . ForwardTo ) )
241
+ parameters . ForwardTo = queue . ForwardTo ;
242
+
239
243
SBQueue response = Client . Queues . CreateOrUpdate ( resourceGroupName , namespaceName , queueName , parameters ) ;
240
244
return new PSQueueAttributes ( response ) ;
241
245
}
@@ -468,8 +472,11 @@ public PSSubscriptionAttributes CreateUpdateSubscription(string resourceGroupNam
468
472
parameters . RequiresSession = subscription . RequiresSession ;
469
473
if ( subscription . Status . HasValue )
470
474
parameters . Status = subscription . Status ;
475
+ if ( ! string . IsNullOrEmpty ( subscription . ForwardTo ) )
476
+ parameters . ForwardTo = subscription . ForwardTo ;
477
+ if ( ! string . IsNullOrEmpty ( subscription . ForwardDeadLetteredMessagesTo ) )
478
+ parameters . ForwardDeadLetteredMessagesTo = subscription . ForwardDeadLetteredMessagesTo ;
471
479
472
-
473
480
var response = Client . Subscriptions . CreateOrUpdate ( resourceGroupName , namespaceName , topicName , subscriptionName , parameters ) ;
474
481
return new PSSubscriptionAttributes ( response ) ;
475
482
}
@@ -499,11 +506,19 @@ public bool DeleteSubscription(string resourceGroupName, string namespaceName, s
499
506
500
507
public PSRulesAttributes CreateUpdateRules ( string resourceGroupName , string namespaceName , string topicName , string subscriptionName , string ruleName , PSRulesAttributes ruleAttributes )
501
508
{
502
- var parameters = new Rule ( )
509
+ var parameters = new Rule ( ) ;
510
+ parameters . FilterType = ruleAttributes . FilterType ;
511
+ parameters . Action = new Management . ServiceBus . Models . Action ( )
512
+ {
513
+ SqlExpression = ruleAttributes . Action . SqlExpression ,
514
+ CompatibilityLevel = ruleAttributes . Action . CompatibilityLevel
515
+ } ;
516
+
517
+ if ( ruleAttributes . FilterType . ToString ( ) . Equals ( "SqlFilter" ) )
518
+ parameters . SqlFilter = new SqlFilter ( ) { RequiresPreprocessing = ruleAttributes . SqlFilter . RequiresPreprocessing , SqlExpression = ruleAttributes . SqlFilter . SqlExpression } ;
519
+ if ( ruleAttributes . FilterType . ToString ( ) . Equals ( "CorrelationFilter" ) )
503
520
{
504
- Action = new Management . ServiceBus . Models . Action ( ) ,
505
- SqlFilter = new SqlFilter ( ) { RequiresPreprocessing = ruleAttributes . SqlFilter . RequiresPreprocessing , SqlExpression = ruleAttributes . SqlFilter . SqlExpression } ,
506
- CorrelationFilter = new CorrelationFilter ( )
521
+ parameters . CorrelationFilter = new CorrelationFilter ( )
507
522
{
508
523
CorrelationId = ruleAttributes . CorrelationFilter . CorrelationId ,
509
524
MessageId = ruleAttributes . CorrelationFilter . MessageId ,
@@ -514,9 +529,8 @@ public PSRulesAttributes CreateUpdateRules(string resourceGroupName, string name
514
529
ReplyToSessionId = ruleAttributes . CorrelationFilter . ReplyToSessionId ,
515
530
ContentType = ruleAttributes . CorrelationFilter . ContentType ,
516
531
RequiresPreprocessing = ruleAttributes . CorrelationFilter . RequiresPreprocessing ,
517
- }
518
-
519
- } ;
532
+ } ;
533
+ }
520
534
521
535
var response = Client . Rules . CreateOrUpdate ( resourceGroupName , namespaceName , topicName , subscriptionName , ruleName , parameters ) ;
522
536
return new PSRulesAttributes ( response ) ;
0 commit comments