Class: AddressFinder::V1::Phone::BatchVerification

Inherits:
Object
  • Object
show all
Defined in:
lib/addressfinder/v1/phone/batch_verification.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(phone_numbers:, default_country_code:, http:, concurrency: 5, **args) ⇒ BatchVerification

Verifies an array of phone numbers using concurrency to reduce the execution time. The results of the verification are stored in the ‘results` attribute, in the same order in which they were supplied.

Parameters:

  • phone_numbers (Array<String>)
  • default_country_code (String)
  • http (AddressFinder::HTTP)

    HTTP connection helper

  • concurrency (Integer) (defaults to: 5)

    How many threads to use for verification

  • args (Hash)

    Any additional arguments that will be passed onto the EV API



16
17
18
19
20
21
22
# File 'lib/addressfinder/v1/phone/batch_verification.rb', line 16

def initialize(phone_numbers:, default_country_code:, http:, concurrency: 5, **args)
  @phone_numbers = phone_numbers
  @concurrency = concurrency
  @default_country_code = default_country_code
  @http = http
  @args = args
end

Instance Attribute Details

#phone_numbersObject (readonly)

Returns the value of attribute phone_numbers.



5
6
7
# File 'lib/addressfinder/v1/phone/batch_verification.rb', line 5

def phone_numbers
  @phone_numbers
end

#resultsObject (readonly)

Returns the value of attribute results.



5
6
7
# File 'lib/addressfinder/v1/phone/batch_verification.rb', line 5

def results
  @results
end

Instance Method Details

#performObject



24
25
26
27
28
29
# File 'lib/addressfinder/v1/phone/batch_verification.rb', line 24

def perform
  confirm_concurrency_level
  verify_each_phone_number_concurrently

  self
end