Path: | doc.en/mail.html |
Last Update: | Fri Feb 20 00:45:52 UTC 2004 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="en"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> <meta http-equiv="Content-Language" content="en">
<title>class <a name="TMail%3a%3aMail">TMail::Mail</a> </title> </head> <body>
<h1>class <a name="TMail%3a%3aMail">TMail::Mail</a> </h1>
<h2>Class Methods</h2>
<dl> <dt><a name="TMail%3a%3aMail-new">new(port = TMail::StringPort.new, <var>config</var> = DEFAULT_CONFIG)</a> -> <a href="mail.html#TMail%3a%3aMail">TMail::Mail</a></dt> <dd> <p> port: <a href="port.html#TMail%3a%3aPort">TMail::Port</a><br> config: <a href="config.html#TMail%3a%3aConfig">TMail::Config</a><br> </p>
<p> creates a new TMail::Mail object from PORT. </p>
</dd> <dt><a name="TMail%3a%3aMail-load">load(filename)</a> -> <a href="mail.html#TMail%3a%3aMail">TMail::Mail</a></dt> <dd> <p> filename: String<br> </p>
<p> creates a new TMail::Mail object. FILENAME is the name of file which contains just one mail (e.g. MH mail file). </p>
</dd> <dt><a name="TMail%3a%3aMail-parse">parse(str)</a> -> <a href="mail.html#TMail%3a%3aMail">TMail::Mail</a></dt> <dd> <p> str: String<br> </p>
<p> parses STR and creates a new TMail::Mail object. </p>
</dd> </dl> <h2>Instance Methods</h2>
<dl> <dt><a name="TMail%3a%3aMail-port">port</a> -> <a href="port.html#TMail%3a%3aPort">TMail::Port</a></dt> <dd> <p> the source port of this mail. </p>
</dd> <dt><a name="TMail%3a%3aMail-body_port">body_port</a> -> <a href="port.html#TMail%3a%3aPort">TMail::Port</a></dt> <dd> <p> the port to save body of this mail. </p>
</dd> <dt><a name="TMail%3a%3aMail-each%20%7b%7cline%7c%20%2e%2e%2e%2e%20%7d">each {|line| .… }</a></dt> <dd> <p> line: String<br> </p>
<p> iterates for each lines of mail body. </p>
</dd> <dt><a name="TMail%3a%3aMail-body">body</a> -> String</dt> <dt><a name="TMail%3a%3aMail-preamble">preamble</a> -> String</dt> <dd> <p> the mail body. If the mail is a MIME multipart mail, this attribute represents "preamble". </p>
</dd> <dt><a name="TMail%3a%3aMail-parts">parts</a> -> [<a href="mail.html#TMail%3a%3aMail">TMail::Mail</a>]</dt> <dd> <p> parts of this mail. (valid only if this mail is a MIME multipart mail) </p>
</dd> <dt><a name="TMail%3a%3aMail-epilogue">epilogue</a> -> String</dt> <dd> <p> If the mail was MIME multipart mail, this represent "epilogue" string. Else, empty string. </p>
</dd> <dt><a name="TMail%3a%3aMail-multipart%3f">multipart?</a></dt> <dd> <p> true if the message is a multi-part mail. </p>
</dd> <dt><a name="TMail%3a%3aMail-encoded">encoded(eol = "\n", <var>encoding</var> = ‘j’)</a> -> String</dt> <dd> <p> eol: String<br> encoding: String<br> </p>
<p> converts the mail object to a MIME encoded string. </p>
</dd> <dt><a name="TMail%3a%3aMail-decoded">decoded(eol = "\n", <var>encoding</var> = ‘e’)</a> -> String</dt> <dt><a name="TMail%3a%3aMail-to_s">to_s(eol = "\n", <var>encoding</var> = ‘e’)</a> -> String</dt> <dd> <p> eol: String<br> encoding: String<br> </p>
<p> converts the mail object to a decoded string. </p>
</dd> <dt><a name="TMail%3a%3aMail-inspect">inspect</a> -> String</dt> <dd> <p> returns simple string representation like "#<TMail::Mail port=<StringPort:str=…>>" </p>
</dd> <dt><a name="TMail%3a%3aMail-write_back">write_back(eol = "\n", <var>encoding</var> = ‘e’)</a></dt> <dd> <p> eol: String<br> encoding: String<br> </p>
<p> converts this mail into string and write back to body_port, setting line terminator to EOL. </p>
</dd> </dl> <h3>Property Access Method</h3>
<dl> <dt><a name="TMail%3a%3aMail-date">date(default = nil)</a> -> Time</dt> <dt><a name="TMail%3a%3aMail-date%3d">date=(datetime)</a></dt> <dd> <p> datetime: Time<br> default: Object<br> </p>
<p> a Time object of Date: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-strftime">strftime(format, <var>default</var> = nil)</a> -> String</dt> <dd> <p> format: String<br> default: Object<br> </p>
<p> is equals to date.strftime(format). If date is not exist, this method does nothing and returns <var>default</var>. </p>
</dd> <dt><a name="TMail%3a%3aMail-to">to(default = nil)</a> -> [String]</dt> <dt><a name="TMail%3a%3aMail-to%3d">to=(specs)</a></dt> <dd> <p> specs: String | [String]<br> default: Object<br> </p>
<p> address specs for To: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-to_addrs">to_addrs(default = nil)</a> -> [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | <a href="address.html#TMail%3a%3aAddressGroup">TMail::AddressGroup</a>]</dt> <dt><a name="TMail%3a%3aMail-to_addrs%3d">to_addrs=(addrs)</a></dt> <dd> <p> addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br> default: Object<br> </p>
<p> adresses which is represented in To: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-cc">cc(default = nil)</a> -> [String]</dt> <dt><a name="TMail%3a%3aMail-cc%3d">cc=(specs)</a></dt> <dd> <p> specs: String | [String]<br> default: Object<br> </p>
<p> address specs for Cc: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-cc_addrs">cc_addrs(default = nil)</a> -> [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</dt> <dt><a name="TMail%3a%3aMail-cc_addrs%3d">cc_addrs=(addrs)</a></dt> <dd> <p> addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br> default: Object<br> </p>
<p> addresses which is represented in Cc: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-bcc">bcc(default = nil)</a> -> [String]</dt> <dt><a name="TMail%3a%3aMail-bcc%3d">bcc=(specs)</a></dt> <dd> <p> specs: String | [String]<br> default: Object<br> </p>
<p> address specs for Bcc: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-bcc_addrs">bcc_addrs(default = nil)</a> -> [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</dt> <dt><a name="TMail%3a%3aMail-bcc_addrs%3d">bcc_addrs=(addrs)</a></dt> <dd> <p> addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br> default: Object<br> </p>
<p> adresses which is represented in Bcc: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-from">from(default = nil)</a> -> [String]</dt> <dt><a name="TMail%3a%3aMail-from%3d">from=(specs)</a></dt> <dd> <p> specs: String | [String]<br> default: Object<br> </p>
<p> address specs for From: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-from_addrs">from_addrs(default = nil)</a> -> [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</dt> <dt><a name="TMail%3a%3aMail-from_addrs%3d">from_addrs=(addrs)</a></dt> <dd> <p> addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br> default: Object<br> </p>
<p> adresses which is represented in From: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-friendly_from">friendly_from(default = nil)</a> -> String</dt> <dd> <p> default: Object<br> </p>
<p> a "phrase" part or address spec of the first From: address. </p>
</dd> <dt><a name="TMail%3a%3aMail-reply_to">reply_to(default = nil)</a> -> [String]</dt> <dt><a name="TMail%3a%3aMail-reply_to%3d">reply_to=(specs)</a></dt> <dd> <p> specs: String | [String]<br> default: Object<br> </p>
<p> address specs of Reply-To: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-reply_to_addrs">reply_to_addrs(default = nil)</a> -> [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</dt> <dt><a name="TMail%3a%3aMail-reply_to_addrs%3d">reply_to_addrs=(addrs)</a></dt> <dd> <p> addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br> default: Object<br> </p>
<p> adresses which is represented in Reply-To: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-sender">sender(default = nil)</a> -> String</dt> <dt><a name="TMail%3a%3aMail-sender%3d">sender=(spec)</a></dt> <dd> <p> spec: String<br> </p>
<p> address spec for Sender: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-sender_addr">sender_addr(default = nil)</a> -> <a href="address.html#TMail%3a%3aAddress">TMail::Address</a></dt> <dt><a name="TMail%3a%3aMail-sender_addr%3d">sender_addr=(addr)</a></dt> <dd> <p> addr: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a><br> </p>
<p> an address which is represented in Sender: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-subject">subject(default = nil)</a> -> String</dt> <dt><a name="TMail%3a%3aMail-subject%3d">subject=(sbj)</a></dt> <dd> <p> sbj: String<br> </p>
<p> the subject of the message. </p>
</dd> <dt><a name="TMail%3a%3aMail-message_id">message_id(default = nil)</a> -> String</dt> <dt><a name="TMail%3a%3aMail-message_id%3d">message_id=(id)</a></dt> <dd> <p> id: String<br> </p>
<p> message ID string. </p>
</dd> <dt><a name="TMail%3a%3aMail-in_reply_to">in_reply_to(default = nil)</a> -> [String]</dt> <dt><a name="TMail%3a%3aMail-in_reply_to%3d">in_reply_to=(ids)</a></dt> <dd> <p> ids: String | [String]<br> </p>
<p> message IDs of replying mails. </p>
</dd> <dt><a name="TMail%3a%3aMail-references">references(default = nil)</a> -> [String]</dt> <dt><a name="TMail%3a%3aMail-references%3d">references=(ids)</a></dt> <dd> <p> ids: String | [String]<br> </p>
<p> message IDs of all referencing (replying) mails. </p>
</dd> <dt><a name="TMail%3a%3aMail-mime_version">mime_version(default = nil)</a> -> String</dt> <dt><a name="TMail%3a%3aMail-mime_version%3d">mime_version=(ver)</a></dt> <dd> <p> ver: String<br> </p>
<p> MIME version. If it does not exist, returns the DEFAULT. </p>
</dd> <dt><a name="TMail%3a%3aMail-set_mime_version">set_mime_version(major, <var>minor</var>)</a></dt> <dd> <p> major: Integer<br> minor: Integer<br> </p>
<p> set MIME version from integers. </p>
</dd> <dt><a name="TMail%3a%3aMail-content_type">content_type(default = nil)</a> -> String</dt> <dd> <p> the content type of the mail message (e.g. "text/plain"). If it does not exist, returns the DEFAULT. </p>
</dd> <dt><a name="TMail%3a%3aMail-main_type">main_type(default = nil)</a> -> String</dt> <dd> <p> the main content type of the mail message. (e.g. "text") If it does not exist, returns the DEFAULT. </p>
</dd> <dt><a name="TMail%3a%3aMail-sub_type">sub_type(default = nil)</a> -> String</dt> <dd> <p> the sub content type of the mail message. (e.g. "plain") If it does not exist, returns the DEFAULT. </p>
</dd> <dt><a name="TMail%3a%3aMail-content_type%3d">content_type=(ctype)</a></dt> <dd> <p> ctype: String<br> </p>
<p> set content type to STR. </p>
</dd> <dt><a name="TMail%3a%3aMail-set_content_type">set_content_type(main, <var>sub</var>, <var>params</var> = nil)</a></dt> <dd> <p> main: String<br> sub: String<br> params: {String => String}<br> </p>
<p> set Content-type: header as "main/sub; param=val; param=val; …". </p>
</dd> <dt><a name="TMail%3a%3aMail-type_param">type_param(name, <var>default</var> = nil)</a> -> String</dt> <dd> <p> name: String<br> </p>
<p> returns the value corresponding to the case-insensitive NAME of Content-Type parameter. If it does not exist, returns the <var>default</var>. </p> <pre> # example mail[‘Content-Type’] = ‘text/plain; charset=iso-2022-jp’ p mail.type_param(‘charset’) # "iso-2022-jp" </pre>
</dd> <dt><a name="TMail%3a%3aMail-multipart%3f">multipart?</a> -> true | false</dt> <dd> <p> judge if this mail is MIME multi part mail, by inspecting Content-Type: header field. </p>
</dd> <dt><a name="TMail%3a%3aMail-transfer_encoding">transfer_encoding(default = nil)</a> -> String</dt> <dt><a name="TMail%3a%3aMail-transfer_encoding%3d">transfer_encoding=(encoding)</a></dt> <dd> <p> encoding: String<br> </p> <p> Content-Transfer-Encoding. (e.g. "7bit" "Base64") </p>
</dd> <dt><a name="TMail%3a%3aMail-disposition">disposition(default = nil)</a> -> String</dt> <dt><a name="TMail%3a%3aMail-disposition%3d">disposition=(pos)</a></dt> <dd> <p> pos: String<br> </p>
<p> Content-Disposition main value (e.g. "attachment"). If it does not exist, returns the DEFAULT. </p> <pre> # example mail[‘Content-Disposition’] = ‘attachement; filename="test.rb"’ p mail.disposition # "attachment" </pre>
</dd> <dt><a name="TMail%3a%3aMail-set_content_disposition">set_content_disposition(pos, <var>params</var> = nil)</a></dt> <dd> <p> pos: String<br> params: {String => String}<br> </p>
<p> set content disposition. </p>
</dd> <dt><a name="TMail%3a%3aMail-disposition_param">disposition_param(key, <var>default</var> = nil)</a> -> String</dt> <dd> <p> key: String<br> </p>
<p> returns a value corresponding to the Content-Disposition parameter NAME (e.g. filename). If it does not exist, returns the <var>default</var>. </p> <pre> # example mail.disposition_param(‘filename’) </pre>
</dd> <dt><a name="TMail%3a%3aMail-destinations">destinations(default = nil)</a> -> [String]</dt> <dd> <p> all address specs which are contained in To:, Cc: and Bcc: header fields. </p>
</dd> <dt><a name="TMail%3a%3aMail-reply_addresses">reply_addresses(default = nil)</a> -> [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</dt> <dd> <p> addresses to we reply to. </p>
</dd> <dt><a name="TMail%3a%3aMail-error_reply_addresses">error_reply_addresses(default = nil)</a> -> [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</dt> <dd> <p> addresses to use when returning error message. </p>
</dd> </dl> <h3>Direct Header Handling Methods</h3>
<dl> <dt><a name="TMail%3a%3aMail-clear">clear</a></dt> <dd> <p> clears all header. </p>
</dd> <dt><a name="TMail%3a%3aMail-keys">keys</a> -> [TMail::HeaderField]</dt> <dd> <p> returns an array of contained header names. </p>
</dd> <dt><a name="TMail%3a%3aMail-%5b%5d">[](name)</a> -> TMail::HeaderField</dt> <dd> <p> name: String<br> </p>
<p> returns a header field object corresponding to the case-insensitive key NAME. e.g. mail["To"] </p>
</dd> <dt><a name="TMail%3a%3aMail-%5b%5d%3d">[]=(name, <var>field</var>)</a></dt> <dd> <p> name: String<br> field: TMail::HeaderField<br> </p>
<p> set NAME header field to <var>field</var>. </p>
</dd> <dt><a name="TMail%3a%3aMail-delete">delete(name)</a></dt> <dd> <p> name: String<br> </p> <p> deletes header corresponding to case-insensitive key NAME. </p>
</dd> <dt><a name="TMail%3a%3aMail-delete_if%20%7b%7cname%2c%20field%7c%20%2e%2e%2e%2e%20%7d">delete_if {|name, <var>field</var>| .… }</a></dt> <dd> <p> name: String<br> field: TMail::HeaderField<br> </p>
<p> evaluates block with a name of header and header field object, and delete the header if block returns true. </p>
</dd> <dt><a name="TMail%3a%3aMail-each_header%20%7b%7cname%2c%20field%7c%20%2e%2e%2e%2e%20%7d">each_header {|name, <var>field</var>| .… }</a></dt> <dt><a name="TMail%3a%3aMail-each_pair%20%7b%7cname%2c%20field%7c%20%2e%2e%2e%2e%20%7d">each_pair {|name, <var>field</var>| .… }</a></dt> <dd> <p> name: String<br> field: TMail::HeaderField<br> </p>
<p> iterates for each header name and its field object. </p>
</dd> <dt><a name="TMail%3a%3aMail-each_header_name%20%7b%7cname%7c%20%2e%2e%2e%2e%20%7d">each_header_name {|name| .… }</a></dt> <dt><a name="TMail%3a%3aMail-each_key%20%7b%7cname%7c%20%2e%2e%2e%2e%20%7d">each_key {|name| .… }</a></dt> <dd> <p> name: String<br> </p>
<p> iterates for each contained header names. </p>
</dd> <dt><a name="TMail%3a%3aMail-each_field%20%7b%7cfield%7c%20%2e%2e%2e%2e%20%7d">each_field {|field| .… }</a></dt> <dt><a name="TMail%3a%3aMail-each_value%20%7b%7cfield%7c%20%2e%2e%2e%2e%20%7d">each_value {|field| .… }</a></dt> <dd> <p> field: TMail::HeaderField<br> </p>
<p> iterates for each header field objects. </p>
</dd> <dt><a name="TMail%3a%3aMail-orderd_each%20%7b%7cname%2c%20field%7c%20%2e%2e%2e%2e%20%7d">orderd_each {|name, <var>field</var>| .… }</a></dt> <dd> <p> name: String<br> field: TMail::HeaderField<br> </p>
<p> iterates for each header field objects, in canonical order. </p>
</dd> <dt><a name="TMail%3a%3aMail-key%3f">key?(name)</a></dt> <dd> <p> name: String<br> </p>
<p> returns true if the mail has NAME header. </p>
</dd> <dt><a name="TMail%3a%3aMail-value%3f">value?(field)</a></dt> <dd> <p> field: TMail::HeaderField<br> </p>
<p> returns true if the mail has FIELD header field object. </p>
</dd> <dt><a name="TMail%3a%3aMail-values_at">values_at(*names)</a> -> [TMail::HeaderField]</dt> <dt><a name="TMail%3a%3aMail-indexes">indexes(*names)</a> -> [TMail::HeaderField]</dt> <dt><a name="TMail%3a%3aMail-indices">indices(*names)</a> -> [TMail::HeaderField]</dt> <dd> <p> names: [String]<br> </p>
<p> equals to names.collect {|k| mail[k] }. </p>
</dd> <dt><a name="TMail%3a%3aMail-values">values</a> -> [TMail::HeaderField]</dt> <dd> <p> returns an array of all header field object. </p> </dd> </dl>
</body> </html>