Class: Chatpdf::Session::Answer

Inherits:
Object
  • Object
show all
Defined in:
lib/chatpdf/session/answer.rb

Constant Summary collapse

PAGE_NUMBER_KEY =
"pageNumber".freeze
@@_id =
0

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(response = {}) ⇒ Answer

Returns a new instance of Answer.



9
10
11
12
13
14
# File 'lib/chatpdf/session/answer.rb', line 9

def initialize(response = {})
  @content = response["content"]
  @references = response["references"]
  @@_id = Random.uuid
  @id = @@_id
end

Instance Attribute Details

#contentObject (readonly)

Returns the value of attribute content.



7
8
9
# File 'lib/chatpdf/session/answer.rb', line 7

def content
  @content
end

#idObject (readonly)

Returns the value of attribute id.



7
8
9
# File 'lib/chatpdf/session/answer.rb', line 7

def id
  @id
end

Instance Method Details

#referencesObject



20
21
22
23
24
# File 'lib/chatpdf/session/answer.rb', line 20

def references
  return [] if @references.nil?
  
  @references.map { |reference| reference[PAGE_NUMBER_KEY] }
end

#serialiseObject



26
27
28
29
30
31
32
# File 'lib/chatpdf/session/answer.rb', line 26

def serialise
  {
    id: id,
    content: content,
    references: references
  }
end

#to_sObject



16
17
18
# File 'lib/chatpdf/session/answer.rb', line 16

def to_s
  @content
end