Sha256: c9e9183feab4b83ae9354d7bc4ca74b07a3981cef555c5017d6018fb58bbbba0

Contents?: true

Size: 1.16 KB

Versions: 9

Compression:

Stored size: 1.16 KB

Contents

module CorreiosSigep
  module DSL
    module Collect
      def self.included(_base)
        %w(aditional_service ag ar card checklist declared_value description
             number objects product_params type sender_params client_id).each do |property|
          define_method(property) do |param|
            @instance.send("#{property}=", param)
          end
        end
      end

      def add_object(object = nil, &block)
        @instance.objects << if block_given?
                               Models::Object.build(&block)
                             else
                               object
                             end

      end

      def with_product(product = nil, &block)
        @instance.product = if block_given?
                              Models::Product.build(&block)
                            else
                              product
                            end
      end

      def with_sender(sender = nil, &block)
        @instance.sender = if block_given?
                             Models::Sender.build(&block)
                           else
                             sender
                           end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
correios_sigep-2.2.0 lib/correios_sigep/dsl/collect.rb
correios_sigep-2.1.1 lib/correios_sigep/dsl/collect.rb
correios_sigep-2.1.0 lib/correios_sigep/dsl/collect.rb
correios_sigep-2.0.0 lib/correios_sigep/dsl/collect.rb
correios_sigep-1.0.2 lib/correios_sigep/dsl/collect.rb
correios_sigep-1.0.1 lib/correios_sigep/dsl/collect.rb
correios_sigep-1.0.0 lib/correios_sigep/dsl/collect.rb
correios_sigep-0.5.0 lib/correios_sigep/dsl/collect.rb
correios_sigep-0.4.0 lib/correios_sigep/dsl/collect.rb