module Mail::CommonMessageId

def default

def default
  return nil unless message_ids
  if message_ids.length == 1
    message_ids[0]
  else
    message_ids
  end
end

def do_decode

def do_decode
  formated_message_ids(' ')
end

def do_encode(field_name)

def do_encode(field_name)
  %Q{#{field_name}: #{formated_message_ids("\r\n ")}\r\n}
end

def element

:nodoc:
def element
  @element ||= Mail::MessageIdsElement.new(value) unless value.blank?
end

def formated_message_ids(join)

def formated_message_ids(join)
  message_ids.map{ |m| "<#{m}>" }.join(join) if message_ids
end

def message_id

def message_id
  element.message_id if element
end

def message_ids

def message_ids
  element.message_ids if element
end

def parse(val = value)

def parse(val = value)
  unless val.blank?
    @element = Mail::MessageIdsElement.new(val)
  else
    nil
  end
end