Class: Adparlor::Facebook::GraphApi::CollectionProxy

Inherits:
Object
  • Object
show all
Defined in:
lib/adparlor/facebook/graph_api/collection_proxy.rb

Instance Method Summary collapse

Constructor Details

#initialize(klass, path, access_token, data = nil, options = {}) ⇒ CollectionProxy

Returns a new instance of CollectionProxy.



5
6
7
8
9
10
11
# File 'lib/adparlor/facebook/graph_api/collection_proxy.rb', line 5

def initialize(klass, path, access_token, data = nil, options = {})
  @klass = klass
  @path = path
  @access_token = access_token
  @options = options
  @all = Array(data).collect { |attributes| @klass.new(attributes) } if data
end

Instance Method Details

#all(options = {}) ⇒ Object



13
14
15
16
17
# File 'lib/adparlor/facebook/graph_api/collection_proxy.rb', line 13

def all(options = {})
  options.merge!(access_token: @access_token) unless options[:access_token]
  options.merge!(@options) if @options.any?
  @all ||= @klass.get(@path, options)
end

#create(attributes = {}, options = {}) ⇒ Object



19
20
21
22
# File 'lib/adparlor/facebook/graph_api/collection_proxy.rb', line 19

def create(attributes = {}, options = {})
  options.merge!(access_token: @access_token) unless options[:access_token]
  @klass.new(attributes).create(@path, options)
end

#destroy(attributes = {}, options = {}) ⇒ Object



24
25
26
27
# File 'lib/adparlor/facebook/graph_api/collection_proxy.rb', line 24

def destroy(attributes = {}, options = {})
  options.merge!(access_token: @access_token) unless options[:access_token]
  @klass.new(attributes).destroy(@path, options)
end

#update(attributes = {}, options = {}) ⇒ Object



29
30
31
32
# File 'lib/adparlor/facebook/graph_api/collection_proxy.rb', line 29

def update(attributes = {}, options = {})
  options.merge!(access_token: @access_token) unless options[:access_token]
  @klass.new(attributes).update(@path, options)
end