module Contentful::Management::Resource::SystemProperties

Adds the feature to have system properties to a Resource.

Constants

SYS_COERCIONS

@private Coercions for System Properties to native types

Attributes

sys[R]

Public Class Methods

included(base) click to toggle source

@private

# File lib/contentful/management/resource/system_properties.rb, line 48
def self.included(base)
  base.extend(ClassMethods)

  base.sys_coercions.keys.each do |name|
    accessor_name = Contentful::Management::Support.snakify(name)
    base.send :define_method, accessor_name do
      sys[name.to_sym]
    end
    base.send :define_method, "#{accessor_name}=" do |value|
      sys[name.to_sym] = value
    end
  end
end
new(object = { 'sys' => nil }, *) click to toggle source

@private

Calls superclass method
# File lib/contentful/management/resource/system_properties.rb, line 24
def initialize(object = { 'sys' => nil }, *)
  super
  object ||= { 'sys' => nil }
  @sys = extract_from_object object['sys'], :sys
end

Public Instance Methods

inspect(info = nil) click to toggle source

@private

Calls superclass method
# File lib/contentful/management/resource/system_properties.rb, line 31
def inspect(info = nil)
  if sys.empty?
    super(info)
  else
    super("#{info} @sys=#{sys.inspect}")
  end
end