Sha256: 04b4432a18129f8509dae8c300da7d7a330d144d02a20a4aec69ed6173315ab8

Contents?: true

Size: 561 Bytes

Versions: 9

Compression:

Stored size: 561 Bytes

Contents

# frozen_string_literal: true

require_relative 'cacheable'
require_relative 'active_record_shim'

module WCC
  module Media
    class Base
      include WCC::Media::Cacheable
      include WCC::Media::ActiveRecordShim

      attr_reader :raw, :headers

      def initialize(raw, headers = {})
        @raw = raw
        @headers = headers
      end

      def id
        raw['id']&.to_s
      end

      def legacy_id
        raw['legacy_id']&.to_s
      end

      def _links
        OpenStruct.new(raw['_links']) if raw['_links']
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
wcc-media-client-0.7.5 lib/wcc/media/base.rb
wcc-media-client-0.7.4 lib/wcc/media/base.rb
wcc-media-client-0.7.3 lib/wcc/media/base.rb
wcc-media-client-0.7.2 lib/wcc/media/base.rb
wcc-media-client-0.7.1 lib/wcc/media/base.rb
wcc-media-client-0.7.0 lib/wcc/media/base.rb
wcc-media-client-0.6.1 lib/wcc/media/base.rb
wcc-media-client-0.6.0 lib/wcc/media/base.rb
wcc-media-client-0.5.0 lib/wcc/media/base.rb