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:



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

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



139
140
141
# File 'lib/fauna/errors.rb', line 139

def code
  @code
end

#descriptionObject (readonly)

Error description.



141
142
143
# File 'lib/fauna/errors.rb', line 141

def description
  @description
end

#failuresObject (readonly)

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



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

def failures
  @failures
end

#positionObject (readonly)

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



143
144
145
# File 'lib/fauna/errors.rb', line 143

def position
  @position
end

Class Method Details

.from_hash(hash) ⇒ Object

:nodoc:



147
148
149
150
151
152
153
# File 'lib/fauna/errors.rb', line 147

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:



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

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