Class: FbGraph::Node

Inherits:
Object
  • Object
show all
Includes:
Comparison
Defined in:
lib/fb_graph/node.rb

Direct Known Subclasses

Album, Application, Checkin, Comment, Event, Group, Link, Note, Page, Photo, Post, Status, User, Video

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Comparison

#==

Constructor Details

#initialize(identifier, options = {}) ⇒ Node

Returns a new instance of Node.



7
8
9
10
11
# File 'lib/fb_graph/node.rb', line 7

def initialize(identifier, options = {})
  @identifier   = identifier
  @endpoint     = File.join(FbGraph::ROOT_URL, identifier.to_s)
  @access_token = options[:access_token]
end

Instance Attribute Details

#access_tokenObject

Returns the value of attribute access_token.



5
6
7
# File 'lib/fb_graph/node.rb', line 5

def access_token
  @access_token
end

#endpointObject

Returns the value of attribute endpoint.



5
6
7
# File 'lib/fb_graph/node.rb', line 5

def endpoint
  @endpoint
end

#identifierObject

Returns the value of attribute identifier.



5
6
7
# File 'lib/fb_graph/node.rb', line 5

def identifier
  @identifier
end

Class Method Details

.fetch(identifier, options = {}) ⇒ Object



19
20
21
# File 'lib/fb_graph/node.rb', line 19

def self.fetch(identifier, options = {})
  new(identifier).fetch(options)
end

Instance Method Details

#connection(connection, options = {}) ⇒ Object



23
24
25
26
# File 'lib/fb_graph/node.rb', line 23

def connection(connection, options = {})
  collection = FbGraph::Collection.new(get(options.merge(:connection => connection)))
  Connection.new(self, connection, options.merge(:collection => collection))
end

#destroy(options = {}) ⇒ Object



28
29
30
31
# File 'lib/fb_graph/node.rb', line 28

def destroy(options = {})
  options[:access_token] ||= self.access_token if self.access_token
  delete(options)
end

#fetch(options = {}) ⇒ Object



13
14
15
16
17
# File 'lib/fb_graph/node.rb', line 13

def fetch(options = {})
  options[:access_token] ||= self.access_token if self.access_token
  _fetched_ = get(options)
  self.class.new(_fetched_.delete(:id), _fetched_.merge(:access_token => options[:access_token]))
end