class Retentiongrid::LineItem

Constants

ATTRIBUTES_NAMES

The set of attributes defined by the API documentation

BASE_PATH

Public Class Methods

find(line_item_id) click to toggle source

Find a product with given id @param [Fixnum] product_id the prodct id to be found @return [LineItem] if found any

# File lib/retentiongrid/line_item.rb, line 31
def self.find(line_item_id)
  begin
    result = Api.get("#{BASE_PATH}/#{line_item_id}")
    new(result.parsed_response["rg_item"])
  rescue NotFound
    nil
  end
end
new(attribs={}) click to toggle source
Calls superclass method
# File lib/retentiongrid/line_item.rb, line 15
def initialize(attribs={})
  super
end

Public Instance Methods

destroy() click to toggle source

Delete this line item at retention grid @return [Boolean] successfully deleted?

# File lib/retentiongrid/line_item.rb, line 50
def destroy
  Api.delete("#{BASE_PATH}/#{line_item_id}")
  true
end
order=(order) click to toggle source

relations

# File lib/retentiongrid/line_item.rb, line 21
def order=(order)
  @order_id = order.order_id
  @order = order
end
save!() click to toggle source

Create or update a line item with given id @return [LineItem] if successfully created or updated @raise [Httparty::Error] for all sorts of HTTP statuses.

# File lib/retentiongrid/line_item.rb, line 43
def save!
  result = Api.post("#{BASE_PATH}/#{line_item_id}", body: attributes.to_json)
  new(result.parsed_response["rg_item"])
end