Sha256: 3f25e39385eaeaddf1c92b03ff8be10ffebd30ee41f6a568c27c00e485361a8f
Contents?: true
Size: 1.26 KB
Versions: 4
Compression:
Stored size: 1.26 KB
Contents
# frozen_string_literal: true module Imis class Mapper FIELD_MAPPING = { vessel_examiner: ['ABC_ASC_Individual_Demog', 'Vol_Vessel_Examiner'], mm: ['ABC_ASC_Individual_Demog', 'TotMMS'], mm_updated: ['ABC_ASC_Individual_Demog', 'MMS_Updated'] }.freeze attr_reader :api def initialize(api) @api = api end # Update a member's data by a single field name # Does not require knowing which business object / iMIS-specific field name to use # # Only available for previously-mapped fields # def update(field_name, value) if FIELD_MAPPING.key?(field_name.to_sym) business_object_name, field = FIELD_MAPPING[field_name.to_sym] api.put(business_object_name, { field => value }) else warn( "Mapper does not know how to handle field \"#{field_name}\".\n\n" \ 'You can use api.put(business_object_name, { field_name => value }) ' \ "if you know the business object and iMIS-specific field name.\n\n" ) unless ENV['TESTING'] raise( Imis::Error::Mapper, "Unrecognized field: \"#{field_name}\". " \ 'Please report what data you are attempting to work with to ITCom leadership.' ) end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
usps-imis-api-0.1.1 | lib/imis/mapper.rb |
usps-imis-api-0.1.1.pre.2 | lib/imis/mapper.rb |
usps-imis-api-0.1.1.pre.1 | lib/imis/mapper.rb |
usps-imis-api-0.1.0 | lib/imis/mapper.rb |