Class: Mindee::Product::BusinessCard::BusinessCardV1Document

Inherits:
Mindee::Parsing::Common::Prediction show all
Includes:
Mindee::Parsing::Standard
Defined in:
lib/mindee/product/business_card/business_card_v1_document.rb

Overview

Business Card API version 1.0 document data.

Direct Known Subclasses

BusinessCardV1PagePrediction

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(prediction, page_id) ⇒ BusinessCardV1Document

Returns a new instance of BusinessCardV1Document.

Parameters:

  • prediction (Hash)
  • page_id (Integer, nil)
[View source]

47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 47

def initialize(prediction, page_id)
  super
  @address = Parsing::Standard::StringField.new(
    prediction['address'],
    page_id
  )
  @company = Parsing::Standard::StringField.new(
    prediction['company'],
    page_id
  )
  @email = Parsing::Standard::StringField.new(prediction['email'], page_id)
  @fax_number = Parsing::Standard::StringField.new(
    prediction['fax_number'],
    page_id
  )
  @firstname = Parsing::Standard::StringField.new(
    prediction['firstname'],
    page_id
  )
  @job_title = Parsing::Standard::StringField.new(
    prediction['job_title'],
    page_id
  )
  @lastname = Parsing::Standard::StringField.new(
    prediction['lastname'],
    page_id
  )
  @mobile_number = Parsing::Standard::StringField.new(
    prediction['mobile_number'],
    page_id
  )
  @phone_number = Parsing::Standard::StringField.new(
    prediction['phone_number'],
    page_id
  )
  @social_media = [] # : Array[Parsing::Standard::StringField]
  prediction['social_media'].each do |item|
    @social_media.push(Parsing::Standard::StringField.new(item, page_id))
  end
  @website = Parsing::Standard::StringField.new(
    prediction['website'],
    page_id
  )
end

Instance Attribute Details

#addressMindee::Parsing::Standard::StringField (readonly)

The address of the person.


13
14
15
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 13

def address
  @address
end

#companyMindee::Parsing::Standard::StringField (readonly)

The company the person works for.


16
17
18
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 16

def company
  @company
end

#emailMindee::Parsing::Standard::StringField (readonly)

The email address of the person.


19
20
21
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 19

def email
  @email
end

#fax_numberMindee::Parsing::Standard::StringField (readonly)

The Fax number of the person.


22
23
24
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 22

def fax_number
  @fax_number
end

#firstnameMindee::Parsing::Standard::StringField (readonly)

The given name of the person.


25
26
27
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 25

def firstname
  @firstname
end

#job_titleMindee::Parsing::Standard::StringField (readonly)

The job title of the person.


28
29
30
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 28

def job_title
  @job_title
end

#lastnameMindee::Parsing::Standard::StringField (readonly)

The lastname of the person.


31
32
33
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 31

def lastname
  @lastname
end

#mobile_numberMindee::Parsing::Standard::StringField (readonly)

The mobile number of the person.


34
35
36
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 34

def mobile_number
  @mobile_number
end

#phone_numberMindee::Parsing::Standard::StringField (readonly)

The phone number of the person.


37
38
39
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 37

def phone_number
  @phone_number
end

#social_mediaArray<Mindee::Parsing::Standard::StringField> (readonly)

The social media profiles of the person or company.


40
41
42
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 40

def social_media
  @social_media
end

#websiteMindee::Parsing::Standard::StringField (readonly)

The website of the person or company.


43
44
45
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 43

def website
  @website
end

Instance Method Details

#to_sString

Returns:

  • (String)
[View source]

93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# File 'lib/mindee/product/business_card/business_card_v1_document.rb', line 93

def to_s
  social_media = @social_media.join("\n #{' ' * 14}")
  out_str = String.new
  out_str << "\n:Firstname: #{@firstname}".rstrip
  out_str << "\n:Lastname: #{@lastname}".rstrip
  out_str << "\n:Job Title: #{@job_title}".rstrip
  out_str << "\n:Company: #{@company}".rstrip
  out_str << "\n:Email: #{@email}".rstrip
  out_str << "\n:Phone Number: #{@phone_number}".rstrip
  out_str << "\n:Mobile Number: #{@mobile_number}".rstrip
  out_str << "\n:Fax Number: #{@fax_number}".rstrip
  out_str << "\n:Address: #{@address}".rstrip
  out_str << "\n:Website: #{@website}".rstrip
  out_str << "\n:Social Media: #{social_media}".rstrip
  out_str[1..].to_s
end