Class: GridRest::Error

Inherits:
Object show all
Defined in:
lib/grid_rest.rb

Overview

Error class for a rest request. Has some nice features like internationalisation of messages, and basic methods to correspond with a normal request, but most importantly returns false on the valid? question.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(e, rparams) ⇒ Error

Returns a new instance of Error.



292
293
294
295
296
297
298
299
# File 'lib/grid_rest.rb', line 292

def initialize(e, rparams)
  @request_method = rparams.delete(:request_method) || rparams.delete(:method)
  @code = e.respond_to?(:http_code) ? e.http_code : (rparams.delete(:code) || 500)
  @response = e.response if e.respond_to?(:response)
  @type = e.class.name.split('::').last
  @message = I18n.t(@type, :scope => [:grid_rest, :message], :default => nil)
  @url = rparams.delete(:url)
end

Instance Attribute Details

#codeObject (readonly)

Returns the value of attribute code.



291
292
293
# File 'lib/grid_rest.rb', line 291

def code
  @code
end

#messageObject (readonly)

Returns the value of attribute message.



291
292
293
# File 'lib/grid_rest.rb', line 291

def message
  @message
end

#request_methodObject (readonly)

Returns the value of attribute request_method.



291
292
293
# File 'lib/grid_rest.rb', line 291

def request_method
  @request_method
end

#responseObject (readonly)

Returns the value of attribute response.



291
292
293
# File 'lib/grid_rest.rb', line 291

def response
  @response
end

#typeObject (readonly)

Returns the value of attribute type.



291
292
293
# File 'lib/grid_rest.rb', line 291

def type
  @type
end

#urlObject (readonly)

Returns the value of attribute url.



291
292
293
# File 'lib/grid_rest.rb', line 291

def url
  @url
end

Instance Method Details

#arrayObject

Call this on error if the result should be an empty array, but wit the invalid metadata



321
322
323
# File 'lib/grid_rest.rb', line 321

def array
  ErrorArray.new(self)
end

#to_sObject Also known as: to_str



304
305
306
# File 'lib/grid_rest.rb', line 304

def to_s
  ''
end

#try(m, *args) ⇒ Object



313
314
315
316
317
# File 'lib/grid_rest.rb', line 313

def try(m, *args)
  return send(m, *args) if respond_to?(m)
  # Behave like a nil object otherwise
  nil
end

#valid?Boolean

Returns:

  • (Boolean)


309
310
311
# File 'lib/grid_rest.rb', line 309

def valid?
  false
end