class Hatena::Bookmark::Restful::V1
Constants
- API_VERSION
- BASE_URI
Public Class Methods
new(credentials)
click to toggle source
# File lib/hatena/bookmark/restful/v1.rb, line 43 def initialize(credentials) @credentials = credentials end
Public Instance Methods
api_version()
click to toggle source
# File lib/hatena/bookmark/restful/v1.rb, line 89 def api_version API_VERSION end
base_uri()
click to toggle source
# File lib/hatena/bookmark/restful/v1.rb, line 93 def base_uri BASE_URI end
bookmark(url)
click to toggle source
@return [Bookmark]
# File lib/hatena/bookmark/restful/v1.rb, line 70 def bookmark(url) res = connection.get("/#{api_version}/my/bookmark", url: url) attrs = JSON.parse(res.body) bookmark = Bookmark.new_from_response(attrs) end
create_bookmark(bookmark_params)
click to toggle source
@return [Bookmark]
# File lib/hatena/bookmark/restful/v1.rb, line 83 def create_bookmark(bookmark_params) res = connection.post("/#{api_version}/my/bookmark", bookmark_params) attrs = JSON.parse(res.body) bookmark = Bookmark.new_from_response(attrs) end
delete_bookmark(url)
click to toggle source
@return [Boolean]
# File lib/hatena/bookmark/restful/v1.rb, line 77 def delete_bookmark(url) res = connection.delete("/#{api_version}/my/bookmark", url: url) res.success? end
entry(url)
click to toggle source
@return [Entry]
# File lib/hatena/bookmark/restful/v1.rb, line 63 def entry(url) res = connection.get("/#{api_version}/entry", url: url) attrs = JSON.parse(res.body) entry = Entry.new_from_response(attrs) end
my()
click to toggle source
@return [User]
# File lib/hatena/bookmark/restful/v1.rb, line 48 def my res = connection.get("/#{api_version}/my") attrs = JSON.parse(res.body) user = User.new_from_response(attrs) end
Private Instance Methods
connection()
click to toggle source
# File lib/hatena/bookmark/restful/v1.rb, line 99 def connection @connection ||= Faraday.new(url: base_uri) do |faraday| faraday.request :url_encoded faraday.options.params_encoder = Faraday::FlatParamsEncoder faraday.request :oauth, consumer_key: @credentials.consumer_key, consumer_secret: @credentials.consumer_secret, token: @credentials.access_token, token_secret: @credentials.access_token_secret faraday.headers["User-Agent"] = "hatena-bookmark-restful" faraday.adapter Faraday.default_adapter end end