private void Initialise(object mailItem, bool bUseCache, bool disableAccessToDOMAttachments) { if (null == mailItem) throw new ArgumentNullException("mailItem"); m_outlookMail = mailItem as MSOutlook.MailItem; if (null == m_outlookMail) throw new ArgumentNullException("m_outlookMail"); m_oif = new OutlookIImplFactory(); m_mailItem = m_oif.CreateWSMail(m_outlookMail); m_outlookRecipientTableProxy = new RedemptionRecipientTableProxy(m_outlookMail, bUseCache); m_outlookToRecipientsProxy = new RedemptionRecipientsProxy(m_outlookRecipientTableProxy, OutlookRecipientTypes.ToRecipient); m_outlookCcRecipientsProxy = new RedemptionRecipientsProxy(m_outlookRecipientTableProxy, OutlookRecipientTypes.CcRecipient); m_outlookBccRecipientsProxy = new RedemptionRecipientsProxy(m_outlookRecipientTableProxy, OutlookRecipientTypes.BccRecipient); m_outlookAttachmentsProxy = new RedemptionAttachmentsProxy(m_outlookMail, disableAccessToDOMAttachments); m_bIsValid = true; }
private void Dispose(bool disposing) { if (m_Disposed) return; m_Disposed = true; if (disposing) { } if (m_outlookAttachmentsProxy != null) { m_outlookAttachmentsProxy.Dispose(); m_outlookAttachmentsProxy = null; } if (m_outlookToRecipientsProxy != null) { m_outlookToRecipientsProxy.Dispose(); m_outlookToRecipientsProxy = null; } if (m_outlookCcRecipientsProxy != null) { m_outlookCcRecipientsProxy.Dispose(); m_outlookCcRecipientsProxy = null; } if (m_outlookBccRecipientsProxy != null) { m_outlookBccRecipientsProxy.Dispose(); m_outlookBccRecipientsProxy = null; } if (m_outlookRecipientTableProxy != null) { m_outlookRecipientTableProxy.Dispose(); m_outlookRecipientTableProxy = null; } if (m_mailItem != null) { m_mailItem.Dispose(); m_mailItem = null; } m_outlookMail = null; }