Sha256: 2d76d777218401ec9e69cdb32e5eda0ad55cf6d099f7066196e736d2ca4c68ea

Contents?: true

Size: 602 Bytes

Versions: 1

Compression:

Stored size: 602 Bytes

Contents

# frozen_string_literal: true

module Zuora
  module Calls
    class Generate < Hashie::Dash
      property :objects, required: true

      OBJECT_TYPE = :Invoice

      # Generates a function that takes a builder
      # and updates object(s) of type.
      # @return [Callable] - function of builder
      def xml_builder
        raise 'objects must respond to :each' unless objects.respond_to?(:each)

        lambda do |builder|
          builder[:api].generate do
            Zuora::Utils::Envelope.build_objects builder, OBJECT_TYPE, objects
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
zuora-ruby-0.7.0 lib/zuora/calls/generate.rb