Capturing Imap related events |
The Imap class may publish one or more events during the lifetime of an Imap session. Any object that subscribes to events published by the Imap class can receive and process these events.
The ConnectedEvent is fired by the Imap instance once a connection to the IMAP server has been established. The DisconnectedEvent is fired by the Imap instance once the connection to the IMAP server has been released. The CommandSentEvent is fired by the Imap instance for each command sent to the IMAP server. The DataReceivedEvent is fired by the Imap instance for each response received from the IMAP server. The MessageRetrievedEvent is fired by the Imap instance for each message retrieved from the IMAP server.
Capturing the ConnectedEvent event
The ConnectedEvent is published by the Imap instance once a connection to the Imap server has been established.
Example
[C#] myImap = new Imap(hostname, username, password); // Subscribe to event myImap.ConnectedEvent += new Imap.ConnectedEventHandler(OnConnected);
// Define Connected Event handler public void OnConnected(object sender, ImapConnectedEventArgs e) { Console.WriteLine("Connected to {0}", e.Host); }
[Visual Basic] Public WithEvents myImap As Imap myImap = New Imap(hostname, username, password);
' Define Connected Event handler Private Sub OnConnected( ByVal sender As Object, ByVal e As ImapConnectedEventArgs) Handles myImap.ConnectedEvent Console.WriteLine("Connected to {0}", e.Host); End Sub
Capturing the DisconnectedEvent event
The DisconnectedEvent is published by the Imap instance once the connection to the Imap server has been released.
Example
[C#] myImap = new Imap(hostname, username, password); // Subscribe to event myImap.DisconnectedEvent += new Imap.DisconnectedEventHandler(OnDisconnected);
// Define Disconnected Event handler public void OnDisconnected(object sender, ImapDisconnectedEventArgs e) { Console.WriteLine("Disconnected"); }
[Visual Basic] Public WithEvents myImap As Imap myImap = New Imap(hostname, username, password);
' Define Disconnected Event handler Private Sub OnDisconnected( ByVal sender As Object, ByVal e As ImapDisconnectedEventArgs) Handles myImap.DisconnectedEvent Console.WriteLine("Disconnected"); End Sub
Capturing the CommandSentEvent event
The CommandSentEvent is published by the Imap instance for each command sent to the Imap server.
Example
[C#] myImap = new Imap(hostname, username, password); // Subscribe to event myImap.CommandSentEvent += new Imap.CommandSentEventHandler(OnCommandSent);
// Define CommandSent Event handler public void OnCommandSent(object sender, ImapCommandSentEventArgs e) { Console.WriteLine("Command: " + e.Command); }
[Visual Basic] Public WithEvents myImap As Pop myImap = New Pop(hostname, username, password);
' Define CommandSent Event handler Private Sub OnCommandSent( ByVal sender As Object, ByVal e As ImapCommandSentEventArgs) Handles myImap.CommandSentEvent Console.WriteLine("Command: " & e.Command); End Sub
Capturing the DataReceivedEvent event
The DataReceivedEvent is published by the Imap instance for each response received from the Imap server.
Example
[C#] myImap = new Imap(hostname, username, password); // Subscribe to event myImap.DataReceivedEvent += new Imap.DataReceivedEventHandler(OnDataReceived);
// Define DataReceived Event handler public void OnDataReceived(object sender, ImapDataReceivedEventArgs e) { Console.WriteLine("Response: " + e.Response); }
[Visual Basic] Public WithEvents myImap As Imap myImap = New Imap(hostname, username, password);
' Define DataReceived Event handler Private Sub OnDataReceived( ByVal sender As Object, ByVal e As ImapDataReceivedEventArgs) Handles myImap.DataReceivedEvent Console.WriteLine("Response: " & e.Response); End Sub
Capturing the MessageRetrievedEvent event
The MessageRetrievedEvent is published by the Imap instance for each message retrieved from the Imap server.
Example
[C#] myImap = new Imap(hostname, username, password); // Subscribe to event myImap.MessageRetrievedEvent += new Imap.MessageRetrievedEventHandler(OnMessageRetrieved);
// Define MessageRetrieved Event handler public void OnMessageRetrieved(object sender, ImapMessageRetrievedEventArgs e) { Console.WriteLine("Message: " + e.Message.GetSubject()); }
[Visual Basic] Public WithEvents myImap As Imap myImap = New Imap(hostname, username, password);
' Define MessageRetrieved Event handler Private Sub OnMessageRetrieved( ByVal sender As Object, ByVal e As ImapMessageRetrievedEventArgs) Handles myImap.MessageRetrievedEvent Console.WriteLine("Message: " & e.Message.GetSubject()); End Sub
|