Class: Arcp::Session::SessionError

Inherits:
Data
  • Object
show all
Defined in:
lib/arcp/session/session_error.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#codeObject (readonly)

Returns the value of attribute code

Returns:

  • (Object)

    the current value of code



5
6
7
# File 'lib/arcp/session/session_error.rb', line 5

def code
  @code
end

#detailsObject (readonly)

Returns the value of attribute details

Returns:

  • (Object)

    the current value of details



5
6
7
# File 'lib/arcp/session/session_error.rb', line 5

def details
  @details
end

#messageObject (readonly)

Returns the value of attribute message

Returns:

  • (Object)

    the current value of message



5
6
7
# File 'lib/arcp/session/session_error.rb', line 5

def message
  @message
end

#retryableObject (readonly)

Returns the value of attribute retryable

Returns:

  • (Object)

    the current value of retryable



5
6
7
# File 'lib/arcp/session/session_error.rb', line 5

def retryable
  @retryable
end

Class Method Details

.from_h(h) ⇒ Object



6
7
8
9
10
11
12
13
14
# File 'lib/arcp/session/session_error.rb', line 6

def self.from_h(h)
  h = h.transform_keys(&:to_s)
  new(
    code: h.fetch('code'),
    message: h['message'],
    retryable: h.fetch('retryable', false),
    details: h['details'] || {}
  )
end

Instance Method Details

#to_hObject



16
17
18
19
20
# File 'lib/arcp/session/session_error.rb', line 16

def to_h
  h = { 'code' => code, 'message' => message, 'retryable' => retryable }
  h['details'] = details unless details.nil? || details.empty?
  h
end