Sha256: e1522f82face9154b490967c970dfd7aca5cb98a0a0f2c7f723505c47e7c94c6

Contents?: true

Size: 963 Bytes

Versions: 4

Compression:

Stored size: 963 Bytes

Contents

module Iyzipay
  module Model
    module V2
      class Plan < IyzipayResourceV2
        RESOURCE = '/v2/subscription'

        def create(request, options)
          path = path_for_action('products', request[:productReferenceCode], 'pricing-plans')
          data = request.to_json
          header = get_http_header(options, path, data)
          HttpClient.post_even_on_error(base_url(options, path), header, data)
        end

        def update(request, options)
          path = path_for_action('pricing-plans', request[:pricingPlanReferenceCode])
          data = request.to_json
          header = get_http_header(options, path, data)
          HttpClient.post_even_on_error(base_url(options, path), header, data)
        end

        private

        def base_url(options, path)
          "#{options.base_url}#{path}"
        end

        def path_for_action(*args)
          "#{RESOURCE}#{'/' + args.join('/')}"
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
iyzipay-subscription-payments-1.0.2 lib/iyzipay/model/v2/plan.rb
iyzipay-subscription-payments-1.0.1 lib/iyzipay/model/v2/plan.rb
iyzipay-subscriptions-1.0.1 lib/iyzipay/model/v2/plan.rb
iyzipay-subscriptions-1.0.0 lib/iyzipay/model/v2/plan.rb