lib/adiwg/mdtranslator/readers/mdJson/modules/module_phone.rb in adiwg-mdtranslator-2.9.2 vs lib/adiwg/mdtranslator/readers/mdJson/modules/module_phone.rb in adiwg-mdtranslator-2.10.0

- old
+ new

@@ -1,68 +1,66 @@ # unpack phone # Reader - ADIwg JSON to internal data structure # History: -# Stan Smith 2016-10-02 phone service is now an array rather than creating individual phone records per service -# Stan Smith 2016-10-02 refactored for mdJson 2.0.0 -# Stan Smith 2015-07-14 refactored to remove global namespace constants -# Stan Smith 2015-06-22 replace global ($response) with passed in object (responseObj) -# Stan Smith 2014-12-15 refactored to handle namespacing readers and writers -# Stan Smith 2014-12-09 return empty phone object if no phone number -# Stan Smith 2014-05-14 combine phone service types +# Stan Smith 2018-02-19 refactored error and warning messaging +# Stan Smith 2016-10-02 phone service is now an array rather than creating individual phone records per service +# Stan Smith 2016-10-02 refactored for mdJson 2.0.0 +# Stan Smith 2015-07-14 refactored to remove global namespace constants +# Stan Smith 2015-06-22 replace global ($response) with passed in object (responseObj) +# Stan Smith 2014-12-15 refactored to handle namespacing readers and writers +# Stan Smith 2014-12-09 return empty phone object if no phone number +# Stan Smith 2014-05-14 combine phone service types # Stan Smith 2013-12-16 original script module ADIWG - module Mdtranslator - module Readers - module MdJson + module Mdtranslator + module Readers + module MdJson - module Phone + module Phone - def self.unpack(hPhone, responseObj) + def self.unpack(hPhone, responseObj) - # instance classes needed in script - intMetadataClass = InternalMetadata.new - intPhone = intMetadataClass.newPhone + # instance classes needed in script + intMetadataClass = InternalMetadata.new + intPhone = intMetadataClass.newPhone - if hPhone.empty? - responseObj[:readerExecutionMessages] << 'Phone object is empty' - responseObj[:readerExecutionPass] = false - return nil - end + if hPhone.empty? + responseObj[:readerExecutionMessages] << 'WARNING: mdJson reader: phone object is empty' + return nil + end - # phone - phoneNumber (required) - # return nil if no phone number is provided - if hPhone.has_key?('phoneNumber') - intPhone[:phoneNumber] = hPhone['phoneNumber'] - end - if hPhone['phoneNumber'].nil? || hPhone['phoneNumber'] == '' - responseObj[:readerExecutionMessages] << 'Phone object did not provide a phone number' - responseObj[:readerExecutionPass] = false - return nil - end + # phone - phoneNumber (required) + # return nil if no phone number is provided + if hPhone.has_key?('phoneNumber') + intPhone[:phoneNumber] = hPhone['phoneNumber'] + end + if hPhone['phoneNumber'].nil? || hPhone['phoneNumber'] == '' + responseObj[:readerExecutionMessages] << 'ERROR: mdJson reader: phone number is missing' + responseObj[:readerExecutionPass] = false + return nil + end - # phone - phoneName - if hPhone.has_key?('phoneName') - if hPhone['phoneName'] != '' - intPhone[:phoneName] = hPhone['phoneName'] - end - end + # phone - phoneName + if hPhone.has_key?('phoneName') + unless hPhone['phoneName'] == '' + intPhone[:phoneName] = hPhone['phoneName'] + end + end - # phone - service (recommended) - if hPhone.has_key?('service') - intPhone[:phoneServiceTypes] = hPhone['service'] - else - intPhone[:phoneServiceTypes] = [] - end - if intPhone[:phoneServiceTypes].empty? - responseObj[:readerExecutionMessages] << 'Phone object did not provide a service' - end + # phone - service (recommended) + if hPhone.has_key?('service') + intPhone[:phoneServiceTypes] = hPhone['service'] + end + if intPhone[:phoneServiceTypes].empty? + responseObj[:readerExecutionMessages] << 'WARNING: mdJson reader: phone service type is missing' + end - return intPhone - end - end - + return intPhone + end end - end - end + + end + end + end end