示例#1
0
 protected override void InternalValidate()
 {
     base.InternalValidate();
     if (base.DataObject != null)
     {
         RemoveMailbox.CheckManagedGroups(base.DataObject, base.TenantGlobalCatalogSession, new Task.TaskWarningLoggingDelegate(this.WriteWarning));
         if (this.orgAdminHelper.ShouldPreventLastAdminRemoval(this, base.DataObject.OrganizationId) && this.orgAdminHelper.IsLastAdmin(base.DataObject))
         {
             base.WriteError(new CannotRemoveLastOrgAdminException(Strings.ErrorCannotRemoveLastOrgAdmin(base.DataObject.Identity.ToString())), ExchangeErrorCategory.Client, base.DataObject.Identity);
         }
     }
 }
示例#2
0
 protected override void InternalValidate()
 {
     this.latencyContext = ProvisioningPerformanceHelper.StartLatencyDetection(this);
     base.InternalValidate();
     if (base.DataObject != null)
     {
         RemoveMailbox.CheckManagedGroups(base.DataObject, base.TenantGlobalCatalogSession, new Task.TaskWarningLoggingDelegate(this.WriteWarning));
         if (this.orgAdminHelper.ShouldPreventLastAdminRemoval(this, base.DataObject.OrganizationId) && this.orgAdminHelper.IsLastAdmin(base.DataObject))
         {
             base.WriteError(new CannotRemoveLastOrgAdminException(Strings.ErrorCannotRemoveLastOrgAdmin(base.DataObject.Identity.ToString())), ExchangeErrorCategory.Client, base.DataObject.Identity);
         }
         RemoveMailbox.CheckModeratedMailboxes(base.DataObject, base.TenantGlobalCatalogSession, new Task.ErrorLoggerDelegate(base.WriteError));
         if (base.DataObject.CatchAllRecipientBL.Count > 0)
         {
             string domain = string.Join(", ", (from r in base.DataObject.CatchAllRecipientBL
                                                select r.Name).ToArray <string>());
             base.WriteError(new CannotRemoveMailboxCatchAllRecipientException(domain), ExchangeErrorCategory.Client, base.DataObject.Identity);
         }
     }
 }