Exemplo n.º 1
0
        private void InternalResolveLocalSecondaryIdentities()
        {
            SyncMailUser syncMailUser = (SyncMailUser)this.GetDynamicParameters();

            base.SetReferenceParameter <UserContactIdParameter>(SyncMailUserSchema.Manager, this.Manager, syncMailUser, new GetRecipientDelegate <UserContactIdParameter>(this.GetRecipient));
            base.SetReferenceParameter <RecipientIdParameter>(MailUserSchema.ForwardingAddress, this.ForwardingAddress, syncMailUser, new GetRecipientDelegate <RecipientIdParameter>(this.GetRecipient));
            base.SetMultiReferenceParameter <DeliveryRecipientIdParameter>(MailEnabledRecipientSchema.BypassModerationFrom, this.BypassModerationFrom, syncMailUser, new GetRecipientDelegate <DeliveryRecipientIdParameter>(this.GetRecipient), new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual));
            base.SetMultiReferenceParameter <DeliveryRecipientIdParameter>(MailEnabledRecipientSchema.BypassModerationFromDLMembers, this.BypassModerationFromDLMembers, syncMailUser, new GetRecipientDelegate <DeliveryRecipientIdParameter>(this.GetRecipient), new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionGroup));
            if (base.Fields.IsModified("IntendedMailboxPlan"))
            {
                this.intendedMailboxPlanObject = null;
                if (this.IntendedMailboxPlanName != null)
                {
                    this.intendedMailboxPlanObject = base.ProvisioningCache.TryAddAndGetOrganizationDictionaryValue <ADUser, string>(CannedProvisioningCacheKeys.CacheKeyMailboxPlanIdParameterId, base.CurrentOrganizationId, this.IntendedMailboxPlanName.RawIdentity, () => (ADUser)base.GetDataObject <ADUser>(this.IntendedMailboxPlanName, base.TenantGlobalCatalogSession, null, new LocalizedString?(Strings.ErrorMailboxPlanNotFound(this.IntendedMailboxPlanName.ToString())), new LocalizedString?(Strings.ErrorMailboxPlanNotUnique(this.IntendedMailboxPlanName.ToString())), ExchangeErrorCategory.Client));
                }
            }
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawAcceptMessagesOnlyFrom", MailEnabledRecipientSchema.AcceptMessagesOnlyFrom, this.RawAcceptMessagesOnlyFrom, "RawAcceptMessagesOnlyFrom", syncMailUser, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawBypassModerationFrom", MailEnabledRecipientSchema.BypassModerationFrom, this.RawBypassModerationFrom, "RawBypassModerationFrom", syncMailUser, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawRejectMessagesFrom", MailEnabledRecipientSchema.RejectMessagesFrom, this.RawRejectMessagesFrom, "RawRejectMessagesFrom", syncMailUser, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >("RawGrantSendOnBehalfTo", MailEnabledRecipientSchema.GrantSendOnBehalfTo, this.RawGrantSendOnBehalfTo, "RawGrantSendOnBehalfTo", syncMailUser, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateGrantSendOnBehalfTo)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <ModeratorIDParameter> >("RawModeratedBy", MailEnabledRecipientSchema.ModeratedBy, this.RawModeratedBy, "RawModeratedBy", syncMailUser, new GetRecipientDelegate <RecipientWithAdUserIdParameter <ModeratorIDParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(RecipientTaskHelper.ValidateModeratedBy)));
            base.SetReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >("RawForwardingAddress", MailUserSchema.ForwardingAddress, this.RawForwardingAddress, "RawForwardingAddress", syncMailUser, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient), null);
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >("RawSiteMailboxOwners", SyncMailUserSchema.SiteMailboxOwners, this.RawSiteMailboxOwners, "RawSiteMailboxOwners", syncMailUser, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(SetSyncMailUser.ValidateSiteMailboxUsers)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >("RawSiteMailboxUsers", SyncMailUserSchema.SiteMailboxUsers, this.RawSiteMailboxUsers, "RawSiteMailboxUsers", syncMailUser, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(SetSyncMailUser.ValidateSiteMailboxUsers)));
            if (base.Fields.IsModified(SyncMailUserSchema.SiteMailboxOwners))
            {
                MultiValuedProperty <ADObjectId> value = SetSyncMailUser.ResolveSiteMailboxOwnersReferenceParameter(this.SiteMailboxOwners, base.TenantGlobalCatalogSession, new DataAccessHelper.CategorizedGetDataObjectDelegate(base.GetDataObject <ADRecipient>), new WriteWarningDelegate(this.WriteWarning));
                syncMailUser[SyncMailUserSchema.SiteMailboxOwners] = value;
            }
            base.SetMultiReferenceParameter <RecipientIdParameter>(SyncMailUserSchema.SiteMailboxUsers, SyncMailUserSchema.SiteMailboxUsers, this.SiteMailboxUsers, "SiteMailboxUsers", syncMailUser, new GetRecipientDelegate <RecipientIdParameter>(this.GetRecipient), new ValidateRecipientDelegate(SetSyncMailUser.ValidateSiteMailboxUsers));
        }
Exemplo n.º 2
0
        protected override void ResolveLocalSecondaryIdentities()
        {
            base.ResolveLocalSecondaryIdentities();
            SyncDistributionGroup dataObject = (SyncDistributionGroup)this.GetDynamicParameters();

            base.SetMultiReferenceParameter <DeliveryRecipientIdParameter>(MailEnabledRecipientSchema.BypassModerationFrom, this.BypassModerationFrom, dataObject, new GetRecipientDelegate <DeliveryRecipientIdParameter>(this.GetRecipient), new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual));
            base.SetMultiReferenceParameter <DeliveryRecipientIdParameter>(MailEnabledRecipientSchema.BypassModerationFromDLMembers, this.BypassModerationFromDLMembers, dataObject, new GetRecipientDelegate <DeliveryRecipientIdParameter>(this.GetRecipient), new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionGroup));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawAcceptMessagesOnlyFrom", MailEnabledRecipientSchema.AcceptMessagesOnlyFrom, this.RawAcceptMessagesOnlyFrom, "RawAcceptMessagesOnlyFrom", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawBypassModerationFrom", MailEnabledRecipientSchema.BypassModerationFrom, this.RawBypassModerationFrom, "RawBypassModerationFrom", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawRejectMessagesFrom", MailEnabledRecipientSchema.RejectMessagesFrom, this.RawRejectMessagesFrom, "RawRejectMessagesFrom", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >("RawGrantSendOnBehalfTo", MailEnabledRecipientSchema.GrantSendOnBehalfTo, this.RawGrantSendOnBehalfTo, "RawGrantSendOnBehalfTo", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateGrantSendOnBehalfTo)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <ModeratorIDParameter> >("RawModeratedBy", MailEnabledRecipientSchema.ModeratedBy, this.RawModeratedBy, "RawModeratedBy", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <ModeratorIDParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(RecipientTaskHelper.ValidateModeratedBy)));
            base.SetReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >(ADGroupSchema.RawManagedBy, this.RawManagedBy, dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >("RawCoManagedBy", SyncDistributionGroupSchema.CoManagedBy, this.RawCoManagedBy, "RawCoManagedBy", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient), null);
            base.SetMultiReferenceParameter <RecipientWithAdUserGroupIdParameter <RecipientIdParameter> >("RawMembers", SyncDistributionGroupSchema.Members, this.RawMembers, "RawMembers", dataObject, new GetRecipientDelegate <RecipientWithAdUserGroupIdParameter <RecipientIdParameter> >(this.GetRecipient), null);
        }
Exemplo n.º 3
0
        private void InternalResolveLocalSecondaryIdentities()
        {
            SyncMailbox dataObject = (SyncMailbox)this.GetDynamicParameters();

            base.SetReferenceParameter <UserContactIdParameter>(SyncMailboxSchema.Manager, this.Manager, dataObject, new GetRecipientDelegate <UserContactIdParameter>(this.GetRecipient));
            base.SetMultiReferenceParameter <DeliveryRecipientIdParameter>(MailEnabledRecipientSchema.BypassModerationFrom, this.BypassModerationFrom, dataObject, new GetRecipientDelegate <DeliveryRecipientIdParameter>(this.GetRecipient), new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual));
            base.SetMultiReferenceParameter <DeliveryRecipientIdParameter>(MailEnabledRecipientSchema.BypassModerationFromDLMembers, this.BypassModerationFromDLMembers, dataObject, new GetRecipientDelegate <DeliveryRecipientIdParameter>(this.GetRecipient), new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionGroup));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawAcceptMessagesOnlyFrom", MailEnabledRecipientSchema.AcceptMessagesOnlyFrom, this.RawAcceptMessagesOnlyFrom, "RawAcceptMessagesOnlyFrom", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawBypassModerationFrom", MailEnabledRecipientSchema.BypassModerationFrom, this.RawBypassModerationFrom, "RawBypassModerationFrom", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >("RawRejectMessagesFrom", MailEnabledRecipientSchema.RejectMessagesFrom, this.RawRejectMessagesFrom, "RawRejectMessagesFrom", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <DeliveryRecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateMessageDeliveryRestrictionIndividual)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >("RawGrantSendOnBehalfTo", MailEnabledRecipientSchema.GrantSendOnBehalfTo, this.RawGrantSendOnBehalfTo, "RawGrantSendOnBehalfTo", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(base.ValidateGrantSendOnBehalfTo)));
            base.SetMultiReferenceParameter <RecipientWithAdUserIdParameter <ModeratorIDParameter> >("RawModeratedBy", MailEnabledRecipientSchema.ModeratedBy, this.RawModeratedBy, "RawModeratedBy", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <ModeratorIDParameter> >(this.GetRecipient), SyncTaskHelper.ValidateBypassADUser(new ValidateRecipientDelegate(RecipientTaskHelper.ValidateModeratedBy)));
            base.SetReferenceParameter <RecipientWithAdUserIdParameter <RecipientIdParameter> >("RawForwardingAddress", MailboxSchema.ForwardingAddress, this.RawForwardingAddress, "RawForwardingAddress", dataObject, new GetRecipientDelegate <RecipientWithAdUserIdParameter <RecipientIdParameter> >(this.GetRecipient), null);
        }