Sha256: 5bdb8d6f259ddf48e29ba842d16374119bf0e240736d32d0c1a1148a7d16fb30

Contents?: true

Size: 1.39 KB

Versions: 14

Compression:

Stored size: 1.39 KB

Contents

module BillForward
  # This entity exposes the following child entities via method_missing:
  # 
  # Product             .product
  # TaxationLink[]      .taxation
  # PricingComponent[]  .pricingComponents
  class ProductRatePlan < MutableEntity
    @resource_path = BillForward::ResourcePath.new("product-rate-plans", "productRatePlan")

    class << self
      def get_by_product_id(id, query_params = {}, custom_client = nil)
        raise ArgumentError.new("id cannot be nil") if id.nil?

        endpoint = sprintf('product/%s',
          ERB::Util.url_encode(id)
          )

        self.request_many('get', endpoint, query_params, custom_client)
      end

      def get_by_product_and_plan_id(product_id, plan_id, query_params = {}, custom_client = nil)
        raise ArgumentError.new("id cannot be nil") if product_id.nil?
        raise ArgumentError.new("id cannot be nil") if plan_id.nil?

        endpoint = sprintf('product/%s/rate-plan/%s',
          ERB::Util.url_encode(product_id),
          ERB::Util.url_encode(plan_id)
          )

        self.request_first('get', endpoint, query_params, custom_client)
      end
    end

  protected
    def unserialize_all(hash)
      super
      unserialize_entity('product', Product, hash)

      unserialize_array_of_entities('taxation', TaxationLink, hash)
      unserialize_array_of_entities('pricingComponents', PricingComponent, hash)
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
bill_forward-2.2016.241 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-2.2016.227 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-2.2016.222 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-2.2016.209 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2016.117 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2016.101 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2016.26 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2015.321.1 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2015.321 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2015.299 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2015.217.1 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2015.217 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2015.186 lib/bill_forward/entities/product_rate_plan.rb
bill_forward-1.2015.183 lib/bill_forward/entities/product_rate_plan.rb