Class: Wordpress::Object::MetaObject

Inherits:
Base
  • Object
show all
Defined in:
lib/wordpress/object/meta_object.rb

Direct Known Subclasses

Comment, Media, Oauth, Post, Site, User

Instance Attribute Summary

Attributes inherited from Base

#client, #request

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#[], #initialize, options, #respond_to_missing?, #to_hash

Methods inherited from Base

#metaclass

Constructor Details

This class inherits a constructor from Wordpress::Object::Base

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Wordpress::Object::Base

Class Method Details

.attr_meta_object(params) ⇒ Object



14
15
16
# File 'lib/wordpress/object/meta_object.rb', line 14

def attr_meta_object(params)
  self.meta_objects = (meta_objects || {}).merge(Hash[params.map{ |k, v| [k.to_s, v] }])
end

.inherited(base) ⇒ Object



8
9
10
11
12
# File 'lib/wordpress/object/meta_object.rb', line 8

def inherited(base)
  base.class_eval do
    attr_parameter :meta
  end
end

Instance Method Details

#assign(response) ⇒ Object



19
20
21
22
# File 'lib/wordpress/object/meta_object.rb', line 19

def assign(response)
  @cached_objects = {}
  super
end

#deleteObject

Raises:

  • (NotImplementedError)


37
38
39
# File 'lib/wordpress/object/meta_object.rb', line 37

def delete
  raise NotImplementedError
end

#reloadObject



24
25
26
27
28
29
30
31
# File 'lib/wordpress/object/meta_object.rb', line 24

def reload
  if meta && meta.links && meta.links.self
    request = Wordpress::Request.new(:get, meta.links.self)
    client.exec_api(request) do |json|
      self.assign(json)
    end
  end
end

#saveObject

Raises:

  • (NotImplementedError)


33
34
35
# File 'lib/wordpress/object/meta_object.rb', line 33

def save
  raise NotImplementedError
end