Class: NounProjectApi::Retriever

Inherits:
Object
  • Object
show all
Includes:
Connection
Defined in:
lib/noun_project_api/retriever.rb

Overview

A base class for different retriever classes.

Instance Attribute Summary

Attributes included from Connection

#access_token, #secret, #token

Instance Method Summary collapse

Methods included from Connection

#initialize

Instance Method Details

#find(id) ⇒ Object

Find an item based on it’s id.

Raises:

  • (ArgumentError)


9
10
11
12
13
14
15
16
# File 'lib/noun_project_api/retriever.rb', line 9

def find(id)
  raise ArgumentError, "Missing id/slug" unless id

  result = access_token.get("#{API_BASE}#{self.class::API_PATH}#{id}")
  raise ServiceError.new(result.code, result.body) unless result.code == "200"

  self.class::ITEM_CLASS.new(result.body)
end