示例#1
0
        protected override IConfigurable ConvertDataObjectToPresentationObject(IConfigurable dataObject)
        {
            if (dataObject == null)
            {
                return(null);
            }
            ADUser       dataObject2  = (ADUser)dataObject;
            SyncMailUser syncMailUser = new SyncMailUser(dataObject2);

            if (syncMailUser.IntendedMailboxPlan != null)
            {
                ADUser aduser = base.ProvisioningCache.TryAddAndGetOrganizationDictionaryValue <ADUser, ADObjectId>(CannedProvisioningCacheKeys.CacheKeyMailboxPlanId, base.CurrentOrganizationId, syncMailUser.IntendedMailboxPlan, () => (ADUser)this.GetDataObject <ADUser>(new MailboxPlanIdParameter(syncMailUser.IntendedMailboxPlan), this.TenantGlobalCatalogSession, null, new LocalizedString?(Strings.ErrorMailboxPlanNotFound(syncMailUser.IntendedMailboxPlan.ToString())), new LocalizedString?(Strings.ErrorMailboxPlanNotUnique(syncMailUser.IntendedMailboxPlan.ToString()))));
                syncMailUser.propertyBag.SetField(SyncMailUserSchema.IntendedMailboxPlanName, aduser.DisplayName);
            }
            syncMailUser.propertyBag.SetField(ADRecipientSchema.AcceptMessagesOnlyFrom, SyncTaskHelper.RetrieveFullADObjectId(base.TenantGlobalCatalogSession, syncMailUser.AcceptMessagesOnlyFrom));
            syncMailUser.propertyBag.SetField(ADRecipientSchema.AcceptMessagesOnlyFromDLMembers, SyncTaskHelper.RetrieveFullADObjectId(base.TenantGlobalCatalogSession, syncMailUser.AcceptMessagesOnlyFromDLMembers));
            syncMailUser.propertyBag.SetField(ADRecipientSchema.RejectMessagesFrom, SyncTaskHelper.RetrieveFullADObjectId(base.TenantGlobalCatalogSession, syncMailUser.RejectMessagesFrom));
            syncMailUser.propertyBag.SetField(ADRecipientSchema.RejectMessagesFromDLMembers, SyncTaskHelper.RetrieveFullADObjectId(base.TenantGlobalCatalogSession, syncMailUser.RejectMessagesFromDLMembers));
            if (this.outputCookie != null)
            {
                syncMailUser.propertyBag.SetField(SyncMailUserSchema.Cookie, this.outputCookie.ToBytes());
                if (this.outputCookie.HighWatermark == 0L)
                {
                    syncMailUser.propertyBag.SetField(SyncMailUserSchema.EndOfList, true);
                }
            }
            syncMailUser.ResetChangeTracking();
            return(syncMailUser);
        }
        protected override void WriteResult(ADObject result)
        {
            TaskLogger.LogEnter(new object[]
            {
                result.Identity
            });
            SyncMailUser result2 = new SyncMailUser((ADUser)result);

            base.WriteResult(result2);
            TaskLogger.LogExit();
        }
 protected override IConfigurable ConvertDataObjectToPresentationObject(IConfigurable dataObject)
 {
     return(SyncMailUser.FromDataObject((ADUser)dataObject));
 }