class Gnews::GnewsRepository

Public Class Methods

new(api_key) click to toggle source
# File lib/metonym/lib/repositories/gnews_repository.rb, line 5
def initialize(api_key)
  @gnews_api_key = api_key
  @uri = 'https://gnews.io/api/v3/'
end

Public Instance Methods

top_news(query:) click to toggle source
# File lib/metonym/lib/repositories/gnews_repository.rb, line 14
def top_news(query:)
  request(@uri, query: query, resource: 'top-news')
end
topic() click to toggle source
# File lib/metonym/lib/repositories/gnews_repository.rb, line 18
def topic
  request(@uri, query: query, resource: 'topic')
end

Private Instance Methods

prepare_arguments(query) click to toggle source
# File lib/metonym/lib/repositories/gnews_repository.rb, line 24
def prepare_arguments(query)
  query['mindate'] = query.key?(:mindate) ? query[:mindate].strftime('%y-%m-%d') : nil
  query['maxdate'] = query.key?(:maxdate) ? query[:maxdate].strftime('%y-%m-%d') : nil
  query['token'] = @gnews_api_key
  query
end