diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/ExchangeServer/ExchangeServerController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/ExchangeServer/ExchangeServerController.cs index 33c7b302..78b63d5b 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/ExchangeServer/ExchangeServerController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/ExchangeServer/ExchangeServerController.cs @@ -3372,26 +3372,29 @@ namespace WebsitePanel.EnterpriseServer ExchangeMailboxPlan policy = GetExchangeMailboxPlan(itemID, policyId); - List policytaglist = GetExchangeMailboxPlanRetentionPolicyTags(policyId); - - List tagLinks = new List(); - - foreach (ExchangeMailboxPlanRetentionPolicyTag policytag in policytaglist) + if (policy != null) { - ExchangeRetentionPolicyTag tag = GetExchangeRetentionPolicyTag(itemID, policytag.TagID); - tagLinks.Add(tag.WSPUniqueName); + List policytaglist = GetExchangeMailboxPlanRetentionPolicyTags(policyId); - // update PlanRetentionPolicyTags + List tagLinks = new List(); - ResultObject resItem = exchange.SetRetentionPolicyTag(tag.WSPUniqueName, (ExchangeRetentionPolicyTagType)tag.TagType, tag.AgeLimitForRetention, (ExchangeRetentionPolicyTagAction)tag.RetentionAction); - result.ErrorCodes.AddRange(resItem.ErrorCodes); - result.IsSuccess = result.IsSuccess && resItem.IsSuccess; + foreach (ExchangeMailboxPlanRetentionPolicyTag policytag in policytaglist) + { + ExchangeRetentionPolicyTag tag = GetExchangeRetentionPolicyTag(itemID, policytag.TagID); + tagLinks.Add(tag.WSPUniqueName); + + // update PlanRetentionPolicyTags + + ResultObject resItem = exchange.SetRetentionPolicyTag(tag.WSPUniqueName, (ExchangeRetentionPolicyTagType)tag.TagType, tag.AgeLimitForRetention, (ExchangeRetentionPolicyTagAction)tag.RetentionAction); + result.ErrorCodes.AddRange(resItem.ErrorCodes); + result.IsSuccess = result.IsSuccess && resItem.IsSuccess; + } + + ResultObject res = exchange.SetRetentionPolicy(policy.WSPUniqueName, tagLinks.ToArray()); + result.ErrorCodes.AddRange(res.ErrorCodes); + result.IsSuccess = result.IsSuccess && res.IsSuccess; } - ResultObject res = exchange.SetRetentionPolicy(policy.WSPUniqueName, tagLinks.ToArray()); - result.ErrorCodes.AddRange(res.ErrorCodes); - result.IsSuccess = result.IsSuccess && res.IsSuccess; - } }