class NewsApi::NewsApiRepository
Public Class Methods
new(api_key)
click to toggle source
# File lib/metonym/lib/repositories/news_api_repository.rb, line 5 def initialize(api_key) @news_api_key = api_key @uri = 'https://newsapi.org/v2/' end
Public Instance Methods
everything(query:)
click to toggle source
# File lib/metonym/lib/repositories/news_api_repository.rb, line 10 def everything(query:) request(@uri, query: query, resource: 'everything') end
sources(query:)
click to toggle source
# File lib/metonym/lib/repositories/news_api_repository.rb, line 18 def sources(query:) request(@uri, query: query, resource: 'sources') end
top_headlines(query:)
click to toggle source
# File lib/metonym/lib/repositories/news_api_repository.rb, line 14 def top_headlines(query:) request(@uri, query: query, resource: 'top-headlines') end
Private Instance Methods
prepare_arguments(query)
click to toggle source
# File lib/metonym/lib/repositories/news_api_repository.rb, line 24 def prepare_arguments(query) query['from'] = query.key?(:from) ? query[:from].strftime('%FT%T%:z') : nil query['to'] = query.key?(:to) ? query[:to].strftime('%FT%T%:z') : nil query['apiKey'] = @news_api_key query end