Class: DocomoWebMailer::MailLabelList

Inherits:
Object
  • Object
show all
Defined in:
lib/docomo_web_mailer.rb

Overview

メールのラベル(フォルダ)リストを表す

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(status, data) ⇒ MailLabelList

Returns a new instance of MailLabelList.



456
457
458
459
# File 'lib/docomo_web_mailer.rb', line 456

def initialize(status, data)
  @status = status
  @server_folders,@user_folders,@user_flags = data.map{|a| a.map{|l| MailLabel.new(*l) }}
end

Instance Attribute Details

#server_foldersObject (readonly)

サーバフォルダ(既定のフォルダ)のリスト。MailLabel の配列である。



449
450
451
# File 'lib/docomo_web_mailer.rb', line 449

def server_folders
  @server_folders
end

#statusObject (readonly)

戻りステータス :ok なら異常なし(詳細不明)



455
456
457
# File 'lib/docomo_web_mailer.rb', line 455

def status
  @status
end

#user_flagsObject (readonly)

ユーザフラグのリスト(用途不明)。MailLabel の配列である。



453
454
455
# File 'lib/docomo_web_mailer.rb', line 453

def user_flags
  @user_flags
end

#user_foldersObject (readonly)

個人フォルダ(およびメルマガフォルダ)のリスト。MailLabel の配列である。



451
452
453
# File 'lib/docomo_web_mailer.rb', line 451

def user_folders
  @user_folders
end

Instance Method Details

#[](name) ⇒ Object

名前でラベル(フォルダ)を選ぶ nameがシンボルならサーバフォルダから、文字列ならユーザフォルダから選ぶ。 数字ならユーザフォルダのインデックスとして選ぶ。



463
464
465
466
467
468
469
470
471
472
# File 'lib/docomo_web_mailer.rb', line 463

def [](name)
  if name.is_a? Symbol
    return @server_folders.find{|a| a.index == name}
  elsif name.is_a? Numeric
    return @user_folders.find{|a| a.index == name}
  else
    return @user_folders.find{|a| a.name == name}
  end
  raise "invalid label key #{name}"
end