Rogue Wave banner
Previous fileTop of DocumentContentsIndexNext file

20.6 Mail Sender: Using the SMTP Agent

This example program sends an e-mail message using the SMTP agent class.

20.6.1 Code and Explanation

Here is a portion of code followed by comments explaining key lines.

//1Constructs an RWISmtpAgent object that connects to an SMTP mail server.
//2Opens a data connection with the SMTP server. The method returns an RWIOUResult with a redeemable RWSocketPortal, which is immediately redeemed. The sPortal is then used to complete the mail-body portion of the protocol transfer.
//3Uses the sPortal to send the mail content.
//4Writes the mail-body termination sequence <period><carriage return><new line>, which indicates the end of the mail message. The dataClose() method returns an RWIOUResult with a redeemable RWBoolean. By assigning the result of the method to the RWBoolean object dataClosed, the execution thread is blocked until the actual result becomes available. This is one way of redeeming an RWIOUResult object. Also note that the SMTP protocol requires the dataClose() method be called for each data transfer session.

20.6.2 Further Discussion

This example demonstrates one method of redeeming an RWIOUResult object. For other methods, please refer to Chapter 19 and Section 20.4. The application determines which way needs to apply.


Previous fileTop of DocumentContentsIndexNext file

©Copyright 2000, Rogue Wave Software, Inc.
Contact Rogue Wave about documentation or support issues.