class ContextIO::Lite::Message

Constants

FLAG_KEYS

Public Instance Methods

body(options={}) click to toggle source
# File lib/contextio/lite/message.rb, line 40
def body(options={})
  @body ||= if @with_constraints.has_key?(:include_body) && @with_constraints[:include_body]==1 then
              options.has_key?('type') ?
                  self.api_attributes['bodies'].select { |b| b['type']==options['type'] } :
                  self.api_attributes['bodies']
            else
              api.request(:get, "#{resource_url}/body", options)['bodies']
            end
end
body_html() click to toggle source
# File lib/contextio/lite/message.rb, line 36
def body_html
  self.body(type:'text/html').map{|b| b['content']}.join
end
body_plain() click to toggle source
# File lib/contextio/lite/message.rb, line 32
def body_plain
  self.body(type:'text/plain').map{|b| b['content']}.join
end
flags() click to toggle source
# File lib/contextio/lite/message.rb, line 50
def flags
  if @with_constraints.has_key?(:include_flags) && @with_constraints[:include_flags]==1
    @flags = self.api_attributes['flags']
  else
    @flags ||= api.request(:get, "#{resource_url}/flags")['flags']
    @flags['seen'] = @flags.delete 'read' if @flags.has_key? 'read'
    @flags = Hash[FLAG_KEYS.map{|f| [f, @flags.include?(f) && @flags[f]]}]
  end
  @flags
end
headers() click to toggle source
# File lib/contextio/lite/message.rb, line 61
def headers
  @headers ||= @with_constraints.has_key?(:include_headers) && @with_constraints[:include_headers]==1 ?
    self.api_attributes['headers'] :
    api.request(:get, "#{resource_url}/headers")['headers']
end
raw() click to toggle source
# File lib/contextio/lite/message.rb, line 67
def raw
  api.raw_request(:get, "#{resource_url}/raw")
end
read() click to toggle source
# File lib/contextio/lite/message.rb, line 71
def read
  api.request(:post, "#{resource_url}/read")['success']
end
sent() click to toggle source
# File lib/contextio/lite/message.rb, line 22
def sent
  @sent ||= Time.at(sent_at)
end