diff options
Diffstat (limited to 'lib/net')
-rw-r--r-- | lib/net/imap.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/net/imap.rb b/lib/net/imap.rb index 1f9682681e..567cf66809 100644 --- a/lib/net/imap.rb +++ b/lib/net/imap.rb @@ -1977,6 +1977,26 @@ module Net end end + # Net::IMAP::BodyTypeAttachment represents attachment body structures + # of messages. + # + # ==== Fields: + # + # media_type:: Returns the content media type name. + # + # subtype:: Returns +nil+. + # + # param:: Returns a hash that represents parameters. + # + # multipart?:: Returns false. + # + class BodyTypeAttachment < Struct.new(:media_type, :subtype, + :param) + def multipart? + return false + end + end + # Net::IMAP::BodyTypeMultipart represents multipart body structures # of messages. # @@ -2347,6 +2367,8 @@ module Net return body_type_text when /\A(?:MESSAGE)\z/ni return body_type_msg + when /\A(?:ATTACHMENT)\z/ni + return body_type_attachment else return body_type_basic end @@ -2399,6 +2421,13 @@ module Net md5, disposition, language, extension) end + def body_type_attachment + mtype = case_insensitive_string + match(T_SPACE) + param = body_fld_param + return BodyTypeAttachment.new(mtype, nil, param) + end + def body_type_mpart parts = [] while true |