source: branches/FACT++_scripts_refactoring/doc/Mail.js@ 20021

Last change on this file since 20021 was 15359, checked in by tbretz, 12 years ago
Fixed a typo and correctly document subject as constant
File size: 3.4 KB
Line 
1throw new Error("Description for built in functions. Must not be included!");
2/**
3 * @fileOverview
4 * A class which allows to send mails through the 'mail' program
5 */
6
7
8/**
9 * @class
10 *
11 * This class represents an interface to the program 'mail'.
12 *
13 * To send a mail, create an instance and fill the properties
14 * (see reference) with proper data.
15 *
16 * @example
17 * var mail = new Mail("This is the subject");
18 *
19 * // At least one recipient is mandatory
20 * mail.recipients.push("max.mustermann@musterstadt.com");
21 * // To add several recipients
22 * mail.recipients.push("max.mustermann@musterstadt.com", "erika.mustermann@musterstadt.com");
23 *
24 * // similar to the property recipient you can use the properties 'cc' and 'bcc'
25 *
26 * // If you want to add attachments [optional]
27 * mail.attachments.push("logfile.txt");
28 * // or for several attachments
29 * mail.attachments.push("logfile1.txt", "logfile2.txt");
30 *
31 * // The text of the message is set in the property text...
32 * // ...either as single string
33 * mail.text.push("This is line1\nThis is line2");
34 * mail.text.push("This is line1");
35 * mail.text.push("This is line2");
36 *
37 * // Send the message
38 * mail.send();
39 *
40 * @author <a href="mailto:thomas.bretz@epfl.ch">Thomas Bretz</a>
41 *
42 */
43function Mail()
44{
45
46 /**
47 * Subject of the mail
48 *
49 * @type String
50 * @constant
51 */
52 this.subject = subject;
53
54 /**
55 * Recipient(s) of the mail. One recipient is mandatory.
56 *
57 * @type Array[String]
58 */
59 this.recipients = recipient;
60
61 /**
62 * Carbon copy [optional]. Adresses who should receive a copy of the
63 * mail. All entries in the array which are not a string are silently ignored.
64 *
65 * @type Array[String]
66 */
67 this.cc = undefined;
68
69 /**
70 * Blind carbon copy [optional]. Adresses who should receive a copy of the
71 * mail. All entries in the array which are not a string are silently ignored.
72 *
73 * @type Array[String]
74 */
75 this.bcc = undefined;
76
77 /**
78 * Attachments [optional]. File to be attached to the mail.
79 * All entries in the array which are not a string are silently ignored.
80 *
81 * @type Array[String]
82 */
83 this.attachments = undefined;
84
85 /**
86 * Message body. At least one line in the message is mandatory.
87 * Undefined or null entries in the array are silently ignored.
88 *
89 * @type Array[String]
90 */
91 this.text = text;
92
93 /**
94 * Send the message. This calles the 'mailx' program. For further
95 * details, e.g. on the return value, see the corresponding man page.
96 *
97 * @param {Boolean} [block=true]
98 * This parameter specifies whether the pipe should be closed,
99 * which means that a blocking wait is performed until the 'mail'
100 * program returns, or the pipe will be closed automatically
101 * in the background when the 'mail' program has finished.
102 * Note, that if the calling program terminates, maybe this
103 * call will never succeed.
104 *
105 * @returns {Integer}
106 * The return code of the 'mail' program is returned (0
107 * usually means success), undefined if block was set to false.
108 *
109 * @throws
110 * An exception is thrown if any validity check for the
111 * properties or the arguments fail.
112 *
113 */
114 this.send = function() { /* [native code] */ }
115}
Note: See TracBrowser for help on using the repository browser.