protected override IConfigurable PrepareDataObject() { TaskLogger.LogEnter(); ADRecipient adrecipient = (ADRecipient)base.PrepareDataObject(); if (this.secondaryDialPlan != null) { IADRecipientLookup iadrecipientLookup = ADRecipientLookupFactory.CreateUmProxyAddressLookup(this.secondaryDialPlan); ADRecipient adrecipient2 = iadrecipientLookup.LookupByExtensionAndEquivalentDialPlan(this.SecondaryAddress, this.secondaryDialPlan); if (adrecipient2 != null && adrecipient2.PrimarySmtpAddress != adrecipient.PrimarySmtpAddress) { base.WriteError(new TaskArgumentException(DirectoryStrings.ExtensionNotUnique(this.SecondaryAddress, this.secondaryDialPlan.Name)), ExchangeErrorCategory.Client, adrecipient.Identity); } try { adrecipient.AddEUMProxyAddress(this.SecondaryAddress, this.secondaryDialPlan); } catch (InvalidOperationException ex) { base.WriteError(new TaskException(Strings.ErrorStampSecondaryAddress(ex.Message), ex), ExchangeErrorCategory.Client, adrecipient); } } if (this.RemovePicture.IsPresent) { adrecipient.ThumbnailPhoto = null; } if (this.RemoveSpokenName.IsPresent) { adrecipient.UMSpokenName = null; } TaskLogger.LogExit(); return(adrecipient); }