Sha256: 116506eb1c5f7ce753cf6fe22de728f12b6683511ee714e4ddbbc73a88537f0a
Contents?: true
Size: 1.37 KB
Versions: 1
Compression:
Stored size: 1.37 KB
Contents
require 'restful_model' module Nylas class Draft < Message parameter :thread_id parameter :version parameter :reply_to_message_id parameter :file_ids def attach(file) file.save! unless file.id @file_ids ||= [] @file_ids.push(file.id) end def as_json(options = {}) # FIXME @karim: this is a bit of a hack --- Draft inherits Message # was okay until we overrode Message#as_json to allow updating folders/labels. # This broke draft sending, which relies on RestfulModel::as_json to work. grandparent = self.class.superclass.superclass meth = grandparent.instance_method(:as_json) meth.bind(self).call end def send! url = @_api.url_for_path("/send") if @id data = {:draft_id => @id, :version => @version} else data = as_json() end ::RestClient.post(url, data.to_json, :content_type => :json) do |response, request, result| response = Nylas.interpret_response(result, response, {:expected_class => Object}) self.inflate(response) end self end def destroy ::RestClient::Request.execute(method: :delete, url: self.url, payload: ({ :version => self.version }).to_json) do |response, request, result| response = Nylas.interpret_response(result, response, options={:raw_response=>true}) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
nylas-3.0.0 | lib/draft.rb |