Class: MockServer::HttpSseResponse

Inherits:
Object
  • Object
show all
Defined in:
lib/mockserver/models.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(status_code: nil, headers: nil, events: nil, close_connection: nil, delay: nil, primary: nil) ⇒ HttpSseResponse

Returns a new instance of HttpSseResponse.



1095
1096
1097
1098
1099
1100
1101
1102
# File 'lib/mockserver/models.rb', line 1095

def initialize(status_code: nil, headers: nil, events: nil, close_connection: nil, delay: nil, primary: nil)
  @status_code = status_code
  @headers = headers
  @events = events
  @close_connection = close_connection
  @delay = delay
  @primary = primary
end

Instance Attribute Details

#close_connectionObject

Returns the value of attribute close_connection.



1093
1094
1095
# File 'lib/mockserver/models.rb', line 1093

def close_connection
  @close_connection
end

#delayObject

Returns the value of attribute delay.



1093
1094
1095
# File 'lib/mockserver/models.rb', line 1093

def delay
  @delay
end

#eventsObject

Returns the value of attribute events.



1093
1094
1095
# File 'lib/mockserver/models.rb', line 1093

def events
  @events
end

#headersObject

Returns the value of attribute headers.



1093
1094
1095
# File 'lib/mockserver/models.rb', line 1093

def headers
  @headers
end

#primaryObject

Returns the value of attribute primary.



1093
1094
1095
# File 'lib/mockserver/models.rb', line 1093

def primary
  @primary
end

#status_codeObject

Returns the value of attribute status_code.



1093
1094
1095
# File 'lib/mockserver/models.rb', line 1093

def status_code
  @status_code
end

Class Method Details

.from_hash(data) ⇒ Object



1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
# File 'lib/mockserver/models.rb', line 1115

def self.from_hash(data)
  return nil if data.nil?

  events_data = data['events']
  events = events_data&.map { |e| SseEvent.from_hash(e) }
  new(
    status_code:      data['statusCode'],
    headers:          MockServer.deserialize_key_multi_values(data['headers']),
    events:           events,
    close_connection: data['closeConnection'],
    delay:            Delay.from_hash(data['delay']),
    primary:          data['primary']
  )
end

Instance Method Details

#to_hObject



1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
# File 'lib/mockserver/models.rb', line 1104

def to_h
  result = {}
  result['statusCode'] = @status_code unless @status_code.nil?
  result['headers'] = MockServer.serialize_key_multi_values(@headers) if @headers
  result['events'] = @events&.map(&:to_h) if @events
  result['closeConnection'] = @close_connection unless @close_connection.nil?
  result['delay'] = @delay.to_h if @delay
  result['primary'] = @primary unless @primary.nil?
  result
end