lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_transferOption.rb in adiwg-mdtranslator-1.4.0 vs lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_transferOption.rb in adiwg-mdtranslator-2.0.0rc2

- old
+ new

@@ -1,33 +1,39 @@ +# mdJson 2.0 writer - transfer option + +# History: +# Stan Smith 2017-03-20 refactored for mdJson/mdTranslator 2.0 +# Josh Bradley original script + require 'jbuilder' -require_relative 'mdJson_base' require_relative 'mdJson_onlineResource' +require_relative 'mdJson_medium' +require_relative 'mdJson_duration' require_relative 'mdJson_format' module ADIWG - module Mdtranslator - module Writers - module MdJson - module TransferOption - extend MdJson::Base + module Mdtranslator + module Writers + module MdJson - def self.build(intObj) - Jbuilder.new do |json| - json.distributorFormat json_map(intObj[:dist], Format) - json.transferSize intObj[:transferSize] - json.transferSizeUnits intObj[:transferSizeUnits] - json.online json_map(intObj[:online], OnlineResource) - json.offline do - off = intObj[:offline] - json.name off[:mediumType] - json.mediumCapacity off[:mediumCapacity] - json.mediumCapacityUnits off[:mediumCapacityUnits] - json.mediumFormat off[:mediumFormat] - json.mediumNote off[:mediumNote] - end - end - end - end + module TransferOption + + @Namespace = ADIWG::Mdtranslator::Writers::MdJson + + def self.build(hOption) + + Jbuilder.new do |json| + json.unitsOfDistribution hOption[:unitsOfDistribution] + json.transferSize hOption[:transferSize] + json.onlineOption @Namespace.json_map(hOption[:onlineOptions], OnlineResource) + json.offlineOption @Namespace.json_map(hOption[:offlineOptions], Medium) + json.transferFrequency Duration.build(hOption[:transferFrequency]) unless hOption[:transferFrequency].empty? + json.distributionFormat @Namespace.json_map(hOption[:distributionFormats], Format) + end + + end # build + end # TransferOption + + end end - end - end + end end