class Facebooker::BatchRequest

Attributes

method[R]
uri[R]

Public Instance Methods

===(other) click to toggle source
# File lib/facebooker/batch_request.rb, line 31
def ===(other)
  other === @result
end
exception_raised=(ex) click to toggle source
# File lib/facebooker/batch_request.rb, line 19
def exception_raised=(ex)
  @exception=ex
end
exception_raised?() click to toggle source
# File lib/facebooker/batch_request.rb, line 23
def exception_raised?
  @exception.nil? ? false : raise(@exception)
end
method_missing(name,*args,&proc) click to toggle source
# File lib/facebooker/batch_request.rb, line 35
def method_missing(name,*args,&proc)
  if @exception
    raise @exception
  elsif @result.nil?
    raise UnexecutedRequest.new("You must execute the batch before accessing the result: #{@uri}")
  else
    @result.send(name,*args,&proc)
  end
end
respond_to?(name) click to toggle source
# File lib/facebooker/batch_request.rb, line 27
def respond_to?(name)
  super || @result.respond_to?(name)
end
result=(result_object) click to toggle source
# File lib/facebooker/batch_request.rb, line 15
def result=(result_object)
  @result = @proc.nil? ? result_object : @proc.call(result_object)
end

Public Class Methods

new(params,proc) click to toggle source
# File lib/facebooker/batch_request.rb, line 7
def initialize(params,proc)
  @exception  = nil
  @result     = nil
  @method     = params[:method]
  @uri        = params.map{|k,v| "#{k}=#{CGI.escape(v.to_s)}"}.join("&")
  @proc       = proc
end