Class: Orias::Intermediary

Inherits:
Base
  • Object
show all
Defined in:
lib/orias/intermediary.rb

Overview

Dedicated to Orias intermediaries objects handling

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ Intermediary

Initialize an Orias::Intermediary instance



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/orias/intermediary.rb', line 10

def initialize(attributes = {})
  @raw = attributes

  base = @raw.dig('informationBase')

  @found = base.dig('foundInRegistry') == 'true'
  @siren = base.dig('siren')
  @orias = base.dig('registrationNumber')
  @denomination = base.dig('denomination')

  raw_registrations = @raw.dig('registrations', 'registration')
  unless raw_registrations.is_a?(Array)
    raw_registrations = [raw_registrations]
  end

  @registrations = raw_registrations.compact.map do |h|
    Orias::Registration.new(h)
  end
end

Instance Attribute Details

#denominationObject

Returns the value of attribute denomination.



5
6
7
# File 'lib/orias/intermediary.rb', line 5

def denomination
  @denomination
end

#foundObject

Returns the value of attribute found.



5
6
7
# File 'lib/orias/intermediary.rb', line 5

def found
  @found
end

#oriasObject Also known as: registration_number

Returns the value of attribute orias.



5
6
7
# File 'lib/orias/intermediary.rb', line 5

def orias
  @orias
end

#rawObject

Returns the value of attribute raw.



5
6
7
# File 'lib/orias/intermediary.rb', line 5

def raw
  @raw
end

#registrationsObject

Returns the value of attribute registrations.



5
6
7
# File 'lib/orias/intermediary.rb', line 5

def registrations
  @registrations
end

#sirenObject

Returns the value of attribute siren.



5
6
7
# File 'lib/orias/intermediary.rb', line 5

def siren
  @siren
end

Instance Method Details

#registrations_with_status(status_value) ⇒ Object

Registrations collections



36
37
38
39
40
# File 'lib/orias/intermediary.rb', line 36

def registrations_with_status(status_value)
  @registrations.select do |registration|
    registration.status == status_value
  end
end

#subscribedObject



30
31
32
# File 'lib/orias/intermediary.rb', line 30

def subscribed
  !registrations_with_status('INSCRIT').empty?
end