class Pickpocket::Articles::API

Constants

ACTION_DELETE
STATE_UNREAD

Attributes

token_handler[R]

Public Class Methods

new() click to toggle source
# File lib/pickpocket/articles/api.rb, line 11
def initialize
  @token_handler = Authentication::TokenHandler.new
end

Public Instance Methods

delete(article_ids = []) click to toggle source
# File lib/pickpocket/articles/api.rb, line 28
def delete(article_ids = [])
  return if article_ids.empty?

  uri         = URI(Pickpocket.config.pocket_send_url)
  json_action = article_ids.each_with_object([]) do |article_id, array|
    array << { action: ACTION_DELETE, item_id: article_id }
  end

  response = Net::HTTP.post_form(uri, {
      consumer_key: Pickpocket.config.consumer_key,
      access_token: access_token,
      actions:      JSON.dump(json_action)
  })

  # TODO: error handling (unauthorized, etc)

  JSON.parse(response.body)
end
retrieve() click to toggle source
# File lib/pickpocket/articles/api.rb, line 15
def retrieve
  uri      = URI(Pickpocket.config.pocket_retrieve_url)
  response = Net::HTTP.post_form(uri, {
      consumer_key: Pickpocket.config.consumer_key,
      access_token: access_token,
      state:        STATE_UNREAD
  })

  # TODO: error handling (unauthorized, etc)

  JSON.parse(response.body)
end

Private Instance Methods

access_token() click to toggle source
# File lib/pickpocket/articles/api.rb, line 49
def access_token
  token_handler.read_auth
end