Sha256: fafce208074d4c8d26f2049d95787945c7828bbac3539a3bf558f20c7f6c56a8
Contents?: true
Size: 1.15 KB
Versions: 2
Compression:
Stored size: 1.15 KB
Contents
# frozen_string_literal: true module Contentful module Management module Resource # Adds metadata logic for [Resource] classes module Metadata # Returns the metadata hash attr_reader :_metadata # @private def initialize(object = nil, *) super @_metadata = {} extract_metadata_from_object! object if object end # @private def inspect(info = nil) if _metadata.empty? super(info) else super("#{info} @_metadata=#{_metadata.inspect}") end end private def extract_metadata_from_object!(object) return unless object.key?('metadata') object['metadata'].each do |key, value| @_metadata[key.to_sym] = if key == 'tags' coerce_tags(value) else value end end end def coerce_tags(tags) tags.map { |tag| Contentful::Management::Link.new(tag) } end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
contentful-management-3.10.0 | lib/contentful/management/resource/metadata.rb |
contentful-management-3.9.0 | lib/contentful/management/resource/metadata.rb |