// Token: 0x060003DF RID: 991 RVA: 0x0000E768 File Offset: 0x0000C968 protected override void WriteResult(IConfigurable dataObject) { TaskLogger.LogEnter(); IDirectorySession directorySession = base.DataSession as IDirectorySession; IConfigurable configurable = dataObject; if (this.ReadFromDomainController.IsPresent && directorySession != null && directorySession.UseGlobalCatalog) { try { directorySession.UseGlobalCatalog = false; base.WriteVerbose(Strings.VerboseRereadADObject(dataObject.Identity.ToString(), typeof(TDataObject).Name, ((ADObjectId)dataObject.Identity).ToDNString())); configurable = base.DataSession.Read <TDataObject>(dataObject.Identity); base.WriteVerbose(TaskVerboseStringHelper.GetSourceVerboseString(base.DataSession)); } finally { directorySession.UseGlobalCatalog = true; } } ADRecipient adrecipient = configurable as ADRecipient; if (adrecipient != null) { adrecipient.PopulateAcceptMessagesOnlyFromSendersOrMembers(); adrecipient.PopulateBypassModerationFromSendersOrMembers(); adrecipient.PopulateRejectMessagesFromSendersOrMembers(); GetRecipientObjectTask <TIdentity, TDataObject> .SanitizeMailTips(adrecipient); } if (configurable == null) { base.WriteVerbose(Strings.VerboseFailedToReadFromDC(dataObject.Identity.ToString(), base.DataSession.Source)); } else if (this.ShouldSkipObject(configurable)) { base.WriteVerbose(Strings.VerboseSkipObject(configurable.Identity.ToString())); } else { IConfigurable configurable2 = this.ConvertDataObjectToPresentationObject(configurable); if (this.ShouldSkipPresentationObject(configurable2)) { base.WriteVerbose(Strings.VerboseSkipObject(configurable.Identity.ToString())); } else { base.WriteResult(configurable2); } } TaskLogger.LogExit(); }