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.



735
736
737
738
# File 'lib/sup/message.rb', line 735

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

Instance Attribute Details

#infoObject (readonly)

Returns the value of attribute info.



733
734
735
# File 'lib/sup/message.rb', line 733

def info
  @info
end

#sourceObject (readonly)

Returns the value of attribute source.



732
733
734
# File 'lib/sup/message.rb', line 732

def source
  @source
end

Instance Method Details

#==(o) ⇒ Object



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

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

#each_raw_message_line(&b) ⇒ Object

much faster than raw_message



767
768
769
# File 'lib/sup/message.rb', line 767

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

#hashObject



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

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

#labels?Boolean

Returns:

  • (Boolean)


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

def labels?
  source.labels? info
end

#parsed_messageObject



771
772
773
# File 'lib/sup/message.rb', line 771

def parsed_message
  source.load_message info
end

#raw_headerObject



740
741
742
# File 'lib/sup/message.rb', line 740

def raw_header
  source.raw_header info
end

#raw_messageObject



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

def raw_message
  source.raw_message info
end

#sync_back(labels, message) ⇒ Object



748
749
750
751
752
753
754
755
756
757
758
759
760
# File 'lib/sup/message.rb', line 748

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)


762
763
764
# File 'lib/sup/message.rb', line 762

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)


775
776
777
# File 'lib/sup/message.rb', line 775

def valid?
  source.valid? info
end