Class: Redwood::Location

Inherits:
Object show all
Defined in:
lib/sup/message.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(source, info) ⇒ Location

Returns a new instance of Location.



746
747
748
749
# File 'lib/sup/message.rb', line 746

def initialize source, info
  @source = source
  @info = info
end

Instance Attribute Details

#infoObject (readonly)

Returns the value of attribute info.



744
745
746
# File 'lib/sup/message.rb', line 744

def info
  @info
end

#sourceObject (readonly)

Returns the value of attribute source.



743
744
745
# File 'lib/sup/message.rb', line 743

def source
  @source
end

Instance Method Details

#==(o) ⇒ Object



794
795
796
# File 'lib/sup/message.rb', line 794

def == o
  o.source.id == source.id and o.info == info
end

#each_raw_message_line(&b) ⇒ Object

much faster than raw_message



778
779
780
# File 'lib/sup/message.rb', line 778

def each_raw_message_line &b
  source.each_raw_message_line info, &b
end

#hashObject



798
799
800
# File 'lib/sup/message.rb', line 798

def hash
  [source.id, info].hash
end

#labels?Boolean

Returns:

  • (Boolean)


790
791
792
# File 'lib/sup/message.rb', line 790

def labels?
  source.labels? info
end

#parsed_messageObject



782
783
784
# File 'lib/sup/message.rb', line 782

def parsed_message
  source.load_message info
end

#raw_headerObject



751
752
753
# File 'lib/sup/message.rb', line 751

def raw_header
  source.raw_header info
end

#raw_messageObject



755
756
757
# File 'lib/sup/message.rb', line 755

def raw_message
  source.raw_message info
end

#sync_back(labels, message) ⇒ Object



759
760
761
762
763
764
765
766
767
768
769
770
771
# File 'lib/sup/message.rb', line 759

def sync_back labels, message
  synced = false
  return synced unless sync_back_enabled? and valid?
  source.synchronize do
    new_info = source.sync_back(@info, labels)
    if new_info
      @info = new_info
      Index.sync_message message, true
      synced = true
    end
  end
  synced
end

#sync_back_enabled?Boolean

Returns:

  • (Boolean)


773
774
775
# File 'lib/sup/message.rb', line 773

def sync_back_enabled?
  source.respond_to? :sync_back and $config[:sync_back_to_maildir] and source.sync_back_enabled?
end

#valid?Boolean

Returns:

  • (Boolean)


786
787
788
# File 'lib/sup/message.rb', line 786

def valid?
  source.valid? info
end