Sha256: 70b3b42c3c2ada582beeb0243091c4eb9d3bf3655b1134b8f99dd39a6a71a952
Contents?: true
Size: 823 Bytes
Versions: 2
Compression:
Stored size: 823 Bytes
Contents
module AppleNews module Resource extend ActiveSupport::Concern included do attr_accessor :config def update_with_data(data) load_properties(data) end def resource_url File.join(@resource_path, id) end def get_request(path, params = {}) AppleNews::Request::Get.new(path, config).call(params) end private def hydrate! if respond_to?(:load_properties) load_properties(fetch_data['data']) else set_read_only_properties(fetch_data['data']) end end def fetch_data get_request(resource_url) end def set_read_only_properties(data) data.each do |k, v| instance_variable_set("@#{k.to_s.underscore}", v) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
apple-news-0.5.1 | lib/apple-news/resource.rb |
apple-news-0.5.0 | lib/apple-news/resource.rb |