예제 #1
0
 /// <summary>
 /// Default constructor.
 /// </summary>
 /// <param name="session">Owner IMAP session.</param>
 /// <param name="referenceName">Folder Path. Eg. Inbox\.</param>
 /// <param name="folder">Folder name.</param>
 public IMAP_Folders(IMAP_Session session, string referenceName, string folder)
 {
     m_pSession = session;
     m_Mailboxes = new ArrayList();
     m_RefName = referenceName;
     m_Mailbox = folder.Replace("\\", "/");
 }
예제 #2
0
            /// <summary>
            /// Default constructor.
            /// </summary>
            /// <param name="session">Owner IMAP session.</param>
            /// <param name="cmdTag">IDLE command command-tag.</param>
            /// <exception cref="ArgumentNullException">Is raised when <b>session</b> or <b>cmdTag</b> is null reference.</exception>
            /// <exception cref="ArgumentException">Is raised when any of the arguments has invalid value.</exception>
            public Command_IDLE(IMAP_Session session, string cmdTag, string folder)
            {
                if (session == null)
                {
                    throw new ArgumentNullException("session");
                }
                if (cmdTag == null)
                {
                    throw new ArgumentNullException("cmdTag");
                }
                if (cmdTag == string.Empty)
                {
                    throw new ArgumentException("Argument 'cmdTag' value must be specified.", "cmdTag");
                }

                try
                {
                    m_pSession = session;
                    m_CmdTag = cmdTag;
                    this.folder = folder;
                    Start();
                }
                catch (Exception x)
                {
                    m_pSession.OnError(x);   
                }
            }
예제 #3
0
        /// <summary>
        /// Default constructor.
        /// </summary>
        /// <param name="session">Owner IMAP session.</param>
        /// <param name="folderName">Folder name which ACL to get.</param>
        public IMAP_GETACL_eArgs(IMAP_Session session, string folderName)
        {
            m_pSession = session;
            m_pFolderName = folderName;

            m_ACLs = new Hashtable();
        }
예제 #4
0
 /// <summary>
 /// Default constructor.
 /// </summary>
 /// <param name="session">Reference to IMAP session.</param>
 /// <param name="userName">Username.</param>
 /// <param name="passwData">Password data.</param>
 /// <param name="data">Authentication specific data(as tag).</param>
 /// <param name="authType">Authentication type.</param>
 public AuthUser_EventArgs(IMAP_Session session,
                           string userName,
                           string passwData,
                           string data,
                           AuthType authType)
 {
     m_pSession = session;
     m_UserName = userName;
     m_PasswData = passwData;
     m_Data = data;
     m_AuthType = authType;
 }
 /// <summary>
 /// Default constructor.
 /// </summary>
 /// <param name="session">Reference to current IMAP session.</param>
 /// <param name="messageInfo">Message info what message items to get.</param>
 /// <param name="messageItems">Specifies message items what must be filled.</param>
 public IMAP_eArgs_MessageItems(IMAP_Session session,
                                IMAP_Message messageInfo,
                                IMAP_MessageItems_enum messageItems)
 {
     m_pSession = session;
     m_pMessageInfo = messageInfo;
     m_MessageItems = messageItems;
 }
예제 #6
0
 /// <summary>
 /// Default constructor.
 /// </summary>
 /// <param name="session">Owner IMAP session.</param>
 /// <param name="cmdTag">IDLE command command-tag.</param>
 /// <exception cref="ArgumentNullException">Is raised when <b>session</b> or <b>cmdTag</b> is null reference.</exception>
 /// <exception cref="ArgumentException">Is raised when any of the arguments has invalid value.</exception>
 public Command_IDLE(IMAP_Session session, string cmdTag) : this(session, cmdTag, session.SelectedMailbox) { }
예제 #7
0
            /// <summary>
            /// Cleans up any resources being used.
            /// </summary>
            /// 
            public void Dispose()
            {
                if (m_IsDisposed)
                {
                    return;
                }
                m_IsDisposed = true;
                try
                {
                    m_pTimer.Stop();
                    m_pSession.FolderChanged -= m_pSession_FolderChanged;
                    m_pSession.m_pIDLE = null;
                    m_pSession = null;
                    m_pTimer.Dispose();
                    m_pTimer = null;

                }
                catch (Exception)
                {
                    
                }
            }