Class: MPI::Messages::FindProfileByAttributes

Inherits:
Object
  • Object
show all
Defined in:
lib/mpi/messages/find_profile_by_attributes.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(first_name:, last_name:, birth_date:, ssn:, middle_name: nil, gender: nil, orch_search: false, edipi: nil, search_type: MPI::Constants::CORRELATION_WITH_RELATIONSHIP_DATA) ⇒ FindProfileByAttributes

rubocop:disable Metrics/ParameterLists



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 13

def initialize(first_name:,
               last_name:,
               birth_date:,
               ssn:,
               middle_name: nil,
               gender: nil,
               orch_search: false,
               edipi: nil,
               search_type: MPI::Constants::CORRELATION_WITH_RELATIONSHIP_DATA)
  @first_name = first_name
  @middle_name = middle_name
  @last_name = last_name
  @birth_date = birth_date
  @gender = gender
  @ssn = ssn
  @orch_search = orch_search
  @edipi = edipi
  @search_type = search_type
end

Instance Attribute Details

#birth_dateObject (readonly)

Returns the value of attribute birth_date.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def birth_date
  @birth_date
end

#edipiObject (readonly)

Returns the value of attribute edipi.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def edipi
  @edipi
end

#first_nameObject (readonly)

Returns the value of attribute first_name.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def first_name
  @first_name
end

#genderObject (readonly)

Returns the value of attribute gender.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def gender
  @gender
end

#last_nameObject (readonly)

Returns the value of attribute last_name.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def last_name
  @last_name
end

#middle_nameObject (readonly)

Returns the value of attribute middle_name.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def middle_name
  @middle_name
end

#orch_searchObject (readonly)

Returns the value of attribute orch_search.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def orch_search
  @orch_search
end

#search_typeObject (readonly)

Returns the value of attribute search_type.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def search_type
  @search_type
end

#ssnObject (readonly)

Returns the value of attribute ssn.



10
11
12
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 10

def ssn
  @ssn
end

Instance Method Details

#performObject



33
34
35
36
37
38
39
# File 'lib/mpi/messages/find_profile_by_attributes.rb', line 33

def perform
  validate_required_fields
  MPI::Messages::RequestBuilder.new(extension: MPI::Constants::FIND_PROFILE, body: build_body).perform
rescue => e
  Rails.logger.error "[FindProfileByAttributes] Failed to build request: #{e.message}"
  raise e
end