Class: Fauna::ErrorData

Inherits:
Object
  • Object
show all
Defined in:
lib/fauna/errors.rb

Overview

Data for one error returned by the server.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(code, description, position, failures) ⇒ ErrorData

:nodoc:



162
163
164
165
166
167
# File 'lib/fauna/errors.rb', line 162

def initialize(code, description, position, failures) # :nodoc:
  @code = code
  @description = description
  @position = position
  @failures = failures
end

Instance Attribute Details

#codeObject (readonly)

Error code.

Reference: FaunaDB Error codes



146
147
148
# File 'lib/fauna/errors.rb', line 146

def code
  @code
end

#descriptionObject (readonly)

Error description.



148
149
150
# File 'lib/fauna/errors.rb', line 148

def description
  @description
end

#failuresObject (readonly)

List of Failure objects returned by the server. nil except for validation failed errors.



152
153
154
# File 'lib/fauna/errors.rb', line 152

def failures
  @failures
end

#positionObject (readonly)

Position of the error in a query. May be nil.



150
151
152
# File 'lib/fauna/errors.rb', line 150

def position
  @position
end

Class Method Details

.from_hash(hash) ⇒ Object

:nodoc:



154
155
156
157
158
159
160
# File 'lib/fauna/errors.rb', line 154

def self.from_hash(hash) # :nodoc:
  code = ErrorHelpers.get_or_throw hash, :code
  description = ErrorHelpers.get_or_throw hash, :description
  position = ErrorHelpers.map_position hash[:position]
  failures = hash[:failures].map(&Failure.method(:from_hash)) unless hash[:failures].nil?
  ErrorData.new code, description, position, failures
end

Instance Method Details

#inspectObject

:nodoc:



169
170
171
# File 'lib/fauna/errors.rb', line 169

def inspect # :nodoc:
  "ErrorData(#{code.inspect}, #{description.inspect}, #{position.inspect}, #{failures.inspect})"
end