Sha256: bb9e19bf2348cd0574f25f313a2b85c70d0117e9ee0a877c07287266a5e5b83c

Contents?: true

Size: 1000 Bytes

Versions: 14

Compression:

Stored size: 1000 Bytes

Contents

module Contentful
  module Management
    module Resource
      # Adds the feature to have properties and system data reload for Resource.
      module Refresher
        # Reload an object
        # Updates the current version of the object to the version on the system
        def reload
          resource = refresh_find
          refresh_data(resource) if resource.is_a? self.class
        end

        # @private
        def refresh_find
          return self.class.find(client, space.id, environment_id, id) if environment_id
          self.class.find(client, space.id, id)
        end

        # @private
        def refresh_data(resource)
          if resource.is_a? Error
            resource
          else
            @properties = resource.instance_variable_get(:@properties)
            @fields = resource.instance_variable_get(:@fields)
            @sys = resource.instance_variable_get(:@sys).merge(locale: locale)
            self
          end
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
contentful-management-3.3.0 lib/contentful/management/resource/refresher.rb
contentful-management-3.2.0 lib/contentful/management/resource/refresher.rb
contentful-management-3.1.0 lib/contentful/management/resource/refresher.rb
contentful-management-3.0.0 lib/contentful/management/resource/refresher.rb
contentful-management-2.13.1 lib/contentful/management/resource/refresher.rb
contentful-management-2.13.0 lib/contentful/management/resource/refresher.rb
contentful-management-2.12.1 lib/contentful/management/resource/refresher.rb
contentful-management-2.12.0 lib/contentful/management/resource/refresher.rb
contentful-management-2.11.0 lib/contentful/management/resource/refresher.rb
contentful-management-2.10.0 lib/contentful/management/resource/refresher.rb
contentful-management-2.9.1 lib/contentful/management/resource/refresher.rb
contentful-management-2.9.0 lib/contentful/management/resource/refresher.rb
contentful-management-2.8.2 lib/contentful/management/resource/refresher.rb
contentful-management-2.8.1 lib/contentful/management/resource/refresher.rb