Class: SpreeCmCommissioner::Integrations::Larryta::Resources::BookingSession

Inherits:
Base
  • Object
show all
Defined in:
app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb

Overview

Represents a booking session from Larryta API (seat selection response)

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Base

from_api_response

Constructor Details

#initialize(data) ⇒ BookingSession

rubocop:disable Lint/MissingSuper



6
7
8
9
10
11
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 6

def initialize(data) # rubocop:disable Lint/MissingSuper
  @session_token = data['session_token']
  @booking_code = data['booking_code']
  @status = data['status']
  @msg = data['msg']
end

Instance Attribute Details

#booking_codeObject

Returns the value of attribute booking_code.



4
5
6
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 4

def booking_code
  @booking_code
end

#msgObject

Returns the value of attribute msg.



4
5
6
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 4

def msg
  @msg
end

#session_tokenObject

Returns the value of attribute session_token.



4
5
6
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 4

def session_token
  @session_token
end

#statusObject

Returns the value of attribute status.



4
5
6
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 4

def status
  @status
end

Instance Method Details

#error_messageObject

Returns the error message if failed



24
25
26
27
28
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 24

def error_message
  return msg if failed?

  nil
end

#failed?Boolean

Returns true if the session failed

Returns:

  • (Boolean)


19
20
21
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 19

def failed?
  !success?
end

#success?Boolean

Returns true if the session was created successfully

Returns:

  • (Boolean)


14
15
16
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 14

def success?
  status == true && session_token.present?
end

#to_hObject

Returns a hash representation



31
32
33
34
35
36
37
38
39
40
41
# File 'app/services/spree_cm_commissioner/integrations/larryta/resources/booking_session.rb', line 31

def to_h
  {
    session_token: session_token,
    booking_code: booking_code,
    success: success?,
    failed: failed?,
    error_message: error_message,
    status: status,
    message: msg
  }
end