Sha256: 973e6c10be9ce1bfa4d8c2cec2b982d8f635fa5860a5e701279f0ae30a91fccb

Contents?: true

Size: 469 Bytes

Versions: 2

Compression:

Stored size: 469 Bytes

Contents

module AppleNews
  module Resource
    extend ActiveSupport::Concern

    included do
      def update_with_data(data)
        process_data(data)
      end

      private

      def hydrate!
        request = AppleNews::Request::Get.new(@url)
        resp = request.call
        process_data(resp['data'])
      end

      def process_data(data)
        data.each do |k, v|
          instance_variable_set("@#{k.underscore}", v)
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
apple-news-0.1.1 lib/apple-news/resource.rb
apple-news-0.1.0 lib/apple-news/resource.rb