module ADIWG::Mdtranslator::Readers::MdJson::OnlineResource

Public Class Methods

unpack(hOnlineRes, responseObj, inContext = nil) click to toggle source
# File lib/adiwg/mdtranslator/readers/mdJson/modules/module_onlineResource.rb, line 24
def self.unpack(hOnlineRes, responseObj, inContext = nil)

   @MessagePath = ADIWG::Mdtranslator::Readers::MdJson::MdJson

   # return nil object if input is empty
   if hOnlineRes.empty?
      @MessagePath.issueWarning(600, responseObj, inContext)
      return nil
   end

   # instance classes needed in script
   intMetadataClass = InternalMetadata.new
   intOLRes = intMetadataClass.newOnlineResource

   # resource - web link (required)
   if hOnlineRes.has_key?('uri')
      intOLRes[:olResURI] = hOnlineRes['uri']
   end
   if intOLRes[:olResURI].nil? || intOLRes[:olResURI] == ''
      @MessagePath.issueError(601, responseObj, inContext)
   end

   # resource - name
   if hOnlineRes.has_key?('name')
      unless hOnlineRes['name'] == ''
         intOLRes[:olResName] = hOnlineRes['name']
      end
   end

   # resource - description
   if hOnlineRes.has_key?('description')
      unless hOnlineRes['description'] == ''
         intOLRes[:olResDesc] = hOnlineRes['description']
      end
   end

   # resource - unction
   if hOnlineRes.has_key?('function')
      unless hOnlineRes['function'] == ''
         intOLRes[:olResFunction] = hOnlineRes['function']
      end
   end

   # resource - application profile
   if hOnlineRes.has_key?('applicationProfile')
      unless hOnlineRes['applicationProfile'] == ''
         intOLRes[:olResApplicationProfile] = hOnlineRes['applicationProfile']
      end
   end

   # resource - protocol
   if hOnlineRes.has_key?('protocol')
      unless hOnlineRes['protocol'] == ''
         intOLRes[:olResProtocol] = hOnlineRes['protocol']
      end
   end

   # resource - protocol request
   if hOnlineRes.has_key?('protocolRequest')
      unless hOnlineRes['protocolRequest'] == ''
         intOLRes[:olResProtocolRequest] = hOnlineRes['protocolRequest']
      end
   end

   return intOLRes
end