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.



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

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

Instance Attribute Details

#infoObject (readonly)

Returns the value of attribute info.



758
759
760
# File 'lib/sup/message.rb', line 758

def info
  @info
end

#sourceObject (readonly)

Returns the value of attribute source.



757
758
759
# File 'lib/sup/message.rb', line 757

def source
  @source
end

Instance Method Details

#==(o) ⇒ Object



808
809
810
# File 'lib/sup/message.rb', line 808

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

#each_raw_message_line(&b) ⇒ Object

much faster than raw_message



792
793
794
# File 'lib/sup/message.rb', line 792

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

#hashObject



812
813
814
# File 'lib/sup/message.rb', line 812

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

#labels?Boolean

Returns:

  • (Boolean)


804
805
806
# File 'lib/sup/message.rb', line 804

def labels?
  source.labels? info
end

#parsed_messageObject



796
797
798
# File 'lib/sup/message.rb', line 796

def parsed_message
  source.load_message info
end

#raw_headerObject



765
766
767
# File 'lib/sup/message.rb', line 765

def raw_header
  source.raw_header info
end

#raw_messageObject



769
770
771
# File 'lib/sup/message.rb', line 769

def raw_message
  source.raw_message info
end

#sync_back(labels, message) ⇒ Object



773
774
775
776
777
778
779
780
781
782
783
784
785
# File 'lib/sup/message.rb', line 773

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)


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

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)


800
801
802
# File 'lib/sup/message.rb', line 800

def valid?
  source.valid? info
end