Sha256: 4363a66a7dbd92ac9ddba6e834f87a7f7e204f84270b0d8a4cda68a5cb7e2774

Contents?: true

Size: 1.27 KB

Versions: 14

Compression:

Stored size: 1.27 KB

Contents

# encoding: utf-8
# frozen_string_literal: true
require 'mail/fields/common_message_id_field'
require 'mail/utilities'

module Mail
  # Only one Message-ID field may appear in a header.
  #
  # Note that parsed Message IDs do not contain their enclosing angle
  # brackets which, per RFC, are not part of the ID.
  #
  #  mail = Mail.new
  #  mail.message_id = '<F6E2D0B4-CC35-4A91-BA4C-C7C712B10C13@test.me.dom>'
  #  mail.message_id    #=> '<F6E2D0B4-CC35-4A91-BA4C-C7C712B10C13@test.me.dom>'
  #  mail[:message_id]  #=> '#<Mail::Field:0x180e5e8 @field=#<Mail::MessageIdField:0x180e1c4
  #  mail['message_id'] #=> '#<Mail::Field:0x180e5e8 @field=#<Mail::MessageIdField:0x180e1c4
  #  mail['Message-ID'] #=> '#<Mail::Field:0x180e5e8 @field=#<Mail::MessageIdField:0x180e1c4
  #
  #  mail[:message_id].message_id   #=> 'F6E2D0B4-CC35-4A91-BA4C-C7C712B10C13@test.me.dom'
  #  mail[:message_id].message_ids  #=> ['F6E2D0B4-CC35-4A91-BA4C-C7C712B10C13@test.me.dom']
  class MessageIdField < CommonMessageIdField #:nodoc:
    NAME = 'Message-ID'

    def self.singular?
      true
    end

    def initialize(value = nil, charset = nil)
      value = Mail::Utilities.generate_message_id if Utilities.blank?(value)
      super value, charset
    end

    def message_ids
      [message_id]
    end
  end
end

Version data entries

14 entries across 14 versions & 5 rubygems

Version Path
minato_ruby_api_client-0.2.2 vendor/bundle/ruby/3.2.0/gems/mail-2.8.1/lib/mail/fields/message_id_field.rb
blacklight-spotlight-3.6.0.beta8 vendor/bundle/ruby/3.2.0/gems/mail-2.8.1/lib/mail/fields/message_id_field.rb
cm-admin-1.5.22 vendor/bundle/ruby/3.3.0/gems/mail-2.8.1/lib/mail/fields/message_id_field.rb
cm-admin-1.5.21 vendor/bundle/ruby/3.3.0/gems/mail-2.8.1/lib/mail/fields/message_id_field.rb
cm-admin-1.5.20 vendor/bundle/ruby/3.3.0/gems/mail-2.8.1/lib/mail/fields/message_id_field.rb
tinymce-rails-7.1.2 vendor/bundle/ruby/3.3.0/gems/mail-2.8.1/lib/mail/fields/message_id_field.rb
mail-2.8.1 lib/mail/fields/message_id_field.rb
mail-2.8.1.rc2 lib/mail/fields/message_id_field.rb
mail-2.8.0.1 lib/mail/fields/message_id_field.rb
mail-2.8.0.1.rc1 lib/mail/fields/message_id_field.rb
mail-2.8.0 lib/mail/fields/message_id_field.rb
mail-2.8.0.rc3 lib/mail/fields/message_id_field.rb
mail-2.8.0.rc2 lib/mail/fields/message_id_field.rb
mail-2.8.0.rc1 lib/mail/fields/message_id_field.rb