class Facebook::Error

Attributes

error[R]
url[R]

Public Class Methods

call(env) click to toggle source
# File lib/rest-core/client/facebook.rb, line 41
def self.call env
  error, url = env[RESPONSE_BODY], env[REQUEST_URI]
  return new(error, url) unless error.kind_of?(Hash)
  if    invalid_token?(error)
    InvalidAccessToken.new(error, url)
  elsif missing_token?(error)
    MissingAccessToken.new(error, url)
  else
    new(error, url)
  end
end
invalid_token?(error) click to toggle source
# File lib/rest-core/client/facebook.rb, line 53
def self.invalid_token? error
  (%w[OAuthInvalidTokenException
      OAuthException].include?((error['error'] || {})['type'])) ||
  (error['error_code'] == 190) # Invalid OAuth 2.0 Access Token
end
missing_token?(error) click to toggle source
# File lib/rest-core/client/facebook.rb, line 59
def self.missing_token? error
  (error['error'] || {})['message'] =~ /^An active access token/ ||
  (error['error_code'] == 104) # Requires valid signature
end
new(error, url='') click to toggle source
Calls superclass method
# File lib/rest-core/client/facebook.rb, line 36
def initialize error, url=''
  @error, @url = error, url
  super("#{error.inspect} from #{url}")
end